Paros工具使用手册Word下载.docx
《Paros工具使用手册Word下载.docx》由会员分享,可在线阅读,更多相关《Paros工具使用手册Word下载.docx(17页珍藏版)》请在冰豆网上搜索。
![Paros工具使用手册Word下载.docx](https://file1.bdocx.com/fileroot1/2022-10/13/3fe3cdfc-caaf-411c-b463-90d42e779b09/3fe3cdfc-caaf-411c-b463-90d42e779b091.gif)
5.3目录遍历19
5.4CRLF回车换行19
6注意事项20
1Paros介绍
Paros是一种利用纯java语言开发的安全漏洞扫描工具,它主要是为了满足那些需要对自己的web应用程序进行安全检测的应用者而设计的。
通过Paros的本地代理,所有在客户端与服务器端之间的http和https数据信息,包括cookie和表单信息都将被拦截或者是修改。
parosproxy,这是一个对Web应用程序的漏洞进行评估的代理程序,即一个基于Java的web代理程序,可以评估Web应用程序的漏洞。
它支持动态地编辑/查看HTTP/HTTPS,从而改变cookies和表单字段等项目。
它包括一个Web通信记录程序,Web圈套程序(spider),hash计算器,还有一个可以测试常见的Web应用程序攻击(如SQL注入式攻击和跨站脚本攻击)的扫描器。
该工具检查漏洞形式包括:
SQL注入、跨站点脚本攻击、目录遍历、CRLF--Carriage-ReturnLine-Feed回车换行等。
本手册主要是帮助用户熟悉Paros的基本功能和简单应用。
2安装与配置
2.1安装
在安装Paros工具之前需要安装Java文件,也就是JDK,版本必须在1.4以上。
Paros是需要JDK支持的,JDK的下载地址如下:
接下来,下载Paros,地址为:
Paros分别有Windows和Linux版本,当前我们应用在Windows下,需要下载Windows版本。
Paros拥有两个连接端口,分别为8080和8443,8080主要是针对Http建立连接,而8443是针对Https的协议建立连接的端口。
安装之后的Paros如图所示:
开启web浏览器,例如IE浏览器,需要配置连接代理,代理名称为localhost,代理端口为:
8080,而端口8443是由Paros本身所使用,不是web浏览器所用,所以不用设置此代理端口。
注意:
如果后台正在运行防火墙,而且只能接受设置好的互联网访问入口,此时需要修改Paros代理名称和端口号,如下所示修改者两个标识。
2.2配置
首先启动Paros程序,如果在启动时界面上弹出错误提示,说明端口号8080和8443可能被占用,此时我们只需要修改Paros的本地端口号,然后再修改IE浏览器上的代理设置,使之相一致就可以了。
如下图所示:
Paros的设置:
IE的代理设置:
3功能介绍
首先来看Paros的界面以及功能分布
3.1Spider抓取
Spider是Paros中一个非常重要的功能,它是用来抓取网站信息,收集URL地址信息,通过Spider这种方式来来逐层分解抓取站点的URL。
如图所示:
当前,它的功能包括如下:
1)通过提供的URL地址来抓取HTTP或者HTTPS信息
2)支持抓取Cookie信息
3)支持设置代理链
4)自动添加URL地址,并以树结构分层进行扫描
Spider存在的一些缺陷,如下:
1)对于具有非法验证的SSL协议的站点不能被扫描
2)不支持多线程
3)对于在HTML中存在异常URL地址的页面不能被识别
4)Javascript生成的URL地址不能被识别
对于不能被识别的URL地址,Paros也可以扫描,需要通过手动添加即可。
3.2Scanner扫描
针对“site”栏中的URLS进行扫描,逐一检查对URLS分别进行安全性检查,验证是否存在安全漏洞。
如果想扫描"
site"
栏中所有的URLS,单击anaylse-scanall可以启动全部扫描。
如果只想扫描“site”栏中某一URL,选中该URL,右击鼠标,选取scan命令。
关于扫描设置,可以对单个页面进行扫描,也可以对整个站点进行扫描。
Scanner可以针对一下几种情况进行扫描:
1)SQL注入
2)XSS跨站点脚本攻击
3)目录遍历
4)CRLF--Carriage-ReturnLine-Feed回车换行等。
Paros扫描是针对每个网站URL地址进行分层扫描,精确到每个一个独立的URL地址,都需要进行漏洞检测。
关于扫描策略的设置如下:
1)搜集的信息有如下分类:
过期的文件、私有IP的暴露、URL地址中可以改写的SessionID、过期文件的扩展检查。
2)客户端浏览器有如下分类:
表单自动完成密码的保存、浏览过程中保存的安全性文件的缓存信息。
3)服务器端安全有如下分类:
正在浏览的目录信息、IIS服务的默认文件等各种服务器的默认文件。
4)SQL注入有如下分类
基本的sql语句构造、目录上传、服务器站点注入、跨站脚本注入等。
3.3Filter过滤器
过滤器的用途:
1)检测并警告你在HTTP消息中一些预定义发生的模式,因此你不需要去捕获每个HTTP消息,而只需要寻求你所需要的模式。
2)记录一些你所感兴趣的信息,例如Cookie等。
在数据传输中,过滤器会对每一个HTTP消息进行拦截检测,如果使用所有过滤将会大大降低Paros的扫描速度,所以通常我们只需要对我们需要的信息进行拦截过滤。
当前,有如下过滤器:
1)LogCookie
记录所有浏览器端到服务器端接收的Cookies信息,并显示在面板中。
2)LogGetQuery
记录所有HTTP(HTTPS)来自浏览器端获取的参数,并且日志的名称将以“get.xls”的形式保存在Paros目录下面。
3)LogPostQuery
记录所有HTTP(HTTPS)来自浏览器端传送的参数,并且日志的名称将以“post.xls”的形式保存在Paros目录下面。
4)CookieDetectFilter
提醒你在返回HTTP消息中尝试去设置并修改Cookie信息。
5)IfModifiedSinceFilter
在HTTP请求中删除“If−Modified−Since”和“If−None−Match”这头信息选项,它将检索“HTTP200OK”,而不是“HTTP304notmodified”。
3.4TrapingHttpRequestsandResponses
Paros能手动捕获和修改HTTP(HTTPS)的请求和响应信息,所有的HTTP和HTTPS数据通过Paros都能被捕获,并且可以按照我们需要的方式进行修改。
只要选中复选框“TrapRequest”和“TrapResponse”,就表示捕获所有的请求和响应信息,然后点击“Continue”就可以继续操作。
具体操作如图所示:
首先,启动Paros工具,并启动页面;
其次,勾选Trap页面的TrapRequest和TrapResponse选项;
第三,在http页面输入请求数据,如下图所示:
此时,Trap劫获的信息如下图:
如上图红色区域的信息就是Trap劫获的信息,并且是可以修改的,点击Continue继续执行的,如下图:
如上图红色区域显示的是系统返回的信息,也就是Http响应页面的信息。
此时该请求过程结束。
如果在阻截过程中需要停止劫获,需要点击Drop按钮。
3.5LastScanReport
扫描完成后,单击Report-LastScanreport,可查看当前的扫描报告。
根据扫描报告,对扫描结果进行验证,比如扫描结果中有一项是URL传递的参数中存在SQL注入漏洞,我们将该URL及参数输入到地址栏中,验证结果。
具体如图所示:
扫描结束给扫描用时,并提示获取测试报告在Report菜单下面,报告如下:
报告中主要给报告生成时间、漏洞的等级以及漏洞的具体描述信息。
4应用
通过一个简单的Httpweb站点来演示Paros的基本功能。
1、启动Paros工具,进入Option设置LocalProxy,分别设置代理名称为:
Localhost,代理端口为:
8081;
接着设置IE浏览器的网络连接代理,与Paros代理信息一致。
2、启动IE,输入地址为:
http:
//localhost:
8080/ssh2,,此时Paros收集了站点的URL信息,如下图所示:
3、接下需要抓取深一层的URL地址信息,需要选择Spider功能,如下图:
点击Spider,如下所示:
点击Start按钮,完成后抓取如下URL地址:
4、选择ScanAll,如下图所示:
5、TestReport,报告如下:
报告中对于每一个级别的漏洞都做详细说明,并提供相关的解决方案等。
5漏洞类型
漏洞是在硬件、软件、协议的具体实现或系统安全策略上存在的缺陷,从而可以使攻击者能够在未授权的情况下访问或破坏系统。
是受限制的计算机、组件、应用程序或其他联机资源的无意中留下的不受保护的入口点。
然而,常见的web安全漏洞有以下几种。
5.1SQL注入
所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令.比如先前的很多影视网站泄露VIP会员密码大多就是通过WEB表单递交查询字符暴出的,这类表单特别容易受到SQL注入式攻击.
例如管理员的账号密码都是admin,那么再比如后台的数据库查询语句是
user=request("
user"
)
passwd=request("
passwd"
sql='
selectadminfromadminbatewhereuser='
&
'
user&
and
passwd='
passwd&
那么我使用'
or'
a'
='
a来做用户名密码的话,那么查询就变成了
selectadminfromadminbatewhereuser='
andpasswd='
如何防止SQL注入,归纳一下,主要有以下几点:
1)永远不要信任用户的输入。
对用户的输入进行校验,可以通过正则表达式,或限制长度;
对单引号和双"
-"
进行转换等。
2)永远不要使用动态拼装sql,可以使用参数化的sql或者直接使用存储过程进行数据查询存取。
3)永远不要使用管理员权限的数据库连接,为每个应用使用单独的权限有限的数据库连接。
4)不要把机密信息直接存放,加密或者hash掉密码和敏感的信息。
5)应用的异常信息应该给出尽可能少的提示,最好使用自定义的错误信息对原始错误信息进行包装。
6)sql注入的检测方法一般采取辅助软件或网站平台来检测。
5.2XSS攻击
XSS又叫CSS(CrossSiteScript),跨站点脚本攻击。
它指的是恶意攻击者向Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意攻击用户的特殊目的。
5.3目录遍历
目录遍历攻击是Ht