典型的 SQL 注入过程

作者:手气不错 来源:Gracecode.com 时间:2009-11-19 13:02:00 

此漏洞已帮其修复,并知会当事人

SQL 注入漏洞危害巨大,但 SQL 注入也经常的被发现,少不小心过滤不完全就有可能让整个应用陷入困境。

无意间发现某站点存在 SQL 注入漏洞,于是利用这个漏洞提权并获取服务器控制权。这个案例很典型,像是教科书式的典型入侵步骤,下面就以这个案例展示从 SQL 注入到获取目标服务器控制权限的全过程。

发现

访问某站点的搜索页面,发现输入单引号“'”就直接报错,这就说明这个页面存在 注入的可能。为了证实这点,首先闭合请求访问语句,然后对比返回结果的差异。

发现访问

http://foo/rss.aspx?keyword=lucky

以及

http://foo/rss.aspx?keyword=lucky'));--

都可以被执行,但是返回的结果不同。根据下面的错误信息,是注释掉了 ORDER BY 。

分析

根据上面的情况,能非常肯定的断定这个脚本存在很严重的 SQL 注入漏洞。下一步,尝试构建插入 SQL 语句

http://foo/rss.aspx?keyword=lucky'));SELECT%20SERVERPROPERTY%20('edition');--

发现服务器的报错信息为 SQL 语句语法错误,SQL 构建不成功。几次尝试注入均不成功,于是休息下先把重点放到服务器本身

扫描目标主机开放的端口,发现目标主机的 3389 端口是开放的。用远程桌面访问这个端口,可以访问。万事俱备,看来思路还得回到如何利用这个 SQL 注入漏洞。

此时灵光一现,是不是服务器的脚本分割用户输入的空格(%20),然后组成 SQL 语句查询?那么将空格转换成 TAB(%09)试试看,重新发起请求

http://foo/rss.aspx?keyword=lucky'));SELECT%09SERVERPROPERTY%09('edition');--

并没有报错,说明判断是正确的。接下来的事情就好办了,调用 SQL 外部命令将 Guest 用户解禁并加入管理组。

标签:注入,sql,漏洞,服务器
0
投稿

猜你喜欢

  • Exchange 2007移动能力超越2003版

    2010-03-13 18:54:00
  • 确保Win 2003域上的DNS安全

    2010-02-20 19:17:00
  • 如何利用特殊时段的热门关键词为网站带来流量

    2010-03-07 11:19:00
  • 王通:高调赔钱,沉默赚钱!

    2007-09-24 12:13:00
  • 如何向Google申请重新收录

    2008-05-26 11:42:00
  • Linux下使用Evolution收发Email

    2010-03-11 18:58:00
  • CM域名大面积瘫痪 疑顶级注册局倒闭

    2010-03-11 14:43:00
  • 如何授权web服务器提供安全数据库访问

    2009-07-23 16:36:00
  • Linux操作系统下配置DNS服务器的方法介绍

    2010-01-16 18:42:00
  • 如何在本地同时架设ASP和PHP网站运行环境

    2008-05-27 12:42:00
  • 从TCP/IP模型全面认识FTP

    2009-12-10 19:16:00
  • 不是那么一回事 中文搜索引擎的十大误区

    2008-12-14 07:21:00
  • Discuz!7.0道具中心功能详解

    2009-02-27 18:30:00
  • 谷歌Gmail称霸印度 打破雅虎10年垄断地位

    2009-10-12 07:59:00
  • GoDaddy主机更换操作系统方法

    2010-04-13 12:49:00
  • GoDaddy,指定Document Root需要注意的问题

    2010-04-12 12:58:00
  • Drupal、Joomla、WordPress三者官网的比较

    2010-03-23 13:35:00
  • 利用Google快讯监测新增外部链接

    2009-09-26 01:19:00
  • Facebook修改开发政策 影响应用程序70%流量

    2009-10-30 11:22:00
  • 个人站长卖站的几个注意事项

    2008-05-31 17:32:00
  • asp之家 网站运营 m.aspxhome.com