E-mail injekció

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2021. február 12-én felülvizsgált verziótól ; az ellenőrzések 2 szerkesztést igényelnek .

Az e- mail beillesztés  egy támadási technika , amellyel kihasználják azokat a levelezőszervereket és levelezőalkalmazásokat, amelyek IMAP/SMTP-kifejezéseket hoznak létre a nem megfelelően érvényesített felhasználói bevitelből. A támadó által használt operátorok típusától függően kétféle injekció létezik: IMAP injekció és SMTP injekció .

Az IMAP / SMTP injekciók olyan levelezőszerverhez való hozzáférést tesznek lehetővé, amely korábban nem volt elérhető. Egyes esetekben ezek a belső rendszerek nem rendelkeznek olyan biztonsági szinttel, mint az infrastruktúra többi része. Ily módon a támadók azt tapasztalhatják, hogy a levelezőszerver adja a legjobb eredményeket a kihasználás szempontjából. Ez a módszer elkerüli az alkalmazás szintjén esetlegesen létező korlátozásokat ( CAPTCHA , maximális találatok száma stb.).

Az IMAP/SMTP injekció tipikus felépítése a következő:

Fejléc: a várt parancs vége Test: új parancsok beadása Lábléc: a várt parancs kezdete

Fontos megjegyezni, hogy az IMAP/SMTP parancsok végrehajtásához az előző parancsokat a CRLF (%0d%0a) szekvenciával kell lezárni.

Néhány példa az IMAP/SMTP injekciós technikát használó támadásokra:

Példák támadási forgatókönyvekre

IMAP-befecskendezés Mivel a beillesztés IMAP-kiszolgálón történik, ennek a protokollnak a formátumát és specifikációit tiszteletben kell tartani. A levelezőalkalmazások általában azért lépnek kapcsolatba az IMAP-kiszolgálóval, hogy a legtöbb esetben elláthassák funkcióikat, és ezért sebezhetőbbek az ilyen típusú támadásokkal szemben.

Nézzünk egy példát az üzenetolvasási funkciót használó IMAP-injektálásra. Tegyük fel, hogy egy alkalmazás a "message_id" webmail paramétert használja a felhasználó által elolvasni kívánt üzenetek azonosítójának tárolásához. Amikor üzenetazonosítót tartalmazó kérést küldenek, az így fog kinézni:

http://<webmail>/read_email.php? üzenetazonosító = <szám>

Tegyük fel, hogy a hozzá tartozó üzenet megjelenítéséért felelős "read_email.php" php szkript kérést küld az IMAP szervernek anélkül, hogy ellenőrizné a felhasználó által megadott <szám> értéket. A levelezőszervernek küldött parancs így fog kinézni:

FETCH <number> BODY[HEADER]

Emiatt a támadó megkísérelhet egy IMAP-injekciós támadást az alkalmazás által a szerverrel való kommunikációhoz használt "message_id" paraméteren keresztül. Például a "CAPABILITY" IMAP parancs a következő sorrendben adható meg:

http://<webmail>/read_email.php?message_id=1 BODY[HEADER]%0d%0aV001 KÉPESSÉG%0d%0aV002 FETCH 1

Ez a következő IMAP-parancsok sorozatát adja ki a kiszolgálón:

???? 1 BODY KERESÉS BE [FEJLÉJ] V001 KÉPESSÉG V002 FETCH 1 BODY[HEADER]

ahol:

Fejléc = 1 BODY[HEADER] Test = %0d%0aV100 KÉPESSÉG%0d%0a Lábléc = V101 FETCH 1

SMTP-injektálás Mivel a parancsinjektálás SMTP-kiszolgáló alatt történik, ennek a protokollnak a formátumát és specifikációit tiszteletben kell tartani. Az SMTP protokollt használó alkalmazások működési korlátai miatt elsősorban e-mail küldésre szorítkozunk. Az SMTP injekció használatához a felhasználót előzetesen hitelesíteni kell, ezért szükséges, hogy a támadó érvényes webmail-címmel rendelkezzen.

Tegyük fel, hogy egy e-mail alkalmazás korlátozza a kiválasztott időszakban elküldött e-mailek számát. Az SMTP injekció lehetővé teszi , hogy megkerülje ezt a korlátozást úgy, hogy egyszerűen RCPT-parancsokat ad hozzá útmutatásként, a támadó által kívánt mennyiségben:

POST http://<webmail>/compose.php HTTP/1.1 -----------------------------134475172700422922879687252 Tartalom-Dispozíció: forma-adat; name="tárgy" teszt . LEVELEZÉS: [email protected] RCPT TO: [email protected] RCPT TO: [email protected] RCPT TO: [email protected] RCPT TO: [email protected] Adat Ez egy példa az SMTP Injection támadásra . -----------------------------134475172700422922879687252 ...

Ez a következő SMTP-parancssorozatot generálja, amely elküldésre kerül a levelezőszervernek:

LEVÉL FÓL: <posta> RCPT TO: <rcptto> ADAT Tárgy: teszt . LEVELEK: [email protected] RCPT TO: [email protected] RCPT TO: [email protected] RCPT TO: [email protected] RCPT TO: [email protected] ADAT Ez egy példa az SMTP Injection támadásra . ...

Linkek