<summary><strong>Jifunze kuhusu kudukua AWS kutoka sifuri hadi shujaa na</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)</strong></a><strong>!</strong></summary>
* Ikiwa unataka kuona **kampuni yako ikitangazwa kwenye HackTricks** au **kupakua HackTricks kwa PDF** Angalia [**MIPANGO YA KUJIUNGA**](https://github.com/sponsors/carlospolop)!
* Pata [**bidhaa rasmi za PEASS & HackTricks**](https://peass.creator-spring.com)
* Gundua [**Familia ya PEASS**](https://opensea.io/collection/the-peass-family), mkusanyiko wetu wa [**NFTs**](https://opensea.io/collection/the-peass-family) ya kipekee
* **Jiunge na** 💬 [**Kikundi cha Discord**](https://discord.gg/hRep4RUj7f) au [**kikundi cha telegram**](https://t.me/peass) au **tufuate** kwenye **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Shiriki mbinu zako za kudukua kwa kuwasilisha PRs kwa** [**HackTricks**](https://github.com/carlospolop/hacktricks) na [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repos za github.
**Mazingira yanayopatikana mara moja kwa upimaji wa udhaifu & kupenyeza**. Tekeleza ukaguzi kamili kutoka mahali popote na zana & vipengele zaidi ya 20 vinavyoanzia uchunguzi hadi ripoti. Hatuchukui nafasi ya wapenyeza - tunatengeneza zana za desturi, moduli za ugunduzi & uchimbaji ili kuwarudishia muda wa kuchimba kwa kina, kuvunja minyororo, na kufurahi.
**Itifaki ya Kutuma Barua Pepe Rahisi (SMTP)** ni itifaki inayotumiwa ndani ya seti ya TCP/IP kwa **kutuma na kupokea barua pepe**. Kutokana na vikwazo vyake katika kuweka foleni ya ujumbe kwa mpokeaji, SMTP mara nyingi hutumiwa pamoja na **POP3 au IMAP**. Itifaki hizi ziada huwezesha watumiaji kuhifadhi ujumbe kwenye sanduku la barua la seva na kudownload mara kwa mara.
Katika vitendo, ni kawaida kwa **programu za barua pepe** kutumia **SMTP kutuma barua pepe**, wakati zikitumia **POP3 au IMAP kuzipokea**. Kwenye mifumo inayotegemea Unix, **sendmail** inajulikana kama seva ya SMTP inayotumiwa sana kwa madhumuni ya barua pepe. Pakiti ya biashara inayojulikana kama Sendmail inajumuisha seva ya POP3. Zaidi ya hayo, **Microsoft Exchange** hutoa seva ya SMTP na inatoa chaguo la kujumuisha msaada wa POP3.
Ikiwa una fursa ya **kufanya mhanga kukutumia barua pepe** (kupitia fomu ya mawasiliano kwenye ukurasa wa wavuti kwa mfano), fanya hivyo kwa sababu **unaweza kujifunza kuhusu topolojia ya ndani** ya mhanga kwa kuangalia vichwa vya barua pepe.
Unaweza pia kupata barua pepe kutoka kwa seva ya SMTP ikijaribu **kupeleka barua pepe kwa seva hiyo kwa anwani isiyopo** (kwa sababu seva itampelekea mshambuliaji barua pepe ya NDN). Lakini, hakikisha unatuma barua pepe kutoka kwa anwani iliyoruhusiwa (angalia sera ya SPF) na kwamba unaweza kupokea ujumbe wa NDN.
Pia unapaswa kujaribu **kutuma maudhui tofauti kwa sababu unaweza kupata habari zaidi ya kuvutia** kwenye vichwa kama: `X-Virus-Scanned: by av.domain.com`\
Ikiwa server inaunga mkono NTLM auth (Windows) unaweza kupata taarifa nyeti (toleo). Taarifa zaidi [**hapa**](https://medium.com/@m8r0wn/internal-information-disclosure-using-hidden-ntlm-authentication-18de17675666).
VRFY ni amri ya SMTP ambayo inatumika kuthibitisha uwepo wa anwani ya barua pepe kwenye seva ya barua pepe. Amri hii inaweza kutumiwa na wadukuzi kwa kusudi la kukusanya habari kuhusu anwani za barua pepe zilizopo kwenye seva. Kwa sababu ya hatari ya kufichua habari ya siri, VRFY mara nyingi imezimwa kwenye seva za barua pepe ili kuzuia mashambulizi ya uchunguzi wa anwani za barua pepe.
Amri ya SMTP EXPN hutumiwa kufunua anwani za barua pepe zilizosajiliwa kwenye seva ya barua pepe. Kwa kawaida, seva nyingi za barua pepe zimezimisha amri hii kwa sababu inaweza kusababisha ufunuo wa habari ya siri kama majina ya watumiaji au anwani za barua pepe.
**Usanidi wa papo hapo kwa tathmini ya udhaifu na upenyezaji**. Tekeleza pentest kamili kutoka mahali popote na zana na vipengele zaidi ya 20 vinavyoanzia uchunguzi hadi ripoti. Hatuchukui nafasi ya wapimaji wa pentest - tuna
Udhaifu wa Udukuzi wa SMTP uliruhusu kukiuka ulinzi wote wa SMTP (angalia sehemu inayofuata kwa habari zaidi kuhusu ulinzi). Kwa habari zaidi kuhusu Udukuzi wa SMTP angalia:
## Hatua za Kupambana na Udanganyifu wa Barua pepe
Mashirika yanazuia kutumwa kwa barua pepe zisizoidhinishwa kwa niaba yao kwa kutumia **SPF**, **DKIM**, na **DMARC** kutokana na urahisi wa kudanganya ujumbe wa SMTP.
**Mwongozo kamili wa hatua hizi za kupambana** umetolewa kwa [https://seanthegeek.net/459/demystifying-dmarc/](https://seanthegeek.net/459/demystifying-dmarc/).
SPF [ilipitwa na wakati mwaka 2014](https://aws.amazon.com/premiumsupport/knowledge-center/route53-spf-record/). Hii inamaanisha badala ya kuunda **rekodi ya TXT** katika `_spf.domain.com` unaiunda katika `domain.com` ukitumia **sintaksia ile ile**.\
Zaidi ya hayo, ili kutumia tena rekodi za SPF za awali ni kawaida kukuta kitu kama `"v=spf1 include:_spf.google.com ~all"`
**Mfumo wa Sera ya Mtumaji** (SPF) ni mbinu inayowezesha Mawakala wa Uhamishaji wa Barua (MTAs) kuthibitisha ikiwa mwenyeji anayetuma barua pepe ameidhinishwa kwa kuuliza orodha ya seva za barua pepe zilizoidhinishwa zilizoelezwa na mashirika. Orodha hii, ambayo inaeleza anwani za IP/vikoa, na miili mingine **iliyoidhinishwa kutuma barua pepe kwa niaba ya jina la kikoa**, inajumuisha "**Mbinu**" mbalimbali katika rekodi ya SPF.
| ALL | Inalingana daima; hutumiwa kwa matokeo ya chaguo-msingi kama `-all` kwa IP zote ambazo hazijalingana na mbinu zilizotangulia. |
| A | Ikiwa jina la kikoa lina rekodi ya anwani (A au AAAA) ambayo inaweza kutatuliwa kwa anwani ya mtumaji, italingana. |
| IP4 | Ikiwa mtumaji yuko katika safu ya anwani ya IPv4 iliyotolewa, italingana. |
| IP6 | Ikiwa mtumaji yuko katika safu ya anwani ya IPv6 iliyotolewa, italingana. |
| MX | Ikiwa jina la kikoa lina rekodi ya MX inayotatua kwa anwani ya mtumaji, italingana (yaani, barua pepe inatoka kwa moja ya seva za barua pepe zinazoingia za kikoa). |
| PTR | Ikiwa jina la kikoa (rekodi ya PTR) kwa anwani ya mteja iko katika kikoa kilichotolewa na jina hilo la kikoa linatatuliwa kwa anwani ya mteja (DNS ya kurudisha mbele-ithibitishwa), italingana. Mbinu hii haipendekezwi na inapaswa kuepukwa, ikiwezekana. |
| EXISTS | Ikiwa jina la kikoa lililotolewa linatatuliwa kwa anwani yoyote, italingana (bila kujali anwani inayotatuliwa). Hii hutumiwa mara chache. Pamoja na lugha ya macro ya SPF inatoa vilinganishi vya kina zaidi kama kufanya kazi na DNSBL-queries. |
| INCLUDE | Inahusisha sera ya kikoa kingine. Ikiwa sera ya kikoa hicho inapita, mbinu hii inapita. Walakini, ikiwa sera iliyohusishwa inashindwa, usindikaji unaendelea. Ili kumwachia kabisa sera ya kikoa kingine, lazima itumike kipanuzi cha kuhamisha. |
| REDIRECT | <p>Kuhamisha ni kiashiria kwa jina lingine la kikoa ambalo lina sera ya SPF, inaruhusu vikoa vingi kushiriki sera moja ya SPF. Ni muhimu wakati unafanya kazi na idadi kubwa ya vikoa vinavyoshiriki miundombinu sawa ya barua pepe.</p><p>Sera ya SPF ya kikoa kilichoonyeshwa katika Mbinu ya kuhamisha itatumika.</p> |
Pia ni rahisi kutambua **Viashiria** vinavyoonyesha **nini cha kufanya ikiwa mbinu inalingana**. Kwa kawaida, **viashiria "+"** hutumiwa (hivyo ikiwa mbinu yoyote inalingana, hii inamaanisha imeidhinishwa).\
Kawaida utaona **mwishoni mwa kila sera ya SPF** kitu kama: **\~all** au **-all**. Hii hutumiwa kuonyesha kwamba **ikiwa mtumaji halingani na sera yoyote ya SPF, unapaswa kuiweka barua pepe kama isiyoaminika (\~) au kukataa (-) barua pepe hiyo.**
* **`+`**: Inalingana na matokeo ya PASS. Kwa chaguo-msingi, mbinu huchukulia viashiria hivi, ikifanya `+mx` kuwa sawa na `mx`.
* **`?`**: Inawakilisha matokeo ya NEUTRAL, ikishughulikiwa kwa njia sawa na NONE (hakuna sera maalum).
* **`~`**: Inaonyesha SOFTFAIL, ikiwa kama eneo la kati kati kati ya NEUTRAL na FAIL. Barua pepe zinazokutana na matokeo haya kawaida hukubaliwa lakini zinatambuliwa ipasavyo.
* **`-`**: Inaonyesha FAIL, ikipendekeza kwamba barua pepe inapaswa kukataliwa moja kwa moja.
Katika mfano ujao, **sera ya SPF ya google.com** inaonyeshwa. Tafadhali kumbuka uingizaji wa sera za SPF kutoka vikoa tofauti ndani ya sera ya SPF ya kwanza:
Kihistoria ilikuwa inawezekana kughushi jina lolote la kikoa ambalo halikuwa na rekodi sahihi/au yoyote ya SPF. **Leo hii**, ikiwa **barua pepe** inatoka kwa **kikoa bila rekodi sahihi ya SPF**, inaweza kuwa **imekataliwa/kuashiriwa kama isiyoaminika kiotomatiki**.
Kutathmini SPF ya kikoa unaweza kutumia zana za mtandaoni kama: [https://www.kitterman.com/spf/validate.html](https://www.kitterman.com/spf/validate.html)
DKIM hutumiwa kusaini barua pepe za kutoka, kuruhusu uthibitisho wao na Wajumbe wa Uhamishaji wa Barua (MTAs) kupitia upatikanaji wa ufunguo wa umma wa kikoa kutoka kwa DNS. Ufunguo huu wa umma uko kwenye rekodi ya TXT ya kikoa. Ili kupata ufunguo huu, mtu lazima ajue chaguzi zote mbili, yaani chaguzi na jina la kikoa.
Kwa mfano, ili kuomba ufunguo, jina la kikoa na chaguzi ni muhimu. Hizi zinaweza kupatikana kwenye kichwa cha barua pepe `DKIM-Signature`, k.m., `d=gmail.com;s=20120113`.
DMARC inaboresha usalama wa barua pepe kwa kujenga kwenye itifaki za SPF na DKIM. Inaelezea sera zinazoongoza seva za barua pepe katika kushughulikia barua pepe kutoka kwenye kikoa maalum, ikiwa ni pamoja na jinsi ya kushughulikia makosa ya uthibitisho na wapi kutuma ripoti kuhusu hatua za usindikaji wa barua pepe.
> Ikiwa napokea barua pepe kutoka pielovers.demon.co.uk, na hakuna data ya SPF kwa pielovers, je, nifuate nyuma na kujaribu SPF kwa demon.co.uk? Hapana. Kila subdomain kwa Demon ni mteja tofauti, na kila mteja anaweza kuwa na sera yake mwenyewe. Isingekuwa na maana kwa sera ya Demon kutumika kwa wateja wake wote kwa chaguo-msingi; ikiwa Demon anataka kufanya hivyo, inaweza kuweka rekodi za SPF kwa kila subdomain.
> Kwa hivyo ushauri kwa wachapishaji wa SPF ni huu: unapaswa kuongeza rekodi ya SPF kwa kila subdomain au jina la mwenyeji ambalo lina rekodi ya A au MX.
Wakati barua pepe zinatumwa, kuhakikisha hazitambuliki kama barua taka ni muhimu. Hii mara nyingi hufanikiwa kupitia matumizi ya **seva ya kituo cha kuhamisha inayotegemewa na mpokeaji**. Walakini, changamoto kuu ni kwamba wasimamizi wanaweza kutokuwa na ufahamu kamili wa ni **vipimo vya IP salama kuruhusu**. Ukosefu huu wa ufahamu unaweza kusababisha makosa katika kuweka seva ya SMTP, hatari ambayo mara nyingi hufahamishwa katika tathmini za usalama.
Mbinu ambayo baadhi ya wasimamizi hutumia kuepuka matatizo ya utoaji wa barua pepe, haswa kuhusu mawasiliano na wateja watarajiwa au wanaoendelea, ni **kuruhusu mawasiliano kutoka kwa anwani yoyote ya IP**. Hii hufanywa kwa kusanidi parameter ya `mynetworks` ya seva ya SMTP kukubali anwani zote za IP, kama inavyoonekana hapa chini:
Kwa kuchunguza ikiwa seva ya barua pepe ni kituo cha wazi (ambayo inamaanisha inaweza kusambaza barua pepe kutoka kwa chanzo chochote kigeni), zana ya `nmap` hutumiwa kawaida. Inajumuisha script maalum iliyoundwa kwa kusudi hili. Amri ya kufanya uchunguzi wa kina kwenye seva (kwa mfano, na IP 10.10.10.10) kwenye bandari 25 kutumia `nmap` ni:
Ikiwa unapata **kosa lolote unapotumia dkim python lib** kuchambua ufunguo, tafadhali tumia huu ufuatao.\
**TAHADHARI**: Hii ni marekebisho ya haraka tu kufanya ukaguzi wa haraka katika hali ambapo kwa sababu fulani ufunguo wa kibinafsi wa openssl **hauwezi kuchambuliwa na dkim**.
## The receiver won't be able to check it, but the email will appear as signed (and therefore, more trusted)
dkim_selector="s1"
sig = dkim.sign(message=msg_data,selector=str(dkim_selector).encode(),domain=sender_domain.encode(),privkey=dkim_private_key.encode(),include_headers=headers)
Kawaida, ikiwa imewekwa, katika `/etc/postfix/master.cf` ina **maandishi ya kutekelezwa** wakati kwa mfano barua mpya inapopokelewa na mtumiaji. Kwa mfano, mstari `flags=Rq user=mark argv=/etc/postfix/filtering-f ${sender} -- ${recipient}` inamaanisha kwamba `/etc/postfix/filtering` itatekelezwa ikiwa barua mpya inapokelewa na mtumiaji mark.
SMTP (Simple Mail Transfer Protocol) is a TCP/IP protocol used in sending and receiving e-mail. However, since it is limited in its ability to queue messages at the receiving end, it is usually used with one of two other protocols, POP3 or IMAP, that let the user save messages in a server mailbox and download them periodically from the server.
**Usanidi wa haraka wa kupima udhaifu na upenyezaji**. Tekeleza pentest kamili kutoka popote ukiwa na zana na vipengele zaidi ya 20 vinavyoanzia uchunguzi hadi ripoti. Hatuchukui nafasi ya wapimaji wa udhaifu - tunaendeleza zana za desturi, moduli za ugunduzi na unyonyaji ili kuwapa muda wa kuchimba kwa kina, kufungua makasha, na kufurahi.
<summary><strong>Jifunze kuhusu kudukua AWS kutoka sifuri hadi shujaa na</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (Mtaalamu wa Timu Nyekundu ya AWS ya HackTricks)</strong></a><strong>!</strong></summary>
* Ikiwa unataka kuona **kampuni yako ikitangazwa kwenye HackTricks** au **kupakua HackTricks kwa PDF** Angalia [**MIPANGO YA USAJILI**](https://github.com/sponsors/carlospolop)!
* Pata [**bidhaa rasmi za PEASS & HackTricks**](https://peass.creator-spring.com)
* Gundua [**Familia ya PEASS**](https://opensea.io/collection/the-peass-family), mkusanyiko wetu wa [**NFTs**](https://opensea.io/collection/the-peass-family) ya kipekee
* **Jiunge na** 💬 [**Kikundi cha Discord**](https://discord.gg/hRep4RUj7f) au kikundi cha [**telegram**](https://t.me/peass) au **tufuate** kwenye **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Shiriki mbinu zako za kudukua kwa kuwasilisha PRs kwa** [**HackTricks**](https://github.com/carlospolop/hacktricks) na [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.