1. Web应用程序体系结构
Web应用程序是一种使用浏览器在互联网或企业内部网上进行访问操做的应用软件形态。Web应用体系有浏览器做为客户端完成数据显示和展现内容的渲染;由功能强大的服务器完成主要业务的计算和处理,二者之间经过因特网或内联网上HTTP/HTTPS应用层协议的请求与应答进行通讯。服务器端由Web服务器软件、Web应用程序与后端数据库构成,并经过经典三层架构:表示层、业务逻辑层、数据层来进行组织与构建。php
2. Web应用安全威胁java
3. SQL注入mysql
PHP提供了自动对抗SQL注入的机制,被称为magic quote,咱们须要关闭它:sudo vim /etc/php5/apache2/php.iniweb
系统会要求你登录。这个登录认证由服务器上的login.php实现,须要用户输入用户名和密码来经过认证。
在用户名输入ted'#,密码空着就行,ted是一个已经存在的用户名,用单引号结束这个字符串,用#转义掉后面的语句。sql
当用户想要在phpBB2中修改他们的资料时,能够点击Profile,而后填写表单修改。用户发送修改请求后,会执行include/usercp_register.php中的一条UPDATE SQL语句。在这条语句中一样有一个SQL注入漏洞,能够用它来达到如下目标:在不知道其余人密码的状况下修改其资料。shell
XSS攻击步骤:
(1)攻击者构造出一个包括恶意脚本的bank.com登陆请求连接,并经过Email/HTTP等方式将攻击连接发送给其它bank.com的网站用户;
(2)受害用户点击攻击连接后,将会把恶意连接中包含的恶意脚本当作用户名参数提交给bank.com的登录处理网页;
(3)因为bank.com登陆处理页面存在XSS漏洞,将会在反馈的欢迎页面中包含恶意客户端脚本;
(4)攻击者的恶意客户端脚本在受害用户浏览中执行,一般会驱动浏览器向攻击者发送会话令牌。如会话ID、Cookie信息等;
(5)攻击者得到用户会话令牌以后,就能够劫持用户会话,或者伪造用户登陆bank.com,并可实施进一步攻击。数据库
一、 BBQSql
BBQSql是一个Python编写的盲注工具(blind SQL injection framework),当检测可疑的注入漏洞时会颇有用。同时它也是一个半自动工具,容许客户自定义参数。apache
二、 DBPwAudit(数据库用户名密码枚举工具)编程
三、 HexorBase
HexorBase是图形化的密码破解与链接工具,开源;链接而且控制数据库执行一些语句。vim
四、JSQL Injection
是一款轻量级安全测试工具,能够检测SQL注入漏洞,他跨平台(windows,Linux,Mac os,Solaris),开源且免费。将存在注入漏洞的URL贴进来便可进行响应的漏洞利用。图形化界面比较亲民,可是使用效果有待改善。
五、 MDBTools
包括MDB-Export以及MDB-dump,mdb-parsecsv,mdb-sql,mdb-tables等子工具,具体环境具体使用。
六、Orcal Scanner
用JAVA开发的Orcale评估工具。基于插件的结构,能够列举不少信息。
Sid列举
口令测试
列举Oracle版本
列举帐号角色
列举帐号特权
列举帐号哈希
列举审计信息
列举口令策略
列举数据库连接
七、SIDGusser
针对Oracle的SID进行暴力枚举;SID为Oracle链接字符串:实例名+用户+密码
八、 SqIDICT(用户名密码枚举工具)
经过wine运行。
一、tnscmd10g
二、Sqlsus
sqlsus是一个开放源代码的MySQL注入和接管工具,Sqlsus使用perl编写,基于命令行界面。Sqlsus能够获取数据库结构,注入本身的SQL语句,从服务器下载文件。爬行Web站点可写目录,上传和控制后门,克隆数据库等等。最好用的亮点就是注射获取数据速度很是快,另一个最大的特色就是自动搜索可写目录。
能够查看生成的配置文件
三、 Sqlninja
是一款perl编写的专门针对Microsoft SQL Server的sql注入工具。和市面上其余注入工具不一样,sqlninja没有将精力用在跑数据库上,而是侧重于得到一个shell。
优势:
四、Sqlmap
SQLMAP是一个开源的渗透测试工具,是用Python编写。主要用于自动化的侦测和实施SQL注入攻击以及渗透数据库服务器。配有强大的侦测引擎,适用于高级渗透册书用户,不只能够得到不一样的数据库指纹信息,还能够从数据库中提取数据,有很强大的抓取数据的能力。经常使用命令以下:
一、Burp Suite
用于攻击web应用程序的集成平台,经过默认端口8080运行,它带有一个代理,能够截获并修改从客户端到web应用程序的数据包。
使用Burp Suite截获数据包
二、 OWASP ZAP
攻击代理,查找网页应用程序漏洞的综合类渗透测试工具,包含拦截代理、自动代理、被动代理、暴力破解、端口扫描及蜘蛛搜索等功能。是会话类调试工具。
三、Vega
开源的web应用程序安全测试平台,Vega能帮助验证SQL注入、跨站脚本(XSS)、敏感信息泄露和其余一些安全漏洞。Vega使用java编写,有GUI,能够在多平台下运行。Vega相似于Paros Proxy, Fiddler, Skipfish and ZAproxy。
四、 Paros
paros,是一个对Web应用程序的漏洞进行评估的代理工具,即一个基于Java的Web代理程序,能够评估Web应用程序的漏洞。它支持动态地编辑/查看HTTP/HTTPS,从而改变cookies和表单字段等项目。它包括一个Web通讯记录程序,Web圈套程序(spider),hash计算器,还有一个能够测试常见的Web应用程序攻击(如SQL注入式攻击和跨站脚本攻击)的扫描器。该工具检查漏洞形式包括:SQL注入、跨站点脚本攻击、目录遍历等。
五、proxystrike
Web会话安全分析工具ProxyStrike
在Web应用中,客户端发出一次请求,服务器响应一次。这构成一个完整的会话。经过分析请求和响应的数据,能够发现Web应用存在的漏洞。Kali Linux提供一款专用工具ProxyStrike。该工具提供HTTP代理功能,能够跟踪HTTP会话信息,并进行分析统计。同时,该工具也提供拦截功能,安全人员能够对每一个会话进行分析和修改,以获取服务器的不一样响应。
该工具还经过插件模式,提供安全扫描功能。该工具默认集成SQL注入和XSS两个插件。在捕获会话的同时,该工具会自动进行安全检测,以发现目标服务器存在的漏洞。安全人员也可使用该工具对目标网站进行爬取,以搜集更多的网站资源,并同时进行安全检测。
六、 webscarab
基于GNU协议,包括HTTP代理、网络爬行、网络蜘蛛、会话ID分析等功能。
Burp Suite 是用于攻击web 应用程序的集成平台。它包含了许多工具,并为这些工具设计了许多接口,以促进加快攻击应用程序的过程。全部的工具都共享一个能处理并显示HTTP 消息,持久性,认证,代理,日志,警报的一个强大的可扩展的框架。
工具箱:
Proxy--是一个拦截HTTP/S的代理服务器,做为一个在浏览器和目标应用程序之间的中间人,容许你拦截,查看,修改在两个方向上的原始数据流。
Spider--是一个应用智能感应的网络爬虫,它能完整的枚举应用程序的内容和功能。
Scanner[仅限专业版]--是一个高级的工具,执行后,它能自动地发现web 应用程序的安全漏洞。
Intruder--是一个定制的高度可配置的工具,对web应用程序进行自动化攻击,如:枚举标识符,收集有用的数据,以及使用fuzzing 技术探测常规漏洞。
Repeater--是一个靠手动操做来补发单独的HTTP 请求,并分析应用程序响应的工具。
Sequencer--是一个用来分析那些不可预知的应用程序会话令牌和重要数据项的随机性的工具。
Decoder--是一个进行手动执行或对应用程序数据者智能解码编码的工具。
Comparer--是一个实用的工具,一般是经过一些相关的请求和响应获得两项数据的一个可视化的"差别"。
Intruder是Burp套件的优点,它提供一组特别有用的功能。它能够自动实施各类攻击,包括:资源枚举、数据提取、模糊测试等常见漏洞。在各类有效的扫描工具中,它可以以最细化、最简单的方式访问它生产的请求与响应,容许组合利用我的智能与该工具的控制优势。
(1)首先配置监听端口,配置浏览器。
(2)而后就能够查看全部请求的数据包
(3)点击数据包,能够查看包内容
(4)右键单击包,选择“send to intruder”,便可进行攻击
Fuzz是模糊测试的工具,是模糊测试时漏洞挖掘过程当中的重要一步。
一、Bed.pl
Bed(Bruteforce Exploit Detector)是一个纯文本协议的Fuzz工具,可以检查常见的漏洞,如缓冲区溢出,格式串漏洞,整数溢出等。
使用参数以下:
-s 针对FTP协议,FTP参数
-t 目标IP地址
-p 目标端口
-o timeout 发送一连串畸形数据包,尝试使程序报错,进行判断。
二、Fuzz_ipv6
Fuzz_ipv6是THC出品的针对IPV6协议的模糊测试工具
三、Ohrwurm
ohrwurm 是一个小巧而简单的RTP模糊器,它已经在少许的SIP**上测试过了,它们都没有经受voip分析工具包的模糊测试。
四、Powerfuzzer
Powerfuzzer做为Fuzz请求的工具 ,BurpSuit等Web代理工具也具备相应Fuzz能力。
五、 Wfuzz
针对Web应用的模糊测试工具,能够进行Web应用暴力猜解,也支持对网站目录、登陆信息、应用资源文件等的暴力猜解,还能够进行get及post参数的猜解,sql注入、xss漏洞测试等。该工具全部功能依赖于字典。
六、SFuzz:Simple-Fuzzer
七、XSSer
针对XSS漏洞的挖掘,xsser --gtk 图形化界面,对一个页面或点进行xss测试,判断是否有XSS的漏洞。
图形化界面:xsser --gtk