20 KiB
Muhtasari wa Nmap (ESP)
Jifunze AWS hacking kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!
Njia nyingine za kusaidia HackTricks:
- Ikiwa unataka kuona kampuni yako ikitangazwa kwenye HackTricks au kupakua HackTricks kwa PDF Angalia MIPANGO YA KUJIUNGA!
- Pata bidhaa rasmi za PEASS & HackTricks
- Gundua Familia ya PEASS, mkusanyiko wetu wa NFTs ya kipekee
- Jiunge na 💬 Kikundi cha Discord au kikundi cha telegram au tufuate kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu zako za kuhack kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.
{% embed url="https://websec.nl/" %}
nmap -sV -sC -O -n -oA nmapscan 192.168.0.1/24
Vigezo
IPs za kutafuta
<ip>,<net/mask>
: Inaonyesha IPs moja kwa moja-iL <ips_file>
: Orodha ya IPs-iR <number>
: Idadi ya Ips za kubahatisha, unaweza kuepuka Ips zinazowezekana kwa kutumia--exclude <Ips>
au--excludefile <file>
.
Ugunduzi wa Vifaa
Kwa chaguo-msingi, Nmap huanzisha awamu ya ugunduzi inayojumuisha: -PA80 -PS443 -PE -PP
-sL
: Si ya kuvamia, inaorodhesha malengo kwa kutuma maombi ya DNS kutatua majina. Ni muhimu kujua kama kwa mfano www.prueba.es/24 IPs zote ni malengo yetu.-Pn
: Hakuna ping. Hii ni muhimu ikiwa unajua kuwa zote ziko hai (kama sivyo, unaweza kupoteza muda mwingi, lakini chaguo hili pia linazalisha matokeo hasi yakisema kuwa haziko hai), inazuia awamu ya ugunduzi.-sn
: Hakuna uchunguzi wa bandari. Baada ya kukamilisha awamu ya upelelezi, haitafuti bandari. Ni ya siri, na inaruhusu uchunguzi mdogo wa mtandao. Kwa mamlaka inatuma ACK (-PA) kwa 80, SYN(-PS) kwa 443 na ombi la echo na ombi la Timestamp, bila mamlaka daima inakamilisha uhusiano. Ikiwa lengo ni mtandao, inatumia ARP(-PR). Ikitumiwa pamoja na chaguo lingine, pakiti za chaguo lingine tu ndizo zinazotupwa.-PR
: Ping ARP. Hutumiwa kwa chaguo-msingi wakati wa kuchambua kompyuta katika mtandao wetu, ni haraka kuliko kutumia pings. Ikiwa hautaki kutumia pakiti za ARP tumia--send-ip
.-PS <ports>
: Inatuma pakiti za SYN ambazo ikiitikia SYN/ACK inafunguliwa (ikiitikia na RST ili kuzuia kumaliza uhusiano), ikiitikia RST inafungwa na ikiwa haitoi jibu inafikika. Ikiwa huna mamlaka, uhusiano kamili unatumika kiotomatiki. Ikiwa hakuna bandari zimetolewa, inatuma kwa 80.-PA <ports>
: Kama ile ya awali lakini na ACK, kuchanganya zote mbili hutoa matokeo bora.-PU <ports>
: Lengo ni kinyume chake, zinatumwa kwa bandari ambazo inatarajiwa kuwa zimefungwa. Baadhi ya firewalls huchunguza tu uhusiano wa TCP. Ikiwa imefungwa inajibiwa na bandari isiyopatikana, ikiitikia na icmp nyingine au ikiwa haitoi jibu inabaki kama isiyopatikana.-PE, -PP, -PM
: ICMP PINGS: jibu la echo, timestamp na addresmask. Zinatumiwa kujua ikiwa lengo lipo hai.-PY<ports>
: Inatuma uchunguzi wa SCTP INIT kwa 80 kwa chaguo-msingi, INIT-ACK(funguliwa) au ABORT(fungwa) au hakuna kitu au ICMP isiyopatikana(isiyofanya kazi) inaweza kujibiwa.-PO <protocols>
: Itifaki inaonyeshwa kwenye vichwa, kwa chaguo-msingi 1(ICMP), 2(IGMP) na 4(Encap IP). Kwa itifaki za ICMP, IGMP, TCP (6) na UDP (17) vichwa vya itifaki vinatumwa, kwa zingine ni kichwa cha IP tu kinatumwa. Lengo la hii ni kwamba kutokana na uharibifu wa vichwa, itifaki isiyopatikana au majibu ya itifaki hiyo hiyo yanajibiwa kujua ikiwa iko juu.-n
: Hakuna DNS-R
: DNS daima
Mbinu za Uchunguzi wa Bandari
-sS
: Haukamilishi uhusiano hivyo haionyeshi alama, nzuri sana ikiwa inaweza kutumika. (mamlaka) Ni ile inayotumiwa kwa chaguo-msingi.-sT
: Inakamilisha uhusiano, hivyo inaacha alama, lakini inaweza kutumika kwa uhakika. Kwa chaguo-msingi bila mamlaka.-sU
: Polepole, kwa UDP. Kwa kiasi kikubwa: DNS(53), SNMP(161,162), DHCP(67 na 68), (-sU53,161,162,67,68): wazi(jibu), imefungwa(bandari isiyopatikana), iliyofutwa (icmp nyingine), wazi/imefungwa (hakuna kitu). Kwa hali ya wazi/imefungwa, -sV inatuma maombi mengi kugundua mojawapo ya toleo ambazo nmap inasaidia na inaweza kugundua hali halisi. Inaongeza sana muda.-sY
: Itifaki ya SCTP haiwezi kuanzisha uhusiano, hivyo hakuna kumbukumbu, inafanya kazi kama -PY-sN,-sX,-sF
: Null, Fin, Xmas, wanaweza kuingia kwenye baadhi ya firewalls na kutoa habari. Zinategemea ukweli kwamba mashine zinazofuata viwango zinapaswa kujibu na RST maombi yote ambayo hayana SYN, RST au ACK zilizoinuliwa: wazi/imefungwa(hakuna kitu), imefungwa(RST), iliyofutwa (icmp isiyopatikana). Sio za kuaminika kwenye Windows, CIsco, BSDI na OS/400. Kwenye unix ndio.-sM
: Uchunguzi wa Maimon: Inatuma alama za FIN na ACK, hutumiwa kwa BSD, kwa sasa itarudisha zote kama imefungwa.-sA, sW
: ACK na Window, hutumiwa kugundua firewalls, kujua ikiwa bandari zimezuiwa au la. -sW inatofautisha kati ya wazi/imefungwa kwani zile zilizofunguliwa zinajibu na thamani tofauti ya dirisha: wazi (RST na dirisha tofauti na 0), imefungwa (RST dirisha = 0), iliyofutwa (icmp isiyopatikana au hakuna kitu). Sio kompyuta zote zinafanya kazi kwa njia hii, hivyo ikiwa zote zimefungwa, haifanyi kazi, ikiwa ni chache zilizofunguliwa, inafanya kazi vizuri, na ikiwa ni nyingi zilizofunguliwa na chache zilizofungwa, inafanya kazi kinyume.-sI
: Uchunguzi wa Kimya. Kwa kesi ambapo kuna firewall inayofanya kazi lakini tunajua kuwa haitazi Ip fulani (au tunapotaka tu kutokuwa na jina) tunaweza kutumia skana ya zombie (inatumika kwa bandari zote), kutafuta zombies inayowezekana tunaweza kutumia skrini ya ipidseq au kisasa cha kudanganya/scanner/ip/ipidseq. Skana hii inategemea nambari ya IPID ya pakiti za IP.--badsum
: Inatuma jumla isiyo sahihi, kompyuta zingeweza kukataa pakiti, lakini firewalls zingeweza kujibu kitu, hutumiwa kugundua firewalls.-sZ
: Skana ya SCTP "Weird", wakati wa kutuma uchunguzi na vipande vya cookie echo vinapaswa kutupwa ikiwa ni wazi au kujibiwa na ABORT ikiwa imefungwa. Inaweza kupita kwenye firewalls ambazo init haitapita, baya ni kwamba haitofautishi kati ya zilizofunguliwa na zilizozuiliwa.-sO
: Uchunguzi wa Itifaki ya Ip. Inatuma vichwa vibaya na tupu ambapo mara nyingine hata itifaki haiwezi kutofautishwa. Ikiwa itifaki isiyopatikana ya ICMP inawasili inafungwa, ikiwa bandari isiyopatikana inawasili inafunguliwa, ikiwa kosa lingine linawasili, zilizozuiliwa, ikiwa hakuna kitu kinawasili, wazi|zilizozuiliwa.-b <server>
: FTPhost--> Hutumiwa kutafuta mwenyeji kutoka kwa mwingine, hii inafanywa kwa kuunganisha ftp ya mashine nyingine na kuomba kutuma faili kwa bandari unazotaka kutafuta kutoka kwa mashine nyingine, kulingana na majibu tutajua ikiwa zimefunguliwa au la. [<user>:<password>@]<server>[:<port>] Karibu seva zote za ftp haziruhusu tena kufanya hivi na kwa hivyo ni ya matumizi kidogo.
Kati ya Uchambuzi
-p: Inatumika kutoa bandari za kutafuta. Kuchagua 65335: -p- au -p all. Nmap ina uainishaji wa ndani kulingana na umaarufu wake. Kwa chaguo-msingi hutumia 1000 kuu. Kwa -F (uchunguzi wa haraka) huchunguza 100 kuu. Kwa --top-ports <numero> Huchunguza idadi hiyo ya kuu (kutoka 1 hadi 65335). Inathibitisha bandari kwa mpangilio wa nasibu, ili hilo lisitoke -r. Pia tunaweza kuchagua bandari: 20-30,80,443,1024- Hii ya mwisho inamaanisha kuangalia mbele ya 1024. Pia tunaweza kugawa bandari kwa itifaki: U:53,T:21-25,80,139,S:9. Pia tunaweza kuchagua kikundi cha bandari ndani ya kuu za nmap: -p [-1024] huchunguza hadi 1024 zilizomo kwenye huduma za nmap. --port-ratio <ratio> Huchunguza bandari za kawaida zaidi kuliko uwiano ambao lazima uwe kati ya 0 na 1
-sV Uchunguzi wa toleo, unaweza kudhibiti ukali kutoka 0 hadi 9, kwa chaguo-msingi 7.
--version-intensity <numero> Tunadhibiti ukali, hivyo kadri chini itatuma tu majaribio yanayowezekana zaidi, lakini sio yote. Hii inaweza kupunguza sana muda wa uchunguzi wa UDP
-O Ugunduzi wa OS
--osscan-limit Ili kuchunguza mwenyeji vizuri inahitajika kuwa angalau bandari 1 iko wazi na nyingine imefungwa, ikiwa hali hii haipo na tumeiweka hii, haitajaribu kutabiri OS (inapunguza muda) --osscan-guess Wakati upelelezi wa mfumo wa uendeshaji si kamili hii inafanya iwe ngumu zaidi
Scripts
--script <jina la faili>|<jamii>|<directory>|<expression>[,...]
Kutumia zile za msingi, tumia -sC au --script=default
Aina zilizopo ni: auth, broadcast, default, discovery, dos, exploit, external, fuzzer, intrusive, malware, safe, version, na vuln
- Auth: hutekeleza zote zilizopo kwa uthibitisho
- Default: hutekeleza zile za msingi za zana
- Discovery: hupata taarifa kuhusu lengo au mhanga
- External: script kwa kutumia rasilimali za nje
- Intrusive: hutumia script zinazochukuliwa kuwa za kuvamia kwa lengo au mhanga
- Malware: huchunguza kama kuna uhusiano wa wazi kwa nambari za hasidi au backdoors
- Safe: hutekeleza script ambazo si za kuvamia
- Vuln: hufunua mapungufu maarufu zaidi
- All: hutekeleza kikamilifu script zote za NSE zilizopo
Kutafuta scripts:
nmap --script-help="http-*" -> Zile zinazoanza na http-
nmap --script-help="not intrusive" -> Zote isipokuwa hizo
nmap --script-help="default or safe" -> Zile zilizo katika moja au nyingine au zote mbili
nmap --script-help="default and safe" --> Zile zilizo katika zote mbili
nmap --script-help="(default or safe or intrusive) and not http-*"
--script-args <n1>=<v1>,<n2>={<n3>=<v3>},<n4>={<v4>,<v5>}
--script-args-file <jina la faili>
--script-help <jina la faili>|<jamii>|<directory>|<expression>|all[,...]
--script-trace ---> Inatoa habari kuhusu jinsi script inavyoendelea
--script-updatedb
Kutumia script pekee, weka: nmap --script Jina_la_script lengo --> Kwa kuweka script, script na skana zitatekelezwa, hivyo pia unaweza kuongeza “safe=1” ili zitekelezwe tu zile salama.
Kudhibiti Wakati
Nmap inaweza kurekebisha wakati kwa sekunde, dakika, ms: --host-timeout arguments 900000ms, 900, 900s, na 15m yote yanafanya kitu kimoja.
Nmap huchukua idadi ya jumla ya vifaa vya kuchunguza na kugawanya katika vikundi na kuchambua vikundi hivyo kwa mafungu ili mpaka vyote vimechambuliwa, haitapita kwa kikundi kinachofuata (na mtumiaji pia hataki kupokea sasisho mpaka kikundi kimechambuliwa) kwa njia hii, ni bora kwa nmap kutumia vikundi vikubwa. Kwa msingi, inatumia 256 katika darasa C.
Inaweza kubadilishwa na**--min-hostgroup** <numhosts>; --max-hostgroup <numhosts> (Kurekebisha ukubwa wa vikundi vya uchunguzi wa pamoja)
Inaweza kudhibiti idadi ya skana kwa pamoja lakini ni bora kutofanya hivyo (nmap tayari ina udhibiti wa moja kwa moja kulingana na hali ya mtandao): --min-parallelism <numprobes>; --max-parallelism <numprobes>
Tunaweza kurekebisha rtt timeout, lakini mara nyingi si lazima: --min-rtt-timeout <time>, --max-rtt-timeout <time>, --initial-rtt-timeout <time>
Tunaweza kurekebisha idadi ya majaribio:--max-retries <numtries>
Tunaweza kurekebisha wakati wa kuchunguza kifaa: --host-timeout <time>
Tunaweza kurekebisha wakati kati ya kila jaribio ili liende polepole: --scan-delay <time>; --max-scan-delay <time>
Tunaweza kurekebisha idadi ya pakiti kwa sekunde: --min-rate <number>; --max-rate <number>
Baadhi ya bandari huchukua muda mrefu kujibu kwa kuwa zimezuiwa au zimefungwa, ikiwa tunataka tu zile zilizo wazi, tunaweza kwenda haraka zaidi na: --defeat-rst-ratelimit
Kuamua jinsi kali tunavyotaka nmap iwe: -T paranoid|sneaky|polite|normal|aggressive|insane
-T (0-1)
-T0 --> Inachunguza bandari 1 kwa wakati mmoja na inangojea dakika 5 hadi inayofuata
-T1 na T2 --> Sawa sana lakini zinangojea sekunde 15 na 0.4 kati ya kila jaribio mtawalia
-T3 --> Kazi ya msingi, inajumuisha kwa pamoja
-T4 --> --max-rtt-timeout 1250ms --min-rtt-timeout 100ms --initial-rtt-timeout 500ms --max-retries 6 --max-scan-delay 10ms
-T5 --> --max-rtt-timeout 300ms --min-rtt-timeout 50ms --initial-rtt-timeout 250ms --max-retries 2 --host-timeout 15m --max-scan-delay 5ms
Firewall/IDS
Huzuia kupita kwa bandari na kuchambua pakiti.
-f Kugawanya pakiti, kwa msingi inagawa kwa 8bytes baada ya kichwa, kwa kubainisha ukubwa huo tunatumia ..mtu (kwa hili, usitumie -f), offset inapaswa kuwa maradufu ya 8. Escaners ya toleo na scripts hazisaidii ugawanyaji
-D decoy1,decoy2,ME Nmap inatuma skana lakini kutoka kwa anwani za IP nyingine kama asili, hivyo kukuficha. Ikiwa unaweka ME kwenye orodha, nmap itakupa mahali hapo, ni bora kuweka 5 au 6 kabla yako ili kukuficha kabisa. Inaweza kuzalisha IPs za kubahatisha na RND:<nambari> Ili kuzalisha IPs za kubahatisha. Hazifanyi kazi na detector ya toleo bila uhusiano wa TCP. Ikiwa uko ndani ya mtandao, ni bora kutumia IPs zilizo hai, vinginevyo itakuwa rahisi sana kugundua kuwa wewe ndiye pekee aliye hai.
Kutumia IPs za kubahatisha: nmap-D RND: 10 Ip_lengo
-S IP Ikiwa Nmap haijapata anwani yako ya IP unapaswa kuipeana hivyo. Pia inafaa kufanya iweze kufikiri kuwa kuna lengo lingine linachunguza.
-e <interface> Kuchagua kiolesura
Waadiministrata wengi huacha bandari za kuingia wazi ili kila kitu kiweze kufanya kazi vizuri na ni rahisi kwao kuliko kutafuta suluhisho lingine. Hizi zinaweza kuwa bandari za DNS au FTP... kwa kutafuta udhaifu huu nmap inajumuisha: --source-port <nambari ya bandari>;-g <nambari ya bandari> Zinafaana
--data <hex string> Kutuma maandishi ya hexadecimal: --data 0xdeadbeef na --data \xCA\xFE\x09
--data-string <string> Kutuma maandishi ya kawaida: --data-string "Uchunguzi uliofanywa na Operesheni ya Usalama, upanuzi 7192"
--data-length <nambari> Nmap inatuma vichwa pekee, hivyo tunaweza kuongeza idadi ya baits (ambayo itazalishwa kwa kubahatisha)
Kuweka pakiti ya IP kikamilifu kutumia --ip-options
Ikiwa unataka kuona chaguo katika pakiti zinazotumwa na kupokelewa, eleza --packet-trace. Kwa habari zaidi na mifano ya kutumia chaguo za IP na Nmap, angalia http://seclists.org/nmap-dev/2006/q3/52.
--ttl <thamani>
--randomize-hosts Ili shambulio liwe lisilo dhahiri
--spoof-mac <anwani ya MAC, kiambishi, au jina la muuzaji> Kubadilisha MAC mfano: Apple, 0, 01:02:03:04:05:06, deadbeefcafe, 0020F2, na Cisco --proxies <Orodha ya URL za proxy zilizotenganishwa na koma> Ili kutumia proxies, mara nyingi proxy haishikilii idadi kubwa ya uhusiano kama nmap inavyotaka, hivyo inaweza kuhitaji kurekebisha upatanishi: --max-parallelism
-sP Kugundua mwenyeji kwenye mtandao tunaoendesha kupitia ARP
Wakati mwingine, watawala wa mfumo huanzisha sheria kwenye firewall inayoruhusu pakiti zote zinazotoka kwenye bandari fulani (kama 20, 53, na 67) kupita, tunaweza kuagiza nmap kutuma pakiti zetu kutoka bandari hizo: nmap --source-port 53 Ip
Matokeo
-oN faili Matokeo ya kawaida
-oX faili Matokeo ya XML
-oS faili Matokeo ya script kidies
-oG faili Matokeo yanayoweza kutafutika
-oA faili Yote isipokuwa -oS
-v kiwango maelezo
-d kiwango kurekebisha hitilafu
--reason Sababu ya mwenyeji na hali
--stats-every muda Kila baada ya muda huo inatuambia jinsi mambo yanavyokwenda
--packet-trace Kuona ni pakiti zipi zinazotumwa, unaweza kutoa maelezo maalum kama: --version-trace au --script-trace
--open inaonyesha wazi, wazi|zilizofutwa, na zisizofutwa
--resume faili Inatoa muhtasari
Mchanganyiko
-6 Inaruhusu ipv6
-A Ni sawa na -O -sV -sC --traceroute
Muda wa Kutekeleza
Wakati nmap inakimbia, tunaweza kubadilisha chaguo:
v / V Ongeza / punguza kiwango cha maelezo
d / D Ongeza / punguza kiwango cha kurekebisha
p / P Weka / toa ufuatiliaji wa pakiti
? Chapisha skrini ya msaada wa mwingiliano wa wakati wa kutekeleza
Vulscan
Script ya nmap inayotazama toleo la huduma zilizopatikana kwenye hifadhidata ya nje ya mtandao (ambayo inapakuliwa kutoka kwa zingine muhimu sana) na kurudisha mapungufu yanayowezekana
Hifadhidata zinazotumiwa ni:
- Scipvuldb.csv | http://www.scip.ch/en/?vuldb
- Cve.csv | http://cve.mitre.org
- Osvdb.csv | http://www.osvdb.org
- Securityfocus.csv | http://www.securityfocus.com/bid/
- Securitytracker.csv | http://www.securitytracker.com
- Xforce.csv | http://xforce.iss.net
- Exploitdb.csv | http://www.exploit-db.com
- Openvas.csv | http://www.openvas.org
Ili kuipakua na kuweka kwenye folda ya Nmap:
wget http://www.computec.ch/projekte/vulscan/download/nmap_nse_vulscan-2.0.tar.gz && tar -czvf nmap_nse_vulscan-2.0.tar.gz vulscan/ && sudo cp -r vulscan/ /usr/share/nmap/scripts/
Pia unahitaji kupakua pakiti za hifadhidata na kuziweka kwenye /usr/share/nmap/scripts/vulscan/
Matumizi:
Kutumia zote: sudo nmap -sV --script=vulscan HOST_A_ESCANEAR
Kutumia hifadhidata maalum: sudo nmap -sV --script=vulscan --script-args vulscandb=cve.csv HOST_A_ESCANEAR
Kuharakisha Uchunguzi wa Huduma za Nmap x16
Kulingana na chapisho hili unaweza kuharakisha uchambuzi wa huduma za nmap kwa kurekebisha thamani zote za totalwaitms
katika /usr/share/nmap/nmap-service-probes
kuwa 300 na tcpwrappedms
kuwa 200.
Zaidi ya hayo, uchunguzi ambao haujapewa thamani maalum ya servicewaitms
hutumia thamani ya msingi ya 5000
. Kwa hivyo, tunaweza kuongeza thamani kwa kila uchunguzi, au tunaweza kukusanya upya nmap na kubadilisha thamani ya msingi katika service_scan.h.
Ikiwa hutaki kubadilisha thamani za totalwaitms
na tcpwrappedms
kabisa kwenye faili ya /usr/share/nmap/nmap-service-probes
, unaweza kuhariri msimbo wa kuchambua ili thamani hizi kwenye faili ya nmap-service-probes
zisipuuzwe kabisa.
{% embed url="https://websec.nl/" %}
Jifunze kuhusu kudukua AWS kutoka mwanzo hadi mtaalamu na htARTE (HackTricks AWS Red Team Expert)!
Njia nyingine za kusaidia HackTricks:
- Ikiwa unataka kuona kampuni yako ikitangazwa kwenye HackTricks au kupakua HackTricks kwa PDF Angalia MIPANGO YA KUJIUNGA!
- Pata bidhaa rasmi za PEASS & HackTricks
- Gundua Familia ya PEASS, mkusanyiko wetu wa NFTs za kipekee
- Jiunge na 💬 Kikundi cha Discord au kikundi cha telegram au tufuate kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu zako za kudukua kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud github repos.