黑客攻防技术宝典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 ...
随机推荐
- 【转载】C# sleep 和wait的区别
eep和wait都是使线程暂时停止执行的方法,但它们有很大的不同. 1. sleep是线程类Thread 的方法,它是使当前线程暂时睡眠,可以放在任何位置. 而wait,它是使当前线程暂时放弃对象的使 ...
- 【转载】lvs为何不能完全替代DNS轮询
上一篇文章"一分钟了解负载均衡的一切"引起了不少同学的关注,评论中大家争论的比较多的一个技术点是接入层负载均衡技术,部分同学持这样的观点: 1)nginx前端加入lvs和keepa ...
- c/c++中static和extern使用
c/c++中static和extern使用 在C/C++中static和extern都能够用来修饰函数和变量,可是是有差别的. 内部函数和内部变量:仅仅能在文件内使用的函数和变量. 外部函数和外部变量 ...
- FastDFS的配置、部署与API使用解读(1)Get Started with FastDFS(转)
转载请注明来自:诗商·柳惊鸿CSDN博客,原文链接:FastDFS的配置.部署与API使用解读(1)入门使用教程 1.背景 FastDFS是一款开源的.分布式文件系统(Distributed File ...
- String 字符串基本使用
目录 一.JavaDoc解释 二.基础属性和构造函数 三.基本方法说明 一.JavaDoc解释 String类表示字符串,所有Java程序中的字符串像是"abc"都是此类的实例,字 ...
- openwrt 模拟i2c驱动(一)
一:加载i2c driver kmod-i2c-core................................................ I2C support kmod-i2c-al ...
- easyUI datagrid组件能否有display:none的隐藏效果
这个项目用了JQ easyUI datagrid 组件,我今天做了一个页面,页面有个div层,div里放了一个easyUI datagrid,页面初始化时div隐藏(display:none),通过点 ...
- iOS优秀博文合集
一.优化篇 Xcode7中你一定要知道的炸裂调试神技 iOS使用Instrument-Time Profiler工具分析和优化性能问题 dSYM 文件分析工具 二.功能篇 3分钟实现iOS语言本地化/ ...
- HDU 6058 Kanade's sum 二分,链表
Kanade's sum Problem Description Give you an array A[1..n]of length n. Let f(l,r,k) be the k-th larg ...
- SHOW PROCESSLIST Syntax
https://dev.mysql.com/doc/refman/5.7/en/show-processlist.html SHOW PROCESSLIST shows you which threa ...