Learn & practice AWS Hacking:<imgsrc="/.gitbook/assets/arte.png"alt=""data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<imgsrc="/.gitbook/assets/arte.png"alt=""data-size="line">\
Learn & practice GCP Hacking: <imgsrc="/.gitbook/assets/grte.png"alt=""data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<imgsrc="/.gitbook/assets/grte.png"alt=""data-size="line">](https://training.hacktricks.xyz/courses/grte)
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
Die _**Network Basic Input Output System**_** (NetBIOS)** is 'n sagtewareprotokol wat ontwerp is om toepassings, rekenaars en werkstasies binne 'n plaaslike area netwerk (LAN) in staat te stel om met netwerkhardeware te kommunikeer en **die oordrag van data oor die netwerk te fasiliteer**. Die identifikasie en ligging van sagtewaretoepassings wat op 'n NetBIOS-netwerk werk, word bereik deur hul NetBIOS-names, wat tot 16 karakters lank kan wees en dikwels verskillend is van die rekenaarnaam. 'n NetBIOS-sessie tussen twee toepassings word geinitieer wanneer een toepassing (wat as die kliënt optree) 'n opdrag gee om "te bel" na 'n ander toepassing (wat as die bediener optree) deur gebruik te maak van **TCP Port 139**.
Tegnies word Port 139 verwys as ‘NBT oor IP’, terwyl Port 445 geïdentifiseer word as ‘SMB oor IP’. Die akroniem **SMB** staan vir ‘**Server Message Blocks**’, wat ook modern bekend staan as die **Common Internet File System (CIFS)**. As 'n toepassingslaagnetwerkprotokol, word SMB/CIFS hoofsaaklik gebruik om gedeelde toegang tot lêers, drukkers, seriële poorte te fasiliteer, en verskeie vorme van kommunikasie tussen knooppunte op 'n netwerk te ondersteun.
Byvoorbeeld, in die konteks van Windows, word dit beklemtoon dat SMB direk oor TCP/IP kan werk, wat die noodsaaklikheid vir NetBIOS oor TCP/IP uitskakel, deur die gebruik van poort 445. Aan die ander kant, op verskillende stelsels, word die gebruik van poort 139 waargeneem, wat aandui dat SMB saam met NetBIOS oor TCP/IP uitgevoer word.
Die **Server Message Block (SMB)** protokol, wat in 'n **klient-bediener** model werk, is ontwerp om **toegang tot lêers**, gidse, en ander netwerkbronne soos drukkers en routers te reguleer. Primêr gebruik binne die **Windows** bedryfstelselreeks, verseker SMB terugwaartse kompatibiliteit, wat toestelle met nuwer weergawes van Microsoft se bedryfstelsel in staat stel om naatloos met dié wat ouer weergawes gebruik, te kommunikeer. Boonop bied die **Samba** projek 'n gratis sagtewareoplossing, wat SMB se implementering op **Linux** en Unix stelsels moontlik maak, en sodoende kruisplatformkommunikasie deur SMB fasiliteer.
Aandele, wat **arbitraire dele van die plaaslike lêerstelsel** verteenwoordig, kan deur 'n SMB-bediener verskaf word, wat die hiërargie gedeeltelik **onafhanklik** van die bediener se werklike struktuur sigbaar maak aan 'n kliënt. Die **Access Control Lists (ACLs)**, wat **toegangsregte** definieer, stel **fynbeheer** oor gebruikersregte moontlik, insluitend eienskappe soos **`execute`**, **`read`**, en **`full access`**. Hierdie regte kan aan individuele gebruikers of groepe toegeken word, gebaseer op die aandele, en is onderskeibaar van die plaaslike regte wat op die bediener gestel is.
Toegang tot die IPC$ aandele kan verkry word deur 'n anonieme nul sessie, wat interaksie met dienste wat via benoemde pype blootgestel word, moontlik maak. Die nut `enum4linux` is nuttig vir hierdie doel. Indien korrek gebruik, stel dit die verkryging van:
Hierdie funksionaliteit is krities vir netwerkadministrateurs en sekuriteitsprofessionals om die sekuriteitsposisie van SMB (Server Message Block) dienste op 'n netwerk te evalueer. `enum4linux` bied 'n omvattende oorsig van die teikenstelsel se SMB omgewing, wat noodsaaklik is om potensiële kwesbaarhede te identifiseer en te verseker dat die SMB dienste behoorlik beveilig is.
Die bogenoemde opdrag is 'n voorbeeld van hoe `enum4linux` gebruik kan word om 'n volledige enumerasie teen 'n teiken gespesifiseer deur `target_ip` uit te voer.
As jy nie weet wat NTLM is of jy wil weet hoe dit werk en hoe om dit te misbruik nie, sal jy hierdie bladsy oor **NTLM** baie interessant vind waar verduidelik word **hoe hierdie protokol werk en hoe jy daarvan kan voordeel trek:**
Om te soek na moontlike exploits vir die SMB weergawe, is dit belangrik om te weet watter weergawe gebruik word. As hierdie inligting nie in ander gebruikte gereedskap verskyn nie, kan jy:
Dit word altyd aanbeveel om te kyk of jy toegang tot enigiets kan kry, as jy nie inligting het nie, probeer om **null****inligting/gaste gebruiker** te gebruik.
Dit mag dalk moontlik wees dat jy beperk is om enige dele van die gasheer masjien te vertoon en wanneer jy probeer om hulle op te lys, lyk dit asof daar geen dele is om mee te verbind nie. Dit mag dus die moeite werd wees om te probeer om handmatig met 'n deel te verbind. Om die dele handmatig te lys, wil jy dalk soek na antwoorde soos NT\_STATUS\_ACCESS\_DENIED en NT\_STATUS\_BAD\_NETWORK\_NAME, wanneer jy 'n geldige sessie gebruik (bv. null session of geldige geloofsbriewe). Hierdie mag aandui of die deel bestaan en jy nie toegang daartoe het nie of die deel glad nie bestaan nie.
Spesifiek interessant van gedeeltes is die lêers genoem **`Registry.xml`** aangesien hulle **miskien wagwoorde** bevat vir gebruikers wat met **autologon** via Groepbeleid gekonfigureer is. Of **`web.config`** lêers aangesien hulle akrediteer.
Die **SYSVOL-gedeelte** is **leesbaar** deur alle geverifieerde gebruikers in die domein. Daar kan jy **baie** verskillende batch, VBScript, en PowerShell **scripts****vind**.\
Jy moet die **scripts** daarin **kontroleer** aangesien jy **sensitiewe** inligting soos **wagwoorde** mag **vind**.
crackmapexec kan opdragte uitvoer **deur** enige van **mmcexec, smbexec, atexec, wmiexec** met **wmiexec** as die **standaard** metode. Jy kan aandui watter opsie jy verkies om te gebruik met die parameter `--exec-method`:
Albei opsies sal **nuwe diens skep** (met _\pipe\svcctl_ via SMB) op die slagoffer masjien en dit gebruik om **iets uit te voer** (**psexec** sal **oplaai** 'n uitvoerbare lêer na ADMIN$ deel en **smbexec** sal na **cmd.exe/powershell.exe** wys en die argumente die payload --**file-less technique-**- insit).\
**Meer inligting** oor [**psexec** ](../windows-hardening/ntlm/psexec-and-winexec.md)en [**smbexec**](../windows-hardening/ntlm/smbexec.md).\
Hierdie aanval gebruik die Responder toolkit om **SMB-authentikasiesessies** op 'n interne netwerk te **vang**, en **oor te dra** na 'n **teikenmasjien**. As die authentikasie **sessie suksesvol is**, sal dit jou outomaties in 'n **stelsel****skulp** laat val.\
[**Meer inligting oor hierdie aanval hier.**](../generic-methodologies-and-resources/pentesting-network/spoofing-llmnr-nbt-ns-mdns-dns-and-wpad-and-relay-attacks.md)
Die Windows biblioteek URLMon.dll probeer outomaties om te autentiseer met die gasheer wanneer 'n bladsy probeer om toegang te verkry tot 'n paar inhoud via SMB, byvoorbeeld: `img src="\\10.10.10.10\path\image.jpg"`
Soos SMB Trapping, kan die plant van kwaadwillige lêers op 'n teikenstelsel (via SMB, byvoorbeeld) 'n SMB-authentikasiepoging uitlok, wat die NetNTLMv2-hash toelaat om met 'n hulpmiddel soos Responder onderskep te word. Die hash kan dan offline gekraak of in 'n [SMB relay aanval](pentesting-smb.md#smb-relay-attack) gebruik word.
While Port 139 is known technically as ‘NBT over IP’, Port 445 is ‘SMB over IP’. SMB stands for ‘Server Message Blocks’. Server Message Block in modern language is also known as Common Internet File System. The system operates as an application-layer network protocol primarily used for offering shared access to files, printers, serial ports, and other sorts of communications between nodes on a network.
#These are the commands I run in order every time I see an open SMB port
With No Creds
nbtscan {IP}
smbmap -H {IP}
smbmap -H {IP} -u null -p null
smbmap -H {IP} -u guest
smbclient -N -L //{IP}
smbclient -N //{IP}/ --option="client min protocol"=LANMAN1
* Kyk na die [**subskripsie planne**](https://github.com/sponsors/carlospolop)!
* **Sluit aan by die** 💬 [**Discord groep**](https://discord.gg/hRep4RUj7f) of die [**telegram groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Deel hacking truuks deur PRs in te dien na die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.