作者:玄魂

前置知识: 无

本系列导航http://www.cnblogs.com/xuanhun/archive/2008/10/25/1319523.html

安全技术区http://space.cnblogs.com/group/group_detail.aspx?gid=100566

前言

web安全实践系列主要是对《黑客大曝光——web应用安全机密与解决方案(第二版)》的内容做的实践研究和部分编程实现。所以如果您能完全理解那本书可以跳过本文章。

正文

自动化工具帮我们得到了关于目标站点的一个完整的地图,如果你下载了整个站点,我么可以利用它的搜索功能进一步得到一些细节信息。当然我们要面对爬行工具的缺陷,很多工作还是离不开手工的。对于细节信息我们大概从以下几个方面去考虑。

6.1 动态页面和静态生成页面

静态页面是不能用来测试工具和提交任何请求的,我们要关注它的注释或者其他信息,也许会有意外的发现。动态页面是和服务器交互的页面,也是我们入侵服务器的通道。把所有页面划分成这两类很简单,只需根据扩展名来区分就可以了。

6.2目录结构和目录名,文件名

网站架构是非常有规律的,我们可以通过目录结构和目录名大概推测出各个目录与文件的功能。

特权目录如 /admin/ /adm/等

备份或日志文件目录 如/back/ /log/ 等

文件包含目录如/inc/ /include/ /js/ /global/ /local/等

国际化目录如/en/ /eng/等。

当然我们可以推测一些可能存在的隐含目录,然后向这些目录发送请求,根据提示信息判断。

6.3 文件扩展名

细分文件扩展名的目的是进一步分析没种扩展名的背后的技术使用,执行细节,通过搜索引擎可以获得最近的关于该文件的漏洞及攻击方法。

常见文件扩展名及我在网上找到的相关示例网址。

cfm文件ColdFusion如:http://www.joespub.com/web_joes/index.cfm

aspx文件 asp.net如: http://www.neworiental.org/Portal0/Default.aspx

nsf文件 Lotus Domino如:http://166.111.4.136:8080/yjsy/main.nsf/SecondClassParaShow?openform&ClassCode=C04

asp文件 asp如:www.w3schools.com/asp/default.asp

do 文件 BroadVision如:http://login.xiaonei.com/Login.do

pl文件 Perl如:www.chinaembassy.org.pl

cgi 文件 CGI如:www.bioinfo.tsinghua.edu.cn/~zhengjsh/cgi-bin/getCode.cgi

py文件 Python如:www.orcaware.com/svn/wiki/Svnmerge.py

php文件 PHP如:www.paper.edu.cn/index.php

shtml文件 SSI如:http://finance.cctv.com/index.shtml

jsp文件 Jsp如:www.tsinghua.edu.cn/qhdwzy/zsxx.jsp

6.4 表单

表单是web应用程序的骨干。我们要尽最大的可能找出所有页面的表单信息,特别是隐藏表单。我们可以利用自动化工具的搜索功能或者手工的方式找寻表单信息。

表单的提交方法。是get还是post。Get更容易在浏览器里操作,但这不以为着post就一定比get安全。

行为。表单调用了什么脚本,使用的语言等等。

最大长度。输入字段是否做了长度限制。如果做了长度限制你是否考虑绕过长度限制的方法。

隐藏。对于隐藏字段我们要特别注意它们的用途。比如这样的代码

<input type="hidden" name=username>

<input type="hidden" name=password>

<input type="hidden" name=shkOvertime value=720>

6.5 查询字符串和参数

查询字符串大多数情况下位于问号标记的后面。例如www.smg.cn/Index_Columns/Index_Channels.aspx?id=25。

分析查询字符串和参数是一件很复杂的事情。

参数的含义是什么。

接收参数的页面或者程序是什么。

对参数的处理及验证是否严格。

是否包含数据库等敏感信息。

用户标识符如www.tudou.com/home/user_programs.php?userID=4030105。

会话标识如:www.avssymposium.org/Session.asp?sessionID=143

数据库查询如:http://flash.tom.com/user_msg.php?username=itscartoon

6.6 常见cookie

很多应用程序是用cookie来传递信息和标识状态的。如:

Referer: http://www.xiaonei.com/

Cookie: __utma=204579609.447084729.1223101387.1224932689.1225885810.51; __utmz=204579609.1224572867.45.4.utmccn=(referral)|utmcsr=blog.xiaonei.com|utmcct=/GetEntry.do|utmcmd=referral;

6.7 google hack

intext:
这个就是把网页中的正文内容中的某个字符做为搜索条件.例如在google里输入:intext:动网.将返回所有在网页正文部分包含"动网"的网页.allintext:使用方法和intext类似.如:

intitle:
和上面那个intext差不多,搜索网页标题中是否有我们所要找的字符.例如搜索:intitle:安全天使.将返回所有网页标题中包含"安全天使"的网页.同理allintitle:也同intitle类似.

cache:
搜索google里关于某些内容的缓存,有时候也许能找到一些好东西哦.

define:
搜索某个词语的定义,搜索:define:hacker,将返回关于hacker的定义.

filetype:
这个我要重点推荐一下,无论是撒网式攻击还是我们后面要说的对特定目标进行信息收集都需要用到这个.搜索指定类型的文件.例如输入:filetype:doc.将返回所有以doc结尾的文件URL.当然如果你找.bak、.mdb或.inc也是可以的,获得的信息也许会更丰富:)

info:
查找指定站点的一些基本信息.

inurl:
搜索我们指定的字符是否存在于URL中.例如输入:inurl:admin,将返回N个类似于这样的连接:http://www.xxx.com/xxx/admin,用来找管理员登陆的URL不错.allinurl也同inurl类似,可指定多个字符.

link:
例如搜索:inurl:www.4ngel.net可以返回所有和www.4ngel.net做了链接的URL.

site:
这个也很有用,例如:site:www.4ngel.net.将返回所有和4ngel.net这个站有关的URL.

related:如related:www.sina.com。返回与新浪相关的页面。

对了还有一些操作符也是很有用的:

+ 把google可能忽略的字列如查询范围
- 把某个字忽略
~ 同意词
. 单一的通配符
* 通配符,可代表多个字母
""精确查询

Web安全实践(6)web应用剖析之信息提炼相关推荐

  1. Web安全实践(2)基于http的web架构剖析

    作者:玄魂 web安全实践系列导航http://www.cnblogs.com/xuanhun/archive/2008/10/25/1319523.html 安全技术区http://space.cn ...

  2. Web安全实践(9)攻击apache

    作者:玄魂   系列导航http://www.cnblogs.com/xuanhun/archive/2008/10/25/1319523.html 安全技术区http://space.cnblogs ...

  3. 《软件测试实践--测试Web MSN》 之我的学习笔记(一)

    开篇话: 对于软件测试,对于一名大三的学生来说,我了解的确实不多,也很不全面,可以说是从学长学姐得到一些有些以偏概全的观点: 比如: 1.测试比开发要求的技术门槛要低,简单地来说,测试人员只需要轻点鼠 ...

  4. Spring Boot WebFlux-02——WebFlux Web CRUD 实践

    Spring Boot WebFlux-02--WebFlux Web CRUD 实践 第02课:WebFlux Web CRUD 实践 上一篇基于功能性端点去创建一个简单服务,实现了 Hello.这 ...

  5. 实践作业4:Web测试实践(小组作业)记录1

    今天,我们组召开了小组会议,会议主题是确定此次web测试实践小组作业要测试和对比分析的软件,然后进行任务分工.我们小组要测试的软件是博客园,选择对比分析的软件是CSDN. 会议时间:2017.12.2 ...

  6. WEB入门实践-张晨光-专题视频课程

    WEB入门实践-256人已学习 课程介绍         WEB开发入门编程,从各种开发工具的讲解到html标签,css元素讲解,js课程系列. 课程收益     培养web开发技术人才 讲师介绍   ...

  7. 《Web性能实践日志》一1.5 浏览器的发展

    本节书摘来自异步社区<Web性能实践日志>一书中的第1章,第1.5节,作者[加拿大]Stoyan Stefanov,更多章节内容可以访问云栖社区"异步社区"公众号查看 ...

  8. 《响应式Web设计实践》一1.2 设备来了,设备来了

    本节书摘来异步社区<响应式Web设计实践>一书中的第1章,第1.2节,作者: [美]Tim Kadlec 译者: 侯鸿儒 责编: 赵轩,更多章节内容可以访问云栖社区"异步社区&q ...

  9. 《响应式Web设计实践》一2.1 布局选项

    本节书摘来异步社区<响应式Web设计实践>一书中的第2章,第2.1节,作者: [美]Tim Kadlec 译者: 侯鸿儒 责编: 赵轩,更多章节内容可以访问云栖社区"异步社区&q ...

最新文章

  1. NuGet学习笔记(1) 初识NuGet及快速安装使用
  2. jquery easyui datagrid实现单行的上移下移,以及保存移动的结果
  3. info java module_JAVA新特性视频教学:第三天_21_认识module-info.java文件.mp4
  4. 以软件推动工业进步 -嵌入式学习网站
  5. java小白会有那些工作_Java小白找工作与学习的第四天
  6. 21. PE结构-PE各个结构的基本概念
  7. mx250显卡天梯图_笔记本电脑显卡分析(天梯图)
  8. using filesort和using temporary
  9. LeetCode.83. Remove Duplicates from Sorted List(删除单链表中的重复元素)
  10. SVN客户端安装使用教程
  11. Linux ubuntu中编写shell脚本文件
  12. 深入理解Java-GC机制
  13. 用 Python 画哆啦 A 梦
  14. PyCharm搜索技巧快捷键
  15. Photoshop 入门教程「1」如何在Mac版 Photoshop 中打开图像?
  16. 程序员的10大老大难问题
  17. 微信公众账号的订阅号与服务号有什么区别?
  18. 拜占庭将军问题与PBFT算法和POW共识
  19. git——04 远程仓库/标签/别名
  20. 【产品】产品设计:电子产品如何由ID走向成品,产品经理需要掌握哪些知识

热门文章

  1. 打包Spring Boot应用
  2. iphone7p配置参数详情_华为mate40标准版参数配置-参数详情
  3. 包教会一对一跟着CNS学单细胞测序(含空间转录组、chipseq、RNAseq、Atacseq 和外显子等)3月13日开始...
  4. 少一些计较多_做人,少一点套路,多一些真诚,少一点计较,多一些宽容
  5. 软测经典面试题(一)
  6. Web前端开发基础三剑客学习知识分享
  7. G - 数据结构实验之链表五:单链表的拆分
  8. vscode 插件导出_VScode插件推荐
  9. 易语言不用uac权限写到c盘,易语言制作UAC管理员模式添加器
  10. PHP 父类静态方法中调用子类静态方法