SQL注入之二次,加解密,DNS注入

加解密注入

在注入的时候,对变量做了加密操作,比如说?id=1正常显示,但是代码对1进行了加密,这个时候想用?id=1 and 1=1去判断,就得把1 and 1=1整体按照网站的方式加密,再去注入

二次注入

无法通过手动注入,也无法通过扫描工具,只能通过源代码找到

比如在sqli-labs第24关

首先注册账号,这里直接写admin'#,密码写123456

后端注册源码是:

$sql = "insert into users (username, password) values(\"$username\", \"$pass\")";

当我修改密码时,我想把admin'#这个账户的密码从123456改成xxxxxx

后端更新语句源码是:
$sql = "UPDATE users SET PASSWORD='$pass' where username='$username' and password='$curr_pass' ";

把我的输入代入就是

$sql = "UPDATE users SET PASSWORD='xxxxxx' where username='admin'#' and password='$curr_pass' ";

可以发现黄色背景的语句被注释掉了,也就是admin这个账户的密码被更改成了xxxxxx

DNSlog注入

需要注入点高权限,因为会涉及到文件读写。load_file不仅可以读到本机地址,还可以读到外部地址。解决了盲注不能回显数据,效率低的问题

1.意思是可以把一些本来只能盲注的值,传到了外部,达到回显得目的。从而访问DNSlog会有记录,将查询结果外带出来

2.这个语句是,利用concat将select 查询到的结果与一个dnslog的地址进行拼接,形成一个能够访问的域名;接着用load_file来导入(或者说请求)这个地址;于是在DNSLOG中会有记录

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

怀后同学.

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

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

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

打赏作者

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

抵扣说明:

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

余额充值