Coder Social home page Coder Social logo

langnetworktopologys's Introduction

本项目仅进行内网主机资产整理,无漏洞利用、攻击性行为,请使用者遵守当地相关法律,勿用于非授权测试,如作他用所承受的法律责任一概与作者无关,下载使用即代表使用者同意上述观点。

版本说明

3.x

资产快速探测后输出报表

4.x

拥有3.x所有功能的基础上,新增一些简单的漏扫功能,出结果慢

4.x需要依赖 vc_redist.x64

资产扫描

调用MASSCAN对内网主机进行如下任务,完成内网主机资产快速获取:

  1. 开放端口扫描
  2. 运行服务检测,指纹识别
  3. 开放端口二次复检
  4. 主机部署网站探测
  5. 自动生成扫描结果报表

依赖环境

MASSCAN-Windows

自带masscan.exe,masscan来自巡风,需要注意的是Windows还需要安装WinPcap4.1.12

MASSCAN-Linux

自行安装masscan,并添加到环境变量

快速使用

准备资产

编辑文本,文本内容为你需要进行扫描的IP,比如:

192.168.8.0/24
10.152.168.0/24
10.16.26.3
10.26.36.0/24
192.168.0.2
192.168.0.6	
192.168.0.15
192.168.0.16
192.168.0.17
192.168.0.12
192.168.0.19

启动扫描

随后直接启动Project下run.bat,按照提示导入上面的文本

输入端口

随后输入需要扫描的端口号,比如:

21,22,23,25,80-9999,27017,27018
or
80,81,88,90,800,8000,888,8888,8887,8889,8080,9090,999
or
20-25,80,88,8080,8888,999,9999,1433,3389,3306,1521,6379,22222
or
21,22,23,25,80,88,888,8000,8888,8080,999,9999,9111,8873,87,9000,7000-7005,1433,3306,3389,1521,27017-27019,6379,6371,11211,8088,111,1001,50000,9110
or
1-65535

如果要使用内置默认的常见高危端口,输入 0 即可。

如果要使用内置默认的高危端口[数量更多],输入 1 即可。

进程数设置

单IP文本:2~6

C段IP文本: 2~4

B段IP文本:1

按照机器配置设置扫描进程数,如果扫描全端口,建议设置使用一个进程,最后的结果会自动保存在当前目录下

发包数设置

如前文所提,原理就是调用使用MASSCAN进行扫描,MASSCAN使用异步连接方式,在CPU配置较差的情况下,每秒的发包量设置过大,则会造成丢包导致误报情况。

在9900K测试下,发包量设置在1000-2000之间比较稳,速度和准确率客观。

经测试,扫一个C段的默认端口,发包量设置2000,200M宽带直接吃满,CPU负载9.2%,平均耗时在40秒之内,存在一定的误报,如果设置在1000还可以,具体情况请按照个人机器配置进行设置。

关于指纹识别

大多数人都会想到使用masscan先进行存活资产快速整理筛选,然后使用nmap对开放端口进一步扫描,使用nmap的指纹库获取端口运行的服务。

做法无可厚非,但是在时间上消耗较大。

选择采用折中的方式,使用MASSCAN快速扫描主机开放端口,使用线程池原生socket连接,获取返回banner,对返回的banner进行指纹正则匹配结果,对一些无法匹配到端口使用默认端口指纹库进行识别匹配。

关于二次复检

在masscan存在一定误报的情况下,对扫描结果端口进行二次复检是很有必要的行为。具体实施方法如下:

  1. 首先进行端口连接,获取返回BANNER,返回结果根据内置指纹库进行对比,获取该主机端口运行的服务。
  2. 若剩下的端口进行端口连接失败,或者连接成功但是对返回BANNER无法正常识别运行服务,则进行端口开放检测,对正确开放端口使用本地指纹库进行匹配服务。
  3. 在第一步中正常获取结果的端口,本身就是端口开放。第二步的情况是对剩下识别失败的端口进行二次复检,如果失败并且端口无法连接,则判定为masscan误报,直接删除该端口。

二次复检会大幅度提高准确率,但是相应的速度也会慢下来

生成结果

扫完毕后,会生成相关的HTML和Xlsx文件,自动保存在目录下。

日志文件

当前目录会自动保存扫描日志,扫描异常原因,扫描结果

网页文件

  1. 内网资产可视化报表
  2. 端口/服务数据整理,点击标签即可查看相关开放主机
  3. 每台主机资产详情

Xlsx文件

对大量的资产扫描结果,使用HTML展示结果如果主机内存较小,则会出现浏览器卡顿情况无法直观查看数据,所以另外生成XLSX文档,方便对数据统一查看管理。有点脑子的人都看得懂。

  1. 端口/服务数据整理
  2. 部署网站主机整理
  3. 每台主机资产详情整理

langnetworktopologys's People

Contributors

langzifun avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

langnetworktopologys's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.