博客
关于我
SXCCTF2021 Web
阅读量:199 次
发布时间:2019-02-28

本文共 789 字,大约阅读时间需要 2 分钟。

前言

最近参加了一个知名平台的学校比赛,参与者包括众多大师傅。虽然题目质量很高,但作为菜鸟我只能完成一道题。这次比赛让我学到了很多东西,其中一道题目涉及到微信小程序逆向,还有一道关于CMS审计的题目因为技术难度较高,暂时搁置了。等我掌握了相关知识后,才会好好研究这道题。

Base

在比赛中,我首先从`robots.txt`获取了`base.txt`,共获取了255个数据项。为了将这些字符转换成对应的语言符号,我编写了一个Python脚本,利用给定的编码规则进行处理。最终得到了一个关键字转换表,这对后续的题目解决起到了重要作用。

接下来的问题是构造`admin`账号并进行SQL注入。直接手动注入会很麻烦,因为每个payload都需要经过编码转换。此外,这道题目中没有回显功能,直接使用SQLMAP进行攻击会更方便。结合最近学习的SQLMAP Tamper脚本,我成功地将问题复杂度降低了。

虽然布尔注入也是一种可行的方法,但我实在懒得写了,所以直接使用SQLMAP完成了整个过程。

Wechat

第一次接触微信小程序逆向时,参考了大神的技术博客。通常的小程序包文件格式是`.wxapkg`,可以通过工具`WxAppUnpacker`轻松解包。虽然过程中遇到了一些依赖包下载问题,但通过谷歌搜索下载了必要的`node`模块,顺利完成了逆向分析。

在逆向过程中,发现了文件上传功能。分析了`notes.js`文件,了解到通过`chooseImage`接口可以实现图片上传。为了绕过过滤,我编写了一个简单的PHP脚本,利用`eval`函数执行远程代码。通过测试,发现服务器支持PHP版本较低的功能,因此成功完成了攻击。

总结

这次比赛让我对Web安全的基础知识有了更深的理解,也锻炼了我的实际操作能力。虽然在某些环节上显得力不从心,但通过不断学习和实践,我相信自己会逐步提升的。

转载地址:http://fjis.baihongyu.com/

你可能感兴趣的文章
nodejs字符与字节之间的转换
查看>>
NodeJs学习笔记001--npm换源
查看>>
NodeJs学习笔记002--npm常用命令详解
查看>>
nodejs学习笔记一——nodejs安装
查看>>
vue3+Element-plus icon图标无法显示的问题(已解决)
查看>>
NodeJS实现跨域的方法( 4种 )
查看>>
nodejs封装http请求
查看>>
nodejs常用组件
查看>>
nodejs开发公众号报错 40164,白名单配置找不到,竟然是这个原因
查看>>
Nodejs异步回调的处理方法总结
查看>>
NodeJS报错 Fatal error: ENOSPC: System limit for number of file watchers reached, watch ‘...path...‘
查看>>
nodejs支持ssi实现include shtml页面
查看>>
Nodejs教程09:实现一个带接口请求的简单服务器
查看>>
nodejs服务端实现post请求
查看>>
nodejs框架,原理,组件,核心,跟npm和vue的关系
查看>>
Nodejs概览: 思维导图、核心技术、应用场景
查看>>
nodejs模块——fs模块
查看>>
Nodejs模块、自定义模块、CommonJs的概念和使用
查看>>
nodejs生成多层目录和生成文件的通用方法
查看>>
nodejs端口被占用原因及解决方案
查看>>