What is scan4all: integrated vscan, nuclei, ksubdomain, subfinder, etc., fully automated and intelligent
Code-level optimization, parameter optimization, and individual modules, such as vscan filefuzz, have been rewritten for these integrated projects.
In principle, do not repeat the wheel, unless there are bugs, problems
Cross-platform: based on golang implementation, lightweight, highly customizable, open source, supports Linux, windows, mac os, etc.
Support [20] password blasting, support custom dictionary, open by "priorityNmap": true
Weblogic, enable nuclei through enableNuclei=true at the same time, support T3, IIOP and other detection
Tomcat
Jboss
Winrm(wsman)
By default, http password intelligent blasting is enabled, and it will be automatically activated when an HTTP password is required, without manual intervention
Detect whether there is nmap in the system, and enable nmap for fast scanning through priorityNmap=true, which is enabled by default, and the optimized nmap parameters are faster than masscan
Disadvantages of using nmap: Is the network bad, because the traffic network packet is too large, which may lead to incomplete results
Using nmap additionally requires setting the root password to an environment variable
export PPSSWWDD=yourRootPswd
More references: config/doNmapScan.sh
By default, naabu is used to complete port scanning -stats=true to view the scanning progress
Can I not scan ports?
noScan=true ./scan4all -l list.txt -v
Fast 15000+ POC detection capabilities, PoCs include:
nuclei POC
Nuclei Templates Top 10 statistics
TAG
COUNT
AUTHOR
COUNT
DIRECTORY
COUNT
SEVERITY
COUNT
TYPE
COUNT
cve
1294
daffainfo
605
cves
1277
info
1352
http
3554
panel
591
dhiyaneshdk
503
exposed-panels
600
high
938
file
76
lfi
486
pikpikcu
321
vulnerabilities
493
medium
766
network
50
xss
439
pdteam
269
technologies
266
critical
436
dns
17
wordpress
401
geeknik
187
exposures
254
low
211
exposure
355
dwisiswant0
169
misconfiguration
207
unknown
7
cve2021
322
0x_akoko
154
token-spray
206
rce
313
princechaddha
147
workflows
187
wp-plugin
297
pussycat0x
128
default-logins
101
tech
282
gy741
126
file
76
281 directories, 3922 files.
vscan POC
vscan POC includes: xray 2.0 300+ POC, go POC, etc.
scan4all POC
Support 7000+ web fingerprint scanning, identification:
httpx fingerprint
vscan fingerprint
vscan fingerprint: including eHoleFinger, localFinger, etc.
scan4all fingerprint
Support 146 protocols and 90000+ rule port scanning
Depends on protocols and fingerprints supported by nmap
Fast HTTP sensitive file detection, can customize dictionary
Landing page detection
Supports multiple types of input - STDIN/HOST/IP/CIDR/URL/TXT
Highly integratable: Configurable unified storage of results to Elasticsearch [strongly recommended]
Smart SSL Analysis:
In-depth analysis, automatically correlate the scanning of domain names in SSL information, such as *.xxx.com, and complete subdomain traversal according to the configuration, and the result will automatically add the target to the scanning list
Support to enable *.xx.com subdomain traversal function in smart SSL information, export EnableSubfinder=true, or adjust in the configuration file
Automatically identify the case of multiple IPs associated with a domain (DNS), and automatically scan the associated multiple IPs
Smart processing:
When the IPs of multiple domain names in the list are the same, merge port scans to improve efficiency
Intelligently handle http abnormal pages, and fingerprint calculation and learning
Automated supply chain identification, analysis and scanning
Intelligently identify honeypots and skip targets. This function is disabled by default. You can set EnableHoneyportDetection=true to enable
Highly customizable: allow to define your own dictionary through config/config.json configuration, or control more details, including but not limited to: nuclei, httpx, naabu, etc.
go install github.com/hktalent/scan4all@2.6.1
scan4all -h
how to use
Start Elasticsearch, of course you can use the traditional way to output, results
mkdir -p logs data
docker run --restart=always --ulimit nofile=65536:65536 -p 9200:9200 -p 9300:9300 -d --name es -v $PWD/logs:/usr/share/elasticsearch/logs -v $PWD /config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v $PWD/config/jvm.options:/usr/share/elasticsearch/config/jvm.options -v $PWD/data:/ usr/share/elasticsearch/data hktalent/elasticsearch:7.16.2
# Initialize the es index, the result structure of each tool is different, and it is stored separately
./config/initEs.sh
# Search syntax, more query methods, learn Elasticsearch by yourself
http://127.0.0.1:9200/nmap_index/_doc/_search?q=_id:192.168.0.111
where 92.168.0.111 is the target to query
Please install nmap by yourself before use
Using Help
go build
# Precise scan url list UrlPrecise=true
UrlPrecise=true ./scan4all -l xx.txt
# Disable adaptation to nmap and use naabu port to scan its internally defined http-related ports
priorityNmap=false ./scan4all -tp http -list allOut.txt -v
Work Plan
Integrate web-cache-vulnerability-scanner to realize HTTP smuggling smuggling and cache poisoning detection
Linkage with metasploit-framework, on the premise that the system has been installed, cooperate with tmux, and complete the linkage with the macos environment as the best practice
Integrate more fuzzers , such as linking sqlmap
Integrate chromedp to achieve screenshots of landing pages, detection of front-end landing pages with pure js and js architecture, and corresponding crawlers (sensitive information detection, page crawling)
Integrate nmap-go to improve execution efficiency, dynamically parse the result stream, and integrate it into the current task waterfall
Integrate ksubdomain to achieve faster subdomain blasting
Integrate spider to find more bugs
Semi-automatic fingerprint learning to improve accuracy; specify fingerprint name, configure