Paros是一种利用纯java语言开发的安全漏洞扫描工具,它主要是为了满足那些需要对自己的web应用程序进行安全检测的应用者而设计的。通过Paros的本地代理,所有在客户端与服务器端之间的http和https数据信息,包括cookie和表单信息都将被拦截或者是修改。paros proxy,这是一个对Web 应用程序的漏洞进行评估的代理程序,即一个基于Java的web 代理程序,可以评估Web应用程序的漏洞。它支持动态地编辑/查看 HTTP/HTTPS,从而改变cookies 和表单字段等项目。它包括一个Web 通信记录程序,Web 圈套程序(spider),hash 计算器,还有一个可以测试常见的Web 应用程序攻击(如SQL注入式攻击和跨站脚本攻击)的扫描器。该工具检查漏洞形式包括:SQL 注入、跨站点脚本攻击、目录遍历、CRLF -- Carriage-Return Line-Feed 回车换行等。
更多学习资料
https://edu.csdn.net/course/detail/25768
https://edu.csdn.net/course/detail/22948
本手册主要是帮助用户熟悉Paros的基本功能和简单应用。
在安装Paros工具之前需要安装Java文件,也就是JDK,版本必须在1.4以上。Paros是需要JDK支持的,JDK的下载地址如下:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
接下来,下载Paros,地址为:
http://sourceforge.net/projects/paros/
Paros分别有Windows和Linux版本,当前我们应用在Windows下,需要下载Windows版本。
Paros拥有两个连接端口,分别为8080和8443,8080主要是针对Http建立连接,而8443是针对Https的协议建立连接的端口。
安装之后的Paros如图所示:
开启web浏览器,例如IE浏览器,需要配置连接代理,代理名称为localhost,代理端口为:8080,而端口8443是由Paros本身所使用,不是web浏览器所用,所以不用设置此代理端口。
注意:如果后台正在运行防火墙,而且只能接受设置好的互联网访问入口,此时需要修改Paros代理名称和端口号,如下所示修改者两个标识。
更多学习资料
https://edu.csdn.net/course/detail/25768
https://edu.csdn.net/course/detail/22948
配置
首先启动Paros程序,如果在启动时界面上弹出错误提示,说明端口号8080和8443可能被占用,此时我们只需要修改Paros的本地端口号,然后再修改IE浏览器上的代理设置,使之相一致就可以了。如下图所示:
Paros的设置:
IE的代理设置:
首先来看Paros的界面以及功能分布
Spider抓取
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也可以扫描,需要通过手动添加即可。
更多学习资料
https://edu.csdn.net/course/detail/25768
https://edu.csdn.net/course/detail/22948
Scanner扫描
针对“site”栏中的URLS 进行扫描,逐一检查对URLS 分别进行安全性检查,验证是否存在安全漏洞。如果想扫描"site"栏中所有的URLS,单击anaylse-scanall可以启动全部扫描。如果只想扫描“site”栏中某一URL,选中该URL,右击鼠标,选取scan 命令。如下图所示:
关于扫描设置,可以对单个页面进行扫描,也可以对整个站点进行扫描。
Scanner可以针对一下几种情况进行扫描:
1)SQL注入
2)XSS跨站点脚本攻击
3)目录遍历
4)CRLF -- Carriage-Return Line-Feed 回车换行等。
注意:Paros扫描是针对每个网站URL地址进行分层扫描,精确到每个一个独立的URL地址,都需要进行漏洞检测。
更多学习资料
https://edu.csdn.net/course/detail/25768
https://edu.csdn.net/course/detail/22948
1)搜集的信息有如下分类:
过期的文件、私有IP的暴露、URL地址中可以改写的Session ID、过期文件的扩展检查。
2)客户端浏览器有如下分类:
表单自动完成密码的保存、浏览过程中保存的安全性文件的缓存信息。
3)服务器端安全有如下分类:
正在浏览的目录信息、IIS服务的默认文件等各种服务器的默认文件。
4)SQL注入有如下分类
基本的sql语句构造、目录上传、服务器站点注入、跨站脚本注入等。
过滤器的用途:
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”这头信息选项,它将检索“HTTP 200 OK”,而不是“HTTP 304 not modified”。
Paros能手动捕获和修改HTTP(HTTPS)的请求和响应信息,所有的HTTP和HTTPS数据通过Paros都能被捕获,并且可以按照我们需要的方式进行修改。
只要选中复选框“Trap Request”和“Trap Response”,就表示捕获所有的请求和响应信息,然后点击“Continue”就可以继续操作。具体操作如图所示:
首先,启动Paros工具,并启动页面;
其次,勾选Trap页面的Trap Request和TrapResponse选项;
通过一个简单的Http web站点来演示Paros的基本功能。
1、启动Paros工具,进入Option设置Local Proxy,分别设置代理名称为:Localhost,代理端口为:8081;接着设置IE浏览器的网络连接代理,与Paros代理信息一致。
漏洞是在硬件、软件、协议的具体实现或系统安全策略上存在的缺陷,从而可以使攻击者能够在未授权的情况下访问或破坏系统。是受限制的计算机、组件、应用程序或其他联机资源的无意中留下的不受保护的入口点。然而,常见的web安全漏洞有以下几种。
所谓SQL 注入,就是通过把SQL 命令插入到Web 表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL 命令. 比如先前的很多影视网站泄露VIP 会员密码大多就是通过WEB 表单递交查询字符暴出的,这类表单特别容易受到SQL 注入式攻击.
例如管理员的账号密码都是admin,那么再比如后台的数据库查询语句是
user=request("user")
passwd=request("passwd")
sql='select admin from adminbate where user='&'''&user&'''&' and
passwd='&'''&passwd&'''
那么我使用'or 'a'='a 来做用户名密码的话,那么查询就变成了
select admin from adminbate where user= ''or 'a'='a' and passwd= ''or 'a'='a'
如何防止SQL注入,归纳一下,主要有以下几点:
1)永远不要信任用户的输入。对用户的输入进行校验,可以通过正则表达式,或限制长度;对单引号和双"-"进行转换等。
2)永远不要使用动态拼装sql,可以使用参数化的sql或者直接使用存储过程进行数据查询存取。
3)永远不要使用管理员权限的数据库连接,为每个应用使用单独的权限有限的数据库连接。
4)不要把机密信息直接存放,加密或者hash掉密码和敏感的信息。
5)应用的异常信息应该给出尽可能少的提示,最好使用自定义的错误信息对原始错误信息进行包装。
6)sql注入的检测方法一般采取辅助软件或网站平台来检测。
XSS又叫CSS (Cross Site Script) ,跨站点脚本攻击。它指的是恶意攻击者向Web 页面里插入恶意html 代码,当用户浏览该页之时,嵌入其中Web 里面的html 代码会被执行,从而达到恶意攻击用户的特殊目的。
目录遍历攻击是Http所存在的一个安全漏洞,它使得攻击者能够访问受限制的目录,并在Web服务器的根目录以外执行命令。
CRLF是说黑客能够将CRLF 命令注入到系统中。它不是系统或服务器软件的漏洞,而是网站应用开发时,有些开发者没有意识到此类攻击存在的可能而造成的。
更多学习资料
https://edu.csdn.net/course/detail/25768
https://edu.csdn.net/course/detail/22948