博客
关于我
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/

你可能感兴趣的文章
Node Sass does not yet support your current environment: Windows 64-bit with Unsupported runtime(72)
查看>>
Node 裁切图片的方法
查看>>
Node+Express连接mysql实现增删改查
查看>>
node, nvm, npm,pnpm,以前简单的前端环境为什么越来越复杂
查看>>
Node-RED中Button按钮组件和TextInput文字输入组件的使用
查看>>
Node-RED中Switch开关和Dropdown选择组件的使用
查看>>
Node-RED中使用html节点爬取HTML网页资料之爬取Node-RED的最新版本
查看>>
Node-RED中使用JSON数据建立web网站
查看>>
Node-RED中使用json节点解析JSON数据
查看>>
Node-RED中使用node-random节点来实现随机数在折线图中显示
查看>>
Node-RED中使用node-red-browser-utils节点实现选择Windows操作系统中的文件并实现图片预览
查看>>
Node-RED中使用node-red-contrib-image-output节点实现图片预览
查看>>
Node-RED中使用node-red-node-ui-iframe节点实现内嵌iframe访问其他网站的效果
查看>>
Node-RED中使用Notification元件显示警告讯息框(温度过高提示)
查看>>
Node-RED中使用range范围节点实现从一个范围对应至另一个范围
查看>>
Node-RED中实现HTML表单提交和获取提交的内容
查看>>
Node-RED中将CSV数据写入txt文件并从文件中读取解析数据
查看>>
Node-RED中建立TCP服务端和客户端
查看>>
Node-RED中建立Websocket客户端连接
查看>>
Node-RED中建立静态网页和动态网页内容
查看>>