主站

分类

漏洞 工具 极客 web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据库安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

FreeBuf+小程序

官方公众号企业安全新浪微博

国内领先的互联网安全新媒体,同时也是爱好者们交流与分享安全技术的社区

NagaScan:针对Web应用的分布式被动扫描器
2017-07-30 09:00:19

*本文中涉及到的相关漏洞已报送厂商并得到修复,本文仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自行承担。

今天给大家介绍的是一款名叫NagaScan的针对Web应用程序的分布式被动漏洞扫描器,NagaScan目前支持包括XSS、SQL注入、以及文件包含等漏洞。

NagaScan:针对Web应用的分布式被动扫描器

NagaScan的运行机制

首先NagaScan会设置一个代理,例如Web浏览器代理或移动Wi-Fi代理。随后目标Web应用的网络流量副本会被传到NagaScan的中央数据库中进行解析处理,接下分布式扫描器便会自动分配NagaScan来扫描常见的Web应用安全漏洞。

工具及组件要求

Web控制台

sudo pip install mysql-connector
sudo pip install jinja2
sudo pip install bleach

扫描器

sudo apt-get install python-pip python-devlibmysqlclient-dev
sudo pip install requests
sudo pip install MySQL-python
sudo pip install -U selenium
sudo apt-get install libfontconfig

代理

sudo apt-get install python-pip python-devlibmysqlclient-dev
sudo pip install MySQL-python

安装与配置

数据库

1.      安装MySQL,创建一个数据库用户名,并设置密码,例如root/toor;

2.      为NagaScan创建一个数据库,使用命令:source schema.sql

Web控制台

1.      使用我们自己的数据库配置信息修改Web控制台的配置文件www/config_override.py:

configs = {
    'db': {
        'host':'127.0.0.1',
        'user':'root',
        'password':'toor'
    }
}

2.      运行下列命令开启Web控制台:

sudo python www/wsgiapp.py

扫描器

1.      用我们自己的数据库配置信息修改扫描器的配置文件scanner/lib/db_operation.py:

def db_conn():
    try:
        user ="root"
        pwd ="toor"
        hostname ="127.0.0.1"

2.      安装PhantomJS

Linux 64位:

wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-x86_64.tar.bz2
tar -jxvfphantomjs-2.1.1-linux-x86_64.tar.bz2

Linux 32位:

wget https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.1.1-linux-i686.tar.bz2
tar -jxvf phantomjs-2.1.1-linux-i686.tar.bz2

3.      按照下列代码修改scanner/lib/hack_requests.py的第28行代码:

self.executable_path='[Your Own Phantomjs Binary Path]' #e.g. /home/ubuntu/phantomjs-2.1.1-linux-x86_64/bin/phantomjs

4.      运行下列命令启动扫描器:

扫描文件包含漏洞

python scanner/scan_fi.py

扫描XSS漏洞

python scanner/scan_xss.py

扫描SQL注入漏洞

python scanner/scan_sqli.py

代理&解析器

1.      安装MitmProxy

Ubuntu 16.04(首选):

sudo apt-get install python3-dev python3-pip libffi-devlibssl-dev
sudo pip3 install mitmproxy

Ubuntu 14.04:

sudo apt-get install python-pip python-dev libffi-devlibssl-dev libxml2-dev libxslt1-dev libjpeg8-dev zlib1g-dev
sudo pip install "mitmproxy==0.18.2"

MacOS:

brew install python3
brew install mitmproxy

2.      运行下列命令开启代理

mitmdump -p 443 -s "proxy/proxy_mitmproxy.py/tmp/logs.txt"

3.      用我们自己的数据库配置信息修改解析器的配置文件parser/lib/db_operation.py:

def db_conn():
    try:
        user ="root"
        pwd ="toor"
        hostname ="127.0.0.1"

4.      运行下列命令开启解析器:

python parser/parser_mitmproxy.py /tmp/logs.txt

工具的使用

使用默认的用户名和密码(nagascan@example.com/Naga5c@n)访问Web控制台,完成一些基本的配置并增加SQLMAP服务器:

NagaScan:针对Web应用的分布式被动扫描器NagaScan:针对Web应用的分布式被动扫描器NagaScan:针对Web应用的分布式被动扫描器针对Web应用的分布式被动扫描器

操作步骤

1.      为浏览器或移动设备安装MitmProxy证书【证书安装教程

2.      添加一个代理(Web浏览器或移动Wi-Fi)

3.      使用浏览器访问目标网站,或在移动设备上使用待测试的App

4.      祝大家好运!

* 参考来源:NagaScan, FB小编Alpha_h4ck编译,转载请注明来自FreeBuf.COM

本文作者:, 转载请注明来自FreeBuf.COM

# 漏洞扫描器 # NagaScan
被以下专栏收录,发现更多精彩内容
+ 收入我的专栏
评论 按时间排序

登录/注册后在FreeBuf发布内容哦

相关推荐
  • 0 文章数
  • 0 评论数
  • 0 关注者
登录 / 注册后在FreeBuf发布内容哦