实操推举:SQL注入
https://www.hetianlab.com/expc.do?ec=ECID172.19.104.182015060916565800001&pk_campaign=toutiao-wemedia#stu
本实验以PHP和mysql为环境,大略展示了SQL的发生事理和利用过程,通过显错注入和盲注的比拟,更直不雅观展现注入的不同利用方法。
声明:本文仅限于技能谈论与分享,严禁用于造孽路子。若读者因此作出任何危害网络安全行为后果自大,与本号及原作者无关。
教诲src 700rank了想着连续冲一波分,早日上核心,于是就有了下面这一次渗透测试的过程了。
开局一个登录框,且存在密码找回功能。
归属为某教诲局
开启burp 抓取上岸包,创造用户密码并未加密 ,考试测验爆破admin账户密码 跑了一下创造报如下缺点,看来爆破这条路走不通了。
于是fofq查询了一下ip,无旁站。连续肝下一个功能点,密码找回
密码找回处
可以看出这里肯定是会存在数据交互的,于是加个单引号测试一下sql,返回500
两个单引号,返回正常,可以断定这里是肯定存在sql注入了,抓取包丢进sqlmap中跑一下。
得出如下payload
sqlmap resumed the following injection point(s) from stored session:---Parameter: #1 ((custom) POST) Type: boolean-based blind Title: AND boolean-based blind - WHERE or HAVING clause Payload: login_name=admin' AND 5698=5698 AND 'yKnB'='yKnB Vector: AND [INFERENCE] Type: time-based blind Title: MySQL >= 5.0.12 AND time-based blind (query SLEEP) Payload: login_name=admin' AND (SELECT 3409 FROM (SELECT(SLEEP(5)))iWYb) AND 'ZAHe'='ZAHe Vector: AND (SELECT [RANDNUM] FROM (SELECT(SLEEP([SLEEPTIME]-(IF([INFERENCE],0,[SLEEPTIME])))))[RANDSTR])
报错与延时注入,对付接下来的渗透意义不大,连续fuzz,考试测验按照正常逻辑找回密码。
抓取返回包可以很明显的看到个中存在success参数其值为false,我们将其改为true,
页面显示如下,flag参数不为空,这是玩ctf呢,再次重放找回密码要求。
创造,flag的值该当是在这设定哦,but并不知晓flag的值,无从下手
行吧转换思路,既然admin账户没有设置手机号,那我去跑一下账户,总有设置手机的账户,flag涌现了,现在目前不知道有何浸染。转手测试有手机号的账户。
随意输入验证码,点击下一步,大概是明白了,这个flag就相称于身份id。
我们连续抓取返回包,改success 参数为true,成功到达重置密码界面
设置了一下新密码,之后利用burp抓包,创造存在两个参数flag 与pwd flag参数之前在跑用户名的时候我们就已经获取到了,以是这里我单独拉出来,复制之前的flag。
Send,返回结果为true表示成功变动
成功上岸
既然成功上岸之后,就开始找上传点了
Java站那便是jsp与jspx了,经由一番fuzz找到一处相册管理
先上传了一张图片,获取到了上传路径。
接着在布局jsp小马考试测验上传,目标存在waf jsp无法上传,我是一点都不虞外啊。
看了看poc中可疑的参数点,这不便是我们须要的文件路径,以及文件名吗,我们可以考试测验在此处变动文件后缀。
证明了猜想。
于是连续布局poc,成功上传,拼接之前得到的url,考试测验访问
创造直接打印了,看来是不解析。
可以很明显的看到这里是目录构造,以是考试测验删除部分目录,重新上传
例如
创造成功跳过目录
连续访问创造还是直接打印了,不逐步fuzz跳目录了,我直接跳到他根目录下面。
剖析一下、这是最开始上传到的目录并不解析,我们可以看到个中有四层目录
删除个中如下两层目录后,还剩下
这两层目录以是用 ../../来跳过这两层目录。
结合之前的路径,拼接访问。
未授权,点到为止,打包提交
带带我代码审计可好,好哥哥们。