<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.
**Usanidi wa papo hapo wa upimaji wa udhaifu & kupenyeza**. Tekeleza ukaguzi kamili kutoka mahali popote na zana & vipengele zaidi ya 20 vinavyoanzia uchunguzi hadi ripoti. Hatuchukui nafasi ya wapenyeza - tuna
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 kuona vichwa vya barua pepe.
Unaweza pia kupata barua pepe kutoka kwa seva ya SMTP ikijaribu **kutuma barua pepe kwa seva hiyo kwa anwani isiyopo** (kwa sababu seva itatuma barua pepe ya NDN kwa muhusika). 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 ikiwa anwani ya barua pepe ni sahihi kwenye seva ya barua pepe. Amri hii inaweza kutumiwa na wadukuzi kwa kuchunguza anwani za barua pepe zinazopatikana kwenye seva ya barua pepe. Kwa sababu ya hatari ya kufichua habari ya siri, VRFY mara nyingi imezimwa kwenye seva za barua pepe.
**Mipangilio inapatikana mara moja 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 - tunatengeneza zana za desturi, moduli za ugunduzi na uvamizi ili kuwapa muda wa kuchimba kwa kina, kufungua makompyuta, na kufurahi.
**Ripoti za Arifa ya Hali ya Usafirishaji**: Ikiwa unatuma **barua pepe** kwa shirika kwa **anwani isiyo halali**, shirika litakuarifu kuwa anwani ilikuwa batili kwa kutuma **barua kwako**. **Vichwa** vya barua pepe iliyorudishwa vitakuwa na **taarifa nyeti** inayowezekana (kama vile anwani ya IP ya huduma za barua pepe zilizoshirikiana na ripoti au habari za programu ya kupambana na virusi).
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:
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 kwenye [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**.\
**Sender Policy Framework** (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 msingi kama `-all` kwa IPs zote ambazo hazilingani na mbinu za awali. |
| 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 inayotatuliwa 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 nyuma iliyothibitishwa mbele), 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 SPF macro inatoa mechi ngumu zaidi kama vile kuuliza DNSBL. |
| 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 kutumike kifaa 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 kilichotajwa 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.**
* **`~`**: Inaonyesha SOFTFAIL, ikiwa kama eneo la kati kati kati ya NEUTRAL na FAIL. Barua pepe zinazokutana na matokeo haya kwa kawaida hukubaliwa lakini zinatambuliwa ipasavyo.
* **`-`**: Inaonyesha FAIL, ikipendekeza kuwa 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 **kukataliwa/kuashiriwa kama isiyoaminika moja kwa moja**.
Kuongeza 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 chagua 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 uwakilishi 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 niende nyuma kwenye kiwango kimoja na kuthibitisha 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 lenye rekodi ya A au MX.
>
> Maeneo yenye rekodi za A au MX za jumla pia yanapaswa kuwa na rekodi ya SPF ya jumla, ya aina: \* IN TXT "v=spf1 -all"
Wakati barua pepe zinatumwa, kuhakikisha hazitachukuliwa kama barua taka ni muhimu. Hii mara nyingi hufanikiwa kupitia matumizi ya **seva ya kituo cha kuhamisha ambayo inaaminika 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 ukitumia `nmap` ni:
Ikiwa unapata **kosa lolote unapotumia dkim python lib** kuchambua ufunguo, jisikie huru kutumia huu ufuatao.\
**TAARIFA**: Hii ni marekebisho ya haraka tu kufanya ukaguzi wa haraka katika hali ambapo kwa sababu fulani ufunguo binafsi 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 kutekeleza** wakati kwa mfano barua pepe 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 pepe 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.
**Mipangilio inapatikana mara moja kwa tathmini ya 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 pentest - tuna