黑客攻防技术宝典web实战篇:利用信息泄露习题
猫宁!!!
参考链接:http://www.ituring.com.cn/book/885
随书答案。
1. 当探查 SQL 注入漏洞时,如果请求以下 URL:
https://wahh-app.com/list.aspx?artist=foo’+having+1=1--
将收到如下错误消息:
Server: Msg 170, Level 15, State 1, Line 1
Line 1: Incorrect syntax near ‘having1’.
从中可以得出什么结论?应用程序中包含任何可被利用的条件吗?
这说明应用程序将输入直接插入动态构建的查询中。但是,如错误消息中的表达
式 having1 所示,它似乎删除了输入中出现的任何空白符。
当然可以对这种条件加以利用。可以使用 SQL 注释而不是空白符来分配查询中的
语法项。例如:
https://wahh-app.com/list.aspx?artist=foo'having1=1--
这将返回不同的错误消息:
Server: Msg 8118, Level 16, State 1, Line 1
Column 'users.ID' is invalid in the select list because it is not contained
in an aggregate function and there is no GROUP BY clause.
这证实可以对上述条件加以利用,并完成了枚举所执行的查询的结构的第一个步
骤。
2. 当对各种参数进行模糊测试时,应用程序返回以下错误消息:
Warning: mysql_connect() [function.mysql-connect]: Access denied for
user ‘premiumdde’@’localhost’ (using password: YES) in
/home/doau/public_html/premiumdde/directory on line 15
Warning: mysql_select_db() [function.mysql-select-db]: Access denied
for user ‘nobody’@’localhost’ (using password: NO) in
/home/doau/public_html/premiumdde/directory on line 16
Warning: mysql_select_db() [function.mysql-select-db]: A link to
the server could not be established in
/home/doau/public_html/premiumdde/directory on line 16
Warning: mysql_query() [function.mysql-query]: Access denied for
user ‘nobody’@’localhost’ (using password: NO) in
/home/doau/public_html/premiumdde/directory on line 448
从中可以获得哪些有用的信息?
该错误消息提供了应用程序用于访问数据库的用户名、连接模式、应用程序 Web
内容的绝对文件路径,以及生成错误的脚本的行号。孤立来看,上述每一项信息
似乎都无关紧要。但是,如果结合其他漏洞,渗透测试员就可以利用这些信息设
计出针对应用程序的可怕攻击。
3. 在解析应用程序的过程中,在服务器上发现了一个激活了目录列表的隐藏目
录,其中似乎保存着大量以前用过的脚本。请求其中一个脚本返回以下错误消息:
CGIWrap Error: Execution of this script not permitted
Execution of (contact.pl) is not permitted for the following reason:
Script is not executable. Issue ‘chmod 755 filename’
Local Information and Documentation:
CGIWrap Docs: http://wahh-app.com/cgiwrap-docs/
Contact EMail: helpdesk@wahh-app.com
Server Data:
Server Administrator/Contact: helpdesk@wahh-app.com
Server Name: wahh-app.com
Server Port: 80
Server Protocol: HTTP/1.1
Request Data:
User Agent/Browser: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT
5.1; .NET CLR 2.0.50727; FDM; InfoPath.1; .NET CLR 1.1.4322)
Request Method: GET
Remote Address: 192.168.201.19
Remote Port: 57961
Referring Page: http://wahh-app.com/cgi-bin/cgiwrap/fodd
是什么原因造成了这个错误?可以立即发现哪些常见的 Web 应用程序漏洞?
这是由 cgiwrap 创建的系统生成的错误消息。它表示因为没有适当的文件权限,
所请求的脚本无法在服务器上执行。因此,这个脚本可能没有多少用处。
错误消息中包含了一些可能有用的信息,包括一个电子邮件地址。但是,更重要
的是,其中包含了从客户端请求中复制的各种详细信息。因此,应探查服务器如
何处理相关请求消息头中的专门设计的输入,以了解错误消息是否易于受到 XSS
攻击。请注意,用户可能会受到诱惑,从而通过 Flash 对象提出包含任意请求消
息头的请求。
4. 在探查一个请求参数的功能并试图确定它在应用程序中的作用时,如果请求
以下 URL:
https://wahh-app.com/agents/checkcfg.php?name=admin&id=13&log=1
应用程序将返回以下错误消息:
Warning: mysql_connect() [function.mysql-connect]: Can’t connect to
MySQL server on ‘admin’ (10013) in
/var/local/www/include/dbconfig.php on line 23
这条错误消息是由什么原因造成的?为此应探查什么漏洞?
造成错误消息的原因是因为在 name 参数中提交了 admin 值。错误消息指出应用
程序尝试(并且无法)连接到名为 admin 的主机上的数据库。似乎应用程序允许
渗透测试员控制将用于执行请求的数据库。
应尝试提交所控制的服务器的 IP 地址或主机名,看应用程序是否会连接到服务
器。还应尝试猜测内部网络中的一系列 IP 地址,看是否可以查找到可以从应用
程序服务器访问的其他数据库。
鉴于所提供的主机名已被复制到错误消息中,因此还应调查应用程序是否易于受
到 XSS 攻击。与应用程序中的主要功能相比,应用程序通常并不对错误消息等次
要内容实施严格的输入确认和访问控制。
5. 当对一个请求进行模糊测试,以探查各种漏洞时,测试员轮流在每个请求参
数中提交了一个单引号。其中一个请求的响应包含了 HTTP 500 状态码,表示应
用程序可能存在 SQL 注入漏洞。消息的全部内容如下:
Microsoft VBScript runtime error ‘800a000d’
Type mismatch: ‘ [string: “’”]’
/scripts/confirmOrder.asp, line 715
该应用程序是否易于受到攻击?
这条错误消息由一个脚本生成,该脚本正尝试将基于字符串的输入分配给一个数
字参数。似乎只要在此参数中提交的数据并非数值,就会触发这个错误。没有任
何迹象表明输入导致了数据库错误,或者由数据库处理。几乎可以肯定此参数不
易于受到 SQL 注入攻击。
黑客攻防技术宝典web实战篇:利用信息泄露习题的更多相关文章
- 黑客攻防技术宝典web实战篇:核心防御机制习题
猫宁!!! 参考链接:http://www.ituring.com.cn/book/885 黑客攻防技术宝典web实战篇是一本非常不错的书,它的著作人之一是burpsuite的作者,课后的习题值得关注 ...
- 黑客攻防技术宝典web实战篇:攻击访问控制习题
猫宁!!! 参考链接:http://www.ituring.com.cn/book/885 随书答案. 1. 一个应用程序可能通过使用 HTTP Referer 消息头实施访问控制,但它的正常行为并没 ...
- 黑客攻防技术宝典web实战篇:定制攻击自动化习题
猫宁!!! 参考链接:http://www.ituring.com.cn/book/885 随书答案. 1. 指出使用自动技巧在应用程序中枚举标识符时用到的 3 个标识符“触点”. (a) HTTP ...
- 《黑客攻防技术宝典Web实战篇@第2版》读书笔记1:了解Web应用程序
读书笔记第一部分对应原书的第一章,主要介绍了Web应用程序的发展,功能,安全状况. Web应用程序的发展历程 早期的万维网仅由Web站点构成,只是包含静态文档的信息库,随后人们发明了Web浏览器用来检 ...
- 黑客攻防技术宝典Web实战篇(二)工具篇DVWA Web漏洞学习
DVWA是一个学习Web漏洞的很好的工具. DVWA全程是Damn Vulnerable Web Application,还有一个跟它一样好的工具尽在http://www.360doc.com/con ...
- 黑客攻防技术宝典web实战篇:攻击应用程序架构习题
猫宁!!! 参考链接:http://www.ituring.com.cn/book/885 随书答案. 1. 假设受攻击的应用程序使用两台不同的服务器:一台应用程序服务器和一台数据库服务器.已经发现一 ...
- 黑客攻防技术宝典web实战篇:攻击其他用户习题
猫宁!!! 参考链接:http://www.ituring.com.cn/book/885 随书答案. 1. 在应用程序的行为中,有什么“明显特征”可用于确定大多数 XSS 漏洞? 用户提交的输入在应 ...
- 黑客攻防技术宝典Web实战篇(二)工具篇
扫描工具.中间攻击工具.加密解密工具等. 1 TM Thread Module 2 burpsuite 代理.中间攻击.repeatur.spider.暴力破解(intrude).加密.解密.扫描器 ...
- 黑客攻防技术宝典Web实战篇(一)Web应用程序技术基础
在开展Web应用程序渗透测试之前请先了解下面列出的这些内容,如果不是很懂的话,请读David Gourley & Brian Totty的HTTP权威指南也叫HTTP:The Definiti ...
随机推荐
- Bean property XX' is not writable or has an invalid setter method
刚刚搞spring.property注入时遇到这个问题,百度一下.非常多人说是命名或者get set方法不一致的问题,可是这个我是知道的.写的时候也注意到这些.所以应该不是这个问题.以为是xml头写的 ...
- 几个简单的程序看PHP的垃圾回收机制
每一种计算机语言都有自己的自动垃圾回收机制,让程序员不必过分关心程序内存分配,php也不例外,但是在面向对象编程(OOP)编程中,有些对象需要显式的销毁,防止程序执行内存溢出. 一.PHP 垃圾回收机 ...
- DRP——Dom4j使用
dom4j是一个Java的XMLAPI,类似于jdom.用来读写XML文件的.dom4j是一个很很优秀的JavaXMLAPI.具有性能优异.功能强大和极端易用使用的特点.Dom4j是一个易用的.开源的 ...
- 豆瓣面试题strstr)
/*(豆瓣2013面试题strstr) 有一个在给定字符串中查找子串的函数strstr, 该函数从给定的字符串src中查找substr并返回一个整数, 指明substr第一次出现的位置(从0开始计数) ...
- [ASP.NET MVC 小牛之路]05 - 使用 Ninject实现依赖注入
在[ASP.NET MVC 小牛之路]系列上一篇文章(依赖注入(DI)和Ninject)的末尾提到了在ASP.NET MVC中使用Ninject要做的两件事情,续这篇文章之后,本文将用一个实际的示例来 ...
- windows下在eclipse上远程连接hadoop集群调试mapreduce错误记录
第一次跑mapreduce,记录遇到的几个问题,hadoop集群是CDH版本的,但我windows本地的jar包是直接用hadoop2.6.0的版本,并没有特意找CDH版本的 1.Exception ...
- jetty java文件无法删除 java文件占用 delete无效 运行时锁定静态资源的解决方法
前几天jetty下发现java无法删除文件,文件操作后一直被jvm占用,无奈换了tomcat问题消失. 今天又想起来,尝试网上的解决方法,经本人试验,直接修改配置文件有时不能生效,具体原因不清楚,建议 ...
- safair 的css hack
在css里面使用[;attribute:value;] css参考如下: .header-share li{float: right; margin-left: 20px; [;width: 50px ...
- react native 中的redux
一.使用redux 的条件: 1.某个组件的状态,需要共享: 2.某个状态需要在任何地方都可以拿到: 3.一个组件需要改变全局状态: 4.一个组件需要改变另一个组件的状态. redux 说明白点, ...
- ⭐register_chrdev、register_chrdev_region以及alloc_chrdev_region之间的区别
register_chrdev:Linux2.6.30之前所用,不用定义cdev:但 如果是register_chrdev 注册的话,这个时候,分配的次设备号,是从0~255,这样子的话,就分配的范围 ...