139,445 - Pentesting SMB
Port 139
Network Basic Input Output System** (NetBIOS)** ni protokali ya programu iliyoundwa kuwezesha programu, PCs, na Desktops ndani ya mtandao wa eneo la ndani (LAN) kuingiliana na vifaa vya mtandao na kuwezesha uhamasishaji wa data kupitia mtandao. Utambuzi na eneo la programu za programu zinazofanya kazi kwenye mtandao wa NetBIOS unafanywa kupitia majina yao ya NetBIOS, ambayo yanaweza kuwa na urefu wa hadi herufi 16 na mara nyingi ni tofauti na jina la kompyuta. Kikao cha NetBIOS kati ya programu mbili kinaanzishwa wakati programu moja (inayofanya kazi kama mteja) inatoa amri ya "kuita" programu nyingine (inayofanya kazi kama seva) ikitumia TCP Port 139.
Port 445
Kitaalamu, Port 139 inajulikana kama ‘NBT over IP’, wakati Port 445 inatambulika kama ‘SMB over IP’. Kifupi SMB kinamaanisha ‘Server Message Blocks’, ambacho pia kinajulikana kisasa kama Common Internet File System (CIFS). Kama itifaki ya mtandao ya kiwango cha programu, SMB/CIFS inatumika hasa kuwezesha ufikiaji wa pamoja wa faili, printers, serial ports, na kuwezesha aina mbalimbali za mawasiliano kati ya nodi kwenye mtandao.
Kwa mfano, katika muktadha wa Windows, inasisitizwa kwamba SMB inaweza kufanya kazi moja kwa moja juu ya TCP/IP, ikiondoa hitaji la NetBIOS juu ya TCP/IP, kupitia matumizi ya port 445. Kinyume chake, kwenye mifumo tofauti, matumizi ya port 139 yanaonekana, ikionyesha kwamba SMB inatekelezwa pamoja na NetBIOS juu ya TCP/IP.
SMB
Protokali ya Server Message Block (SMB), inayofanya kazi katika mfano wa mteja-server, imeundwa kwa ajili ya kudhibiti ufikiaji wa faili, saraka, na rasilimali nyingine za mtandao kama vile printers na routers. Kimsingi inatumika ndani ya mfululizo wa mfumo wa uendeshaji wa Windows, SMB inahakikisha ufanisi wa nyuma, ikiruhusu vifaa vyenye toleo jipya la mfumo wa uendeshaji wa Microsoft kuingiliana kwa urahisi na vile vinavyotumia toleo la zamani. Aidha, mradi wa Samba unatoa suluhisho la programu ya bure, linalowezesha utekelezaji wa SMB kwenye mifumo ya Linux na Unix, hivyo kurahisisha mawasiliano kati ya majukwaa kupitia SMB.
Hisa, zinazowakilisha sehemu za nasibu za mfumo wa faili wa ndani, zinaweza kutolewa na seva ya SMB, na kufanya hiyerarhii ionekane kwa mteja kwa sehemu huru kutoka kwa muundo halisi wa seva. Access Control Lists (ACLs), ambazo zinafafanua haki za ufikiaji, zinaruhusu udhibiti wa kina juu ya ruhusa za watumiaji, ikiwa ni pamoja na sifa kama execute
, read
, na full access
. Ruhusa hizi zinaweza kutolewa kwa watumiaji binafsi au vikundi, kulingana na hisa, na ni tofauti na ruhusa za ndani zilizowekwa kwenye seva.
IPC$ Share
Ufikiaji wa hisa ya IPC$ unaweza kupatikana kupitia kikao cha kutokujulikana, ikiruhusu mwingiliano na huduma zinazofichuliwa kupitia mabomba yaliyopewa majina. Kifaa enum4linux
ni muhimu kwa kusudi hili. Ikitumika ipasavyo, inaruhusu kupata:
Taarifa kuhusu mfumo wa uendeshaji
Maelezo kuhusu domain ya mzazi
Mkusanyiko wa watumiaji na vikundi vya ndani
Taarifa kuhusu hisa za SMB zinazopatikana
Sera ya usalama wa mfumo inayofanya kazi
Funguo hii ni muhimu kwa wasimamizi wa mtandao na wataalamu wa usalama kutathmini hali ya usalama ya huduma za SMB (Server Message Block) kwenye mtandao. enum4linux
inatoa mtazamo mpana wa mazingira ya SMB ya mfumo lengwa, ambayo ni muhimu kwa kutambua udhaifu wa uwezekano na kuhakikisha kwamba huduma za SMB zimeimarishwa ipasavyo.
The above command is an example of how enum4linux
might be used to perform a full enumeration against a target specified by target_ip
.
Nini NTLM
Ikiwa hujui nini NTLM au unataka kujua jinsi inavyofanya kazi na jinsi ya kuitumia vibaya, utapata kuwa na kuvutia sana ukurasa huu kuhusu NTLM ambapo inaelezwa jinsi protokali hii inavyofanya kazi na jinsi unavyoweza kuitumia:
NTLMUainishaji wa Server
Scan mtandao ukitafuta mwenyeji:
SMB server version
Ili kutafuta uwezekano wa kutumia udhaifu katika toleo la SMB, ni muhimu kujua ni toleo gani linatumika. Ikiwa taarifa hii haionekani katika zana nyingine zinazotumika, unaweza:
Tumia moduli ya MSF ya ziada _auxiliary/scanner/smb/smb_version
Au skripti hii:
Tafuta exploit
Mikopo Inayowezekana
Jina la mtumiaji | Nywila za kawaida |
(bila) | (bila) |
mgeni | (bila) |
Msimamizi, admin | (bila), nywila, msimamizi, admin |
arcserve | arcserve, backup |
tivoli, tmersrvd | tivoli, tmersrvd, admin |
backupexec, backup | backupexec, backup, arcada |
jaribio, maabara, onyesho | nywila, jaribio, maabara, onyesho |
Nguvu ya Brute
Taarifa za Mazingira ya SMB
Pata Taarifa
Orodhesha Watumiaji, Vikundi & Watumiaji Walioingia
Taarifa hii inapaswa kuwa tayari imekusanywa kutoka enum4linux na enum4linux-ng
Orodhesha watumiaji wa ndani
Oneliner
Metasploit - Kuorodhesha watumiaji wa ndani
Kuhesabu LSARPC na SAMR rpcclient
rpcclient enumerationMuunganisho wa GUI kutoka linux
Katika terminali:
xdg-open smb://cascade.htb/
Katika dirisha la kivinjari cha faili (nautilus, thunar, nk)
smb://friendzone.htb/general/
Kuhesabu Folda Zilizoshirikiwa
Orodha ya folda zilizoshirikiwa
Kila wakati inashauriwa kuangalia kama unaweza kufikia chochote, ikiwa huna akidi jaribu kutumia null credentials/mtembezi wa wageni.
Unganisha/Orodhesha folda iliyoshirikiwa
Kuhesabu kwa mikono sehemu za windows na kuungana nazo
Inaweza kuwa inawezekana kwamba umepungukiwa kuonyesha sehemu zozote za mashine ya mwenyeji na unapojaribu kuorodhesha zinaonekana kana kwamba hakuna sehemu za kuungana nazo. Hivyo inaweza kuwa na maana kujaribu kuungana kwa mikono na sehemu. Ili kuhesabu sehemu hizo kwa mikono unaweza kutaka kutafuta majibu kama NT_STATUS_ACCESS_DENIED na NT_STATUS_BAD_NETWORK_NAME, unapokuwa unatumia kikao halali (mfano, kikao kisicho na kitu au akidi halali). Haya yanaweza kuashiria ikiwa sehemu hiyo ipo na huna ufikiaji wake au sehemu hiyo haipo kabisa.
Majina ya kawaida ya sehemu kwa malengo ya windows ni
C$
D$
ADMIN$
IPC$
PRINT$
FAX$
SYSVOL
NETLOGON
(Majina ya kawaida ya sehemu kutoka Network Security Assessment 3rd edition)
Unaweza kujaribu kuungana nazo kwa kutumia amri ifuatayo
au kwa hii script (ikitumia kikao kisicho na thamani)
mfano
Kagua hisa kutoka Windows / bila zana za upande wa tatu
PowerShell
CMD console
MMC Snap-in (grafiki)
explorer.exe (grafiki), ingiza \\<ip>\
kuona sehemu zisizofichwa zinazopatikana.
Mount a shared folder
Pakua faili
Soma sehemu za awali kujifunza jinsi ya kuungana na akidi/Pass-the-Hash.
Commands:
mask: inabainisha mask ambayo inatumika kuchuja faili ndani ya saraka (e.g. "" kwa faili zote)
recurse: inabadilisha recursion kuwa juu (default: off)
prompt: inabadilisha kuomba majina ya faili kuwa mbali (default: on)
mget: inakopi faili zote zinazolingana na mask kutoka mwenyeji hadi mashine ya mteja
(Information from the manpage of smbclient)
Domain Shared Folders Search
Snaffler****
CrackMapExec kupeleleza.
-M spider_plus [--share <share_name>]
--pattern txt
Specially interesting from shares are the files called Registry.xml
as they may contain passwords for users configured with autologon via Group Policy. Or web.config
files as they contains credentials.
The SYSVOL share is readable by all authenticated users in the domain. In there you may find many different batch, VBScript, and PowerShell scripts. You should check the scripts inside of it as you might find sensitive info such as passwords.
Soma Registry
You may be able to read the registry using some discovered credentials. Impacket reg.py
allows you to try:
Post Exploitation
The default config of a Samba server is usually located in /etc/samba/smb.conf
and might have some dangerous configs:
Setting | Description |
| Ruhusu orodha ya sehemu zinazopatikana katika sehemu ya sasa? |
| Kataza uundaji na mabadiliko ya faili? |
| Ruhusu watumiaji kuunda na kubadilisha faili? |
| Ruhusu kuungana na huduma bila kutumia nenosiri? |
| Heshimu mamlaka zilizotolewa kwa SID maalum? |
| Ni ruhusa gani zinapaswa kutolewa kwa faili mpya zilizoundwa? |
| Ni ruhusa gani zinapaswa kutolewa kwa directories mpya zilizoundwa? |
| Ni script gani inapaswa kutekelezwa wakati wa kuingia kwa mtumiaji? |
| Ni script ipi inapaswa kutekelezwa script inapofungwa? |
| Wapi matokeo ya script ya kichawi yanapaswa kuhifadhiwa? |
The command smbstatus
gives information about the server and about who is connected.
Authenticate using Kerberos
You can authenticate to kerberos using the tools smbclient and rpcclient:
Execute Commands
crackmapexec
crackmapexec inaweza kutekeleza amri kwa kutumia yoyote ya mmcexec, smbexec, atexec, wmiexec ambapo wmiexec ndiyo njia ya kawaida. Unaweza kuashiria chaguo unalopendelea kutumia kwa kutumia parameta --exec-method
:
Chaguo zote mbili zita unda huduma mpya (kwa kutumia \pipe\svcctl kupitia SMB) kwenye mashine ya mwathirika na kuitumia kutekeleza kitu (psexec it pakia faili la executable kwenye ADMIN$ share na smbexec itaanika cmd.exe/powershell.exe na kuweka katika hoja payload --file-less technique--). Maelezo zaidi kuhusu psexec na smbexec. Katika kali iko kwenye /usr/share/doc/python3-impacket/examples/
Using parameter-k
you can authenticate against kerberos instead of NTLM
wmiexec/dcomexec
Kufanya kazi kwa siri shell ya amri bila kugusa diski au kuendesha huduma mpya kwa kutumia DCOM kupitia port 135. Katika kali inapatikana kwenye /usr/share/doc/python3-impacket/examples/
Kutumia parameter-k
unaweza kujiandikisha dhidi ya kerberos badala ya NTLM
Tekeleza amri kupitia Mipango ya Kazi (ukitumia \pipe\atsvc kupitia SMB). Katika kali iko kwenye /usr/share/doc/python3-impacket/examples/
Impacket reference
https://www.hackingarticles.in/beginners-guide-to-impacket-tool-kit-part-1/
Bruteforce credentials za watumiaji
Hii haipendekezwi, unaweza kufunga akaunti ikiwa utaongeza majaribio yaliyoruhusiwa
SMB relay attack
Shambulio hili linatumia zana ya Responder kukamata vikao vya uthibitishaji vya SMB kwenye mtandao wa ndani, na kupeleka vikao hivyo kwa mashine lengwa. Ikiwa kikao cha uthibitishaji kinafanikiwa, kitaweka moja kwa moja kwenye shelly ya sistimu. Taarifa zaidi kuhusu shambulio hili hapa.
SMB-Trap
Maktaba ya Windows URLMon.dll inajaribu moja kwa moja kuthibitisha kwa mwenyeji wakati ukurasa unajaribu kufikia maudhui fulani kupitia SMB, kwa mfano: img src="\\10.10.10.10\path\image.jpg"
Hii inatokea na kazi:
URLDownloadToFile
URLDownloadToCache
URLOpenStream
URLOpenBlockingStream
Ambazo zinatumika na baadhi ya vivinjari na zana (kama Skype)
SMBTrap using MitMf
NTLM Theft
Kama ilivyo kwa SMB Trapping, kupanda faili zenye madhara kwenye mfumo wa lengwa (kupitia SMB, kwa mfano) kunaweza kusababisha jaribio la uthibitishaji wa SMB, kuruhusu hash ya NetNTLMv2 kukamatwa kwa zana kama Responder. Hash hiyo inaweza kisha kufichuliwa nje ya mtandao au kutumika katika shambulio la SMB relay.
HackTricks Automatic Commands
Last updated