Email indsprøjtning

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 12. februar 2021; checks kræver 2 redigeringer .

E-mail-injektion  er en angrebsteknik, der bruges til at udnytte mailservere og mailapplikationer, der konstruerer IMAP/SMTP-udtryk fra brugerinput, som ikke er korrekt valideret. Afhængigt af typen af ​​operatører, der bruges af angriberen, er der to typer injektioner: IMAP-injektion og SMTP-injektion .

IMAP / SMTP-injektioner giver adgang til en mailserver, der tidligere ikke var tilgængelig. I nogle tilfælde har disse interne systemer ikke det samme sikkerhedsniveau som resten af ​​infrastrukturen. På denne måde kan angribere opleve, at mailserveren giver de bedste resultater med hensyn til udnyttelse. Denne metode undgår mulige begrænsninger, der kan eksistere på applikationsniveau ( CAPTCHA , maksimalt antal hits osv.).

Den typiske struktur for en IMAP/SMTP-injektion er som følger:

Header: slutningen af ​​forventet kommando Body: indsprøjtning af nye kommandoer Sidefod: start af forventet kommando

Det er vigtigt at bemærke, at for at IMAP/SMTP-kommandoerne kan udføres, skal de tidligere kommandoer være afsluttet med CRLF-sekvensen (%0d%0a).

Nogle eksempler på angreb ved hjælp af IMAP/SMTP-injektionsteknikken er:

Eksempler på angrebsscenarier

IMAP-injektion Fordi injektionen finder sted på en IMAP-server, skal formatet og specifikationerne for denne protokol respekteres. Mail-applikationer interagerer normalt med IMAP-serveren for at udføre deres funktioner i de fleste tilfælde og er derfor mere sårbare over for denne type angreb.

Lad os se på et eksempel på en IMAP-injektion ved hjælp af meddelelseslæsningsfunktionen. Antag, at en applikation bruger webmailparameteren "message_id" til at gemme id'et for de beskeder, som brugeren ønsker at læse. Når en anmodning indeholdende et meddelelses-id sendes, vil det se sådan ud:

http://<webmail>/read_email.php? message_id = <nummer>

Lad os antage, at php-scriptet "read_email.php", der er ansvarlig for at vise den meddelelse, der er knyttet til det, sender en anmodning til IMAP-serveren uden at udføre nogen kontrol på <number>-værdien angivet af brugeren. Kommandoen sendt til mailserveren ser sådan ud:

FETCH <number> BODY[HEADER]

På grund af dette kunne en angriber forsøge et IMAP-injektionsangreb gennem parameteren "message_id" brugt af applikationen til at kommunikere med serveren. For eksempel kan IMAP-kommandoen "CAPABILITY" indtastes ved at bruge følgende sekvens:

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

Dette vil udstede følgende sekvens af IMAP-kommandoer på serveren:

???? HENT 1 BODY[HEADER] V001 FUNKTION V002 FETCH 1 BODY[HEADER]

hvor:

Overskrift = 1 BODY[HEADER] Brødtekst = %0d%0aV100 KAPABILITET%0d%0a Sidefod = V101 FETCH 1

SMTP-injektion Fordi kommandoinjektion udføres under en SMTP-server, skal formatet og specifikationerne for denne protokol respekteres. På grund af begrænsningen af ​​driften af ​​applikationer, der bruger SMTP-protokollen, er vi hovedsageligt begrænset til at sende e-mail. Brugen af ​​SMTP-injektion kræver, at brugeren er autentificeret inden, så det er nødvendigt, at angriberen har en gyldig webmail.

Antag, at et e-mail-program begrænser antallet af e-mails, der sendes i en valgt tidsperiode. SMTP-injektion vil give dig mulighed for at omgå denne begrænsning ved blot at tilføje RCPT-kommandoer som retninger, i den mængde, som angriberen ønsker:

POST http://<webmail>/compose.php HTTP/1.1 ----------------------------134475172700422922879687252 Indhold-Disposition: form-data; navn = "emne" prøve . MAIL FRA: ekstern@domæne1.com RCPT TIL: [email protected] RCPT TIL: [email protected] RCPT TIL: [email protected] RCPT TIL: [email protected] Data Dette er et eksempel på SMTP-injektionsangreb . ----------------------------134475172700422922879687252 ...

Dette vil generere følgende sekvens af SMTP-kommandoer, der sendes til mailserveren:

MAIL FRA: <mailfrom> RCPT TIL: <rcptto> DATA Emne: test . MAIL FRA: eksternt@domæne.com RCPT TIL: [email protected] RCPT TIL: [email protected] RCPT TIL: [email protected] RCPT TIL: [email protected] DATA Dette er et eksempel på SMTP-injektionsangreb . ...

Links