NMAP
Nmap是一個(gè)網(wǎng)絡(luò)連接端口掃描軟件彰导,用來掃描網(wǎng)上電腦開放的網(wǎng)絡(luò)連接端口。確定哪些服務(wù)運(yùn)行在哪些連接端口,并且推斷計(jì)算機(jī)運(yùn)行哪個(gè)操作系統(tǒng)。它是網(wǎng)絡(luò)管理員必用的軟件之一感憾,以及用以評(píng)估網(wǎng)絡(luò)系統(tǒng)安全蜡励。
nmap
優(yōu)勢(shì):
? 功能靈活強(qiáng)大令花,支持多種目標(biāo),大量計(jì)算機(jī)的同時(shí)掃描凉倚;
? 開源兼都,相關(guān)幫助文檔十分詳細(xì);
? 流行稽寒,由于其具有強(qiáng)大的掃描機(jī)探測(cè)功能扮碧,,已被成千上萬安全專家使用杏糙。
劣勢(shì):
? Nmap參數(shù)眾多慎王,難以一一記憶;
? ? ? ? ? ? 掃描漏洞不強(qiáng)宏侍,不像專業(yè)系統(tǒng)漏洞掃描器
1赖淤、Nmap是一個(gè)免費(fèi)開源網(wǎng)絡(luò)連接端口掃描軟件,用來掃描網(wǎng)上電腦開放的網(wǎng)絡(luò)連接端口谅河,也可以掃漏洞咱旱。
2、主要功能:
(1)绷耍、主機(jī)發(fā)現(xiàn)
? -sn: Ping Scan 只進(jìn)行主機(jī)發(fā)現(xiàn)吐限,不進(jìn)行端口掃描。
? --traceroute: 追蹤每個(gè)路由節(jié)點(diǎn)
如:nmap -sn 192.168.0.1-200
nmap --traceroute 14.215.177.38
(2)褂始、端口掃描
命令如下:nmap -sS -sU -T4 -top-ports 300 1.1.1.100
參數(shù)-sS表示使用TCP SYN方式掃描TCP端口诸典;-sU表示掃描UDP端口;-T4表示時(shí)間級(jí)別配置4級(jí)崎苗;--top-ports 300表示掃描最有可能開放的300個(gè)端口(TCP和UDP分別有300個(gè)端口)搂赋。
常用端口入侵表:https://www.php.cn/safe/436409.html
(3)、版本偵測(cè)
nmap -sV 192.168.0.105? 指定讓Nmap進(jìn)行版本偵測(cè)
(4)益缠、OS偵測(cè)
命令:nmap –O 10.1.1.100
(5)漏洞檢測(cè)
掃描端口并且標(biāo)記可以爆破的服務(wù)
nmap 目標(biāo) --script=ftp-brute,imap-brute,smtp-brute,pop3-brute,mongodb-brute,redis-brute,ms-sql-brute,rlogin-brute,rsync-brute,mysql-brute,pgsql-brute,oracle-sid-brute,oracle-brute,rtsp-url-brute,snmp-brute,svn-brute,telnet-brute,vnc-brute,xmpp-brute
判斷常見的漏洞并掃描端口
nmap 目標(biāo) --script=auth,vuln
精確判斷漏洞并掃描端口
nmap 目標(biāo) --script=dns-zone-transfer,ftp-anon,ftp-proftpd-backdoor,ftp-vsftpd-backdoor,ftp-vuln-cve2010-4221,http-backup-finder,http-cisco-anyconnect,http-iis-short-name-brute,http-put,http-php-version,http-shellshock,http-robots.txt,http-svn-enum,http-webdav-scan,iis-buffer-overflow,iax2-version,memcached-info,mongodb-info,msrpc-enum,ms-sql-info,mysql-info,nrpe-enum,pptp-version,redis-info,rpcinfo,samba-vuln-cve-2012-1182,smb-vuln-ms08-067,smb-vuln-ms17-010,snmp-info,sshv1,xmpp-info,tftp-enum,teamspeak2-version
主機(jī)發(fā)現(xiàn)原理
主機(jī)發(fā)現(xiàn)的原理與Ping命令類似脑奠,發(fā)送探測(cè)包到目標(biāo)主機(jī),如果收到回復(fù)幅慌,那么說明目標(biāo)主機(jī)是開啟的宋欺。Nmap支持十多種不同的主機(jī)探測(cè)方式,比如發(fā)送ICMPECHO/TIMESTAMP/NETMASK報(bào)文、發(fā)送TCPSYN/ACK包齿诞、發(fā)送SCTP INIT/COOKIE-ECHO包酸休,用戶可以在不同的條件下靈活選用不同的方式來探測(cè)目標(biāo)機(jī)。
主機(jī)發(fā)現(xiàn)的基本用法
-sL: List Scan 列表掃描祷杈,僅將指定的目標(biāo)的IP列舉出來斑司,不進(jìn)行主機(jī)發(fā)現(xiàn)。?
-sn: Ping Scan 只進(jìn)行主機(jī)發(fā)現(xiàn)但汞,不進(jìn)行端口掃描宿刮。?
-Pn: 將所有指定的主機(jī)視作開啟的,跳過主機(jī)發(fā)現(xiàn)的過程私蕾。?
-PS/PA/PU/PY[portlist]: 使用TCPSYN/ACK或SCTP INIT/ECHO方式進(jìn)行發(fā)現(xiàn)僵缺。?
-PE/PP/PM: 使用ICMP echo, timestamp, and netmask 請(qǐng)求包發(fā)現(xiàn)主機(jī)。
-PO[protocollist]: 使用IP協(xié)議包探測(cè)對(duì)方主機(jī)是否開啟踩叭。
?-n/-R: -n表示不進(jìn)行DNS解析磕潮;-R表示總是進(jìn)行DNS解析。?
--dns-servers.: 指定DNS服務(wù)器容贝。?
--system-dns: 指定使用系統(tǒng)的DNS服務(wù)器?
--traceroute: 追蹤每個(gè)路由節(jié)點(diǎn)?
端口掃描原理
端口掃描是Nmap最基本最核心的功能自脯,用于確定目標(biāo)主機(jī)的TCP/UDP端口的開放情況。默認(rèn)情況下斤富,Nmap會(huì)掃描1000個(gè)最有可能開放的TCP端口膏潮。Nmap通過探測(cè)將端口劃分為6個(gè)狀態(tài):
open:端口是開放的。
closed:端口是關(guān)閉的茂缚。
filtered:端口被防火墻IDS/IPS屏蔽戏罢,無法確定其狀態(tài)。
unfiltered:端口沒有被屏蔽脚囊,但是否開放需要進(jìn)一步確定龟糕。
open|filtered:端口是開放的或被屏蔽。
closed|filtered:端口是關(guān)閉的或被屏蔽悔耘。
端口掃描用法
-sS/sT/sA/sW/sM:指定使用 TCP SYN/Connect()/ACK/Window/Maimon scans的方式來對(duì)目標(biāo)主機(jī)進(jìn)行掃描讲岁。?
-sU: 指定使用UDP掃描方式確定目標(biāo)主機(jī)的UDP端口狀況。?
-sN/sF/sX: 指定使用TCP Null, FIN, and Xmas scans秘密掃描方式來協(xié)助探測(cè)對(duì)方的TCP端口狀態(tài)衬以。?
--scanflags <flags>: 定制TCP包的flags缓艳。?
-sI <zombiehost[:probeport]>: 指定使用idle scan方式來掃描目標(biāo)主機(jī)(前提需要找到合適的zombie host)
-sY/sZ: 使用SCTP INIT/COOKIE-ECHO來掃描SCTP協(xié)議端口的開放的情況。?
-sO: 使用IP protocol 掃描確定目標(biāo)機(jī)支持的協(xié)議類型看峻。
-b <FTP relay host>: 使用FTP bounce scan掃描方式?
版本偵測(cè)原理
簡要的介紹版本的偵測(cè)原理阶淘。版本偵測(cè)主要分為以下幾個(gè)步驟:
首先檢查open與open|filtered狀態(tài)的端口是否在排除端口列表內(nèi)。如果在排除列表互妓,將該端口剔除溪窒。
如果是TCP端口坤塞,嘗試建立TCP連接。嘗試等待片刻(通常6秒或更多澈蚌,具體時(shí)間可以查詢文件nmap-services-probes中Probe TCP NULL q||對(duì)應(yīng)的totalwaitms)摹芙。通常在等待時(shí)間內(nèi),會(huì)接收到目標(biāo)機(jī)發(fā)送的“WelcomeBanner”信息宛瞄。nmap將接收到的Banner與nmap-services-probes中NULL probe中的簽名進(jìn)行對(duì)比浮禾。查找對(duì)應(yīng)應(yīng)用程序的名字與版本信息。
如果通過“Welcome Banner”無法確定應(yīng)用程序版本份汗,那么nmap再嘗試發(fā)送其他的探測(cè)包(即從nmap-services-probes中挑選合適的probe)盈电,將probe得到回復(fù)包與數(shù)據(jù)庫中的簽名進(jìn)行對(duì)比。如果反復(fù)探測(cè)都無法得出具體應(yīng)用裸影,那么打印出應(yīng)用返回報(bào)文挣轨,讓用戶自行進(jìn)一步判定军熏。
如果是UDP端口轩猩,那么直接使用nmap-services-probes中探測(cè)包進(jìn)行探測(cè)匹配。根據(jù)結(jié)果對(duì)比分析出UDP應(yīng)用服務(wù)類型荡澎。
如果探測(cè)到應(yīng)用程序是SSL均践,那么調(diào)用openSSL進(jìn)一步的偵查運(yùn)行在SSL之上的具體的應(yīng)用類型。
如果探測(cè)到應(yīng)用程序是SunRPC摩幔,那么調(diào)用brute-force
RPC grinder進(jìn)一步探測(cè)具體服務(wù)彤委。
版本偵測(cè)用法
-sV: 指定讓Nmap進(jìn)行版本偵測(cè)?
--version-intensity <level>: 指定版本偵測(cè)強(qiáng)度(0-9),默認(rèn)為7或衡。數(shù)值越高焦影,探測(cè)出的服務(wù)越準(zhǔn)確,但是運(yùn)行時(shí)間會(huì)比較長封断。?
--version-light: 指定使用輕量偵測(cè)方式 (intensity 2)?
--version-all: 嘗試使用所有的probes進(jìn)行偵測(cè) (intensity
9)?
--version-trace: 顯示出詳細(xì)的版本偵測(cè)過程信息斯辰。
OS偵測(cè)原理
Nmap使用TCP/IP協(xié)議棧指紋來識(shí)別不同的操作系統(tǒng)和設(shè)備。在RFC規(guī)范中坡疼,有些地方對(duì)TCP/IP的實(shí)現(xiàn)并沒有強(qiáng)制規(guī)定彬呻,由此不同的TCP/IP方案中可能都有自己的特定方式。Nmap主要是根據(jù)這些細(xì)節(jié)上的差異來判斷操作系統(tǒng)的類型的柄瑰。具體實(shí)現(xiàn)方式如下:
Nmap 內(nèi)部包含了2600多已知系統(tǒng)的指紋特征(在文件nmap-os-db文件中)闸氮。將此指紋數(shù)據(jù)庫作為進(jìn)行指紋對(duì)比的樣本庫。分別挑選一個(gè)open和closed的端口教沾,向其發(fā)送經(jīng)過精心設(shè)計(jì)的TCP/UDP/ICMP數(shù)據(jù)包蒲跨,根據(jù)返回的數(shù)據(jù)包生成一份系統(tǒng)指紋。將探測(cè)生成的指紋與nmap-os-db中指紋進(jìn)行對(duì)比授翻,查找匹配的系統(tǒng)或悲。如果無法匹配镐作,以概率形式列舉出可能的系統(tǒng)。
OS偵測(cè)用法
-O: 指定Nmap進(jìn)行OS偵測(cè)隆箩。?
--osscan-limit: 限制Nmap只對(duì)確定的主機(jī)的進(jìn)行OS探測(cè)(至少需確知該主機(jī)分別有一個(gè)open和closed的端口)该贾。?
--osscan-guess: 大膽猜測(cè)對(duì)方的主機(jī)的系統(tǒng)類型。由此準(zhǔn)確性會(huì)下降不少捌臊,但會(huì)盡可能多為用戶提供潛在的操作系統(tǒng)杨蛋。
漏洞掃描
掃描端口并且標(biāo)記可以爆破的服務(wù)
nmap 目標(biāo)--script=ftp-brute,imap-brute,smtp-brute,pop3-brute,mongodb-brute,redis-brute,ms-sql-brute,rlogin-brute,rsync-brute,mysql-brute,pgsql-brute,oracle-sid-brute,oracle-brute,rtsp-url-brute,snmp-brute,svn-brute,telnet-brute,vnc-brute,xmpp-brute
判斷常見的漏洞并掃描端口
nmap 目標(biāo) --script=auth,vuln
精確判斷漏洞并掃描端口
nmap 目標(biāo) --script=dns-zone-transfer,ftp-anon,ftp-proftpd-backdoor,ftp-vsftpd-backdoor,ftp-vuln-cve2010-4221,http-backup-finder,http-cisco-anyconnect,http-iis-short-name-brute,http-put,http-php-version,http-shellshock,http-robots.txt,http-svn-enum,http-webdav-scan,iis-buffer-overflow,iax2-version,memcached-info,mongodb-info,msrpc-enum,ms-sql-info,mysql-info,nrpe-enum,pptp-version,redis-info,rpcinfo,samba-vuln-cve-2012-1182,smb-vuln-ms08-067,smb-vuln-ms17-010,snmp-info,sshv1,xmpp-info,tftp-enum,teamspeak2-version
burp 測(cè)試滲透神器
1、首先安裝jdk 8.0版本
2理澎、記得關(guān)閉殺軟和防火墻
3逞力、雙擊run.bat參考視頻激活burp
4、修改burp字體
5糠爬、當(dāng)burp配置忘記修改了那個(gè)地方的時(shí)候寇荧,大家可以通過用戶選項(xiàng)進(jìn)行恢復(fù)默認(rèn)值
6、burp默認(rèn)攔截發(fā)送包执隧,不攔截回包揩抡,另外如果要長久打開網(wǎng)站,你直接在burp代理放行就可以镀琉,建議大家不使用代理的
時(shí)候一定記得關(guān)掉IE代理峦嗤,不然網(wǎng)站打不開。