磐云PY-B8 网页注入

1.使用渗透机场景windows7中火狐浏览器访问服务器场景中的get.php,根据页面回显获取Flag并提交;

访问网页,使用?flag=flag即可

2.使用渗透机场景windows7中火狐浏览器访问服务器场景中的post.php,根据页面回显获取Flag并提交;

将网页链接复制到菜刀,新建标签页,粘贴链接
然后点击右边的P切换到post模式,在post输入框中输入flag=flag

3.使用渗透机场景windows7中火狐浏览器访问服务器场景中的numerical.php,根据页面回显获取Flag并提交;

看判断条件,is_numeric是用来检测判断变量是否为数字或数字字符串的函数,然后前面加了个!。
而对于空字符%00,无论%00放在前后都可以判断为非数值,而%20空格字符只能放在数值后。
就要让他判断既是f的值为666,但是又不能是数字类型的。
所以后面跟+也就是%20或者直接%00即可,这样既是666,也不再是数字类型的。
但是实测,666后面跟任意一个字母也可以,例如f=666a

4.使用渗透机场景windows7中火狐浏览器访问服务器场景中的filter.php,根据页面回显获取Flag并提交;

URLdecode二次转码。第一个if到exit之间说的是如果id为flag,就echo然后退出程序。
eregi()指的是在后面的字符串中搜索前面的内容,如果匹配成功就返回TRUE,否则返回FALSE。
第二个if中的urldecode()指的是将括号内的内容进行转码(16进制转文本),如果还是一个flag就输出flag。
这时候利用二次转码,浏览器转码一次,URLdecode()在转码一次得到flag。
使用?id=%2566lag。其中%2566=%25%66=%f,合起来就是%flag。

5.使用渗透机场景windows7中火狐浏览器访问服务器场景中的fan目录,根据页面回显获取Flag并提交;

使用http://172.16.101.12/fan/index.php/index.php即可获取flag
我也不知道为什么要这么干,但是这个确实是可以用的方式

6.使用渗透机场景windows7中火狐浏览器访问服务器场景中的terminator.php,根据页面回显获取Flag并提交;

这个是属于条件竞争,要在sleep的10秒内将flag获取到,并且还是获取md5加密后的1000个文件内容,所以需要写Python脚本去跑去获取。别人给的方法脚本:

import requests
import re
import hashlib

for i in range(0,1001):
    m1 = hashlib.new("md5")
    m1.update(str(i).encode(encoding='utf-8'))
    url='http://172.16.101.12:8181/'+m1.hexdigest()+'.txt'
    r = requests.get(url)
    if(r.status_code!=404):
        print(i)
        print(url)
        print(r.status_code)
        print(r.text)
        break
    else:
        print(i)
        print("404"))

但是呢,我发现这个脚本太长了,有很多没必要以及部分可以缩短的内容。修改过的脚本不算空行只有8行,在比赛的时候特别适合。
不过我马上要比赛了,并且不确定这回比赛是否有这种题,所以优化后的代码先不放出来,等比完赛再说。

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

宋yx

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值