Tarpit (nätverk)

En tarpit är en tjänst på ett datorsystem (vanligtvis en server ) som avsiktligt fördröjer inkommande anslutningar. Tekniken utvecklades som ett försvar mot en datormask och tanken är att nätverksmissbruk som spam eller bredskanning är mindre effektiva och därför mindre attraktiva om de tar för lång tid. Konceptet är analogt med en tjärgrop , där djur kan fastna och sakta sjunka under ytan, som i ett träsk .

Den ursprungliga tarpit-idén

Tom Liston utvecklade det ursprungliga tarpittingprogrammet LaBrea . Det kan skydda ett helt nätverk med en tarpitkörning på en enda maskin.

Maskinen lyssnar efter adressupplösningsprotokollförfrågningar som förblir obesvarade (indikerar oanvända adresser), svarar sedan på dessa förfrågningar, tar emot det initiala SYN-paketet från skannern och skickar ett SYN/ACK som svar. Den öppnar inte ett uttag eller förbereder en anslutning, i själva verket kan den glömma allt om anslutningen efter att ha skickat SYN/ACK. Fjärrplatsen skickar dock sitt ACK (som ignoreras) och tror att 3-vägshandskakningen är komplett. Sedan börjar den skicka data, som aldrig når en destination. Anslutningen kommer att ta slut efter ett tag, men eftersom systemet tror att det har att göra med en live (etablerad) anslutning, är det konservativt när det gäller tidsgränsen och kommer istället att försöka återsända, backa, återsända, etc. under ganska lång tid. medan.

Senare versioner av LaBrea lade också till funktionalitet för att svara på inkommande data, återigen med hjälp av obearbetade IP-paket och inga sockets eller andra resurser på tarpitservern, med falska paket som begär att den sändande webbplatsen "bromsar ner". Detta kommer att hålla anslutningen etablerad och slösa ännu mer tid på skannern.

SMTP tarpits

En av de möjliga vägarna som ansågs bekämpa bulk-spam vid en tidpunkt var att kräva en liten avgift för varje inskickad post. Genom att införa sådana konstgjorda kostnader, med försumbar inverkan på legitim användning så länge avgiften är tillräckligt låg, skulle automatiserad massskalig skräppost omedelbart bli oattraktiv. Tarpitting skulle kunna ses som ett liknande (men tekniskt sett mycket mindre komplext) tillvägagångssätt, där kostnaden för spammaren skulle mätas i termer av tid och effektivitet snarare än pengar.

Autentiseringsprocedurer ökar svarstiderna när användare försöker ogiltiga lösenord. SMTP-autentisering är inget undantag. Server-till-server SMTP-överföringar, vilket är där skräppost injiceras, kräver dock ingen autentisering. Olika metoder har diskuterats och implementerats för SMTP-tarpits, system som kopplas in i Mail Transfer Agent (MTA, dvs. e-postserverns mjukvara) eller sitter framför den som proxy.

En metod ökar överföringstiden för alla e-postmeddelanden med några sekunder genom att fördröja det initiala hälsningsmeddelandet ("greet delay"). Tanken är att det inte spelar någon roll om ett legitimt mail tar lite längre tid att leverera, men på grund av den höga volymen kommer det att göra skillnad för spammare. Nackdelen med detta är att e-postlistor och andra legitima massutskick måste vitlistas explicit , annars kommer de att drabbas också.

Vissa e-postsystem, som sendmail 8.13+, implementerar en starkare form av hälsningsfördröjning. Det här formuläret pausas när anslutningen upprättas och lyssnar efter trafik. Om den upptäcker någon trafik före sin egen hälsning (i strid med RFC 2821) stänger den anslutningen. Eftersom många spammare inte skriver sina SMTP-implementationer enligt specifikationen kan detta minska antalet inkommande skräppostmeddelanden.

En annan metod är att fördröja endast kända spammare, t.ex. genom att använda en svartlista (se Spamming , DNSBL ). OpenBSD har integrerat denna metod i deras kärnsystem sedan OpenBSD 3.3, med en specialdemon ( spamd ) och funktionalitet i brandväggen ( pf ) för att omdirigera kända spammare till denna tarpit.

MS Exchange kan tarpitera avsändare som skickar till en ogiltig adress. Exchange kan göra detta eftersom SMTP-anslutningen är ansluten till autentiseringssystemet.

En mer subtil idé är grålistning , som enkelt uttryckt avvisar det första anslutningsförsöket från en tidigare osynlig IP-adress. Antagandet är att de flesta spammare bara gör ett anslutningsförsök (eller några försök under en kort tidsperiod) för att skicka varje meddelande, medan legitima e-postleveranssystem kommer att fortsätta att försöka igen under en längre period. När de har försökt igen kommer de så småningom att släppas in utan några ytterligare hinder.

Slutligen, en mer utarbetad metod försöker limma ihop tarpits och filtreringsprogram, genom att filtrera e-post i realtid, medan den sänds, och lägga till förseningar i kommunikationen som svar på filtrets "spam likeliness"-indikator. Till exempel skulle spamfiltret göra en "gissning" efter varje rad eller efter varje x byte som tas emot om hur sannolikt detta meddelande kommer att vara skräppost. Ju mer sannolikt detta är, desto mer kommer MTA att fördröja överföringen.

Bakgrund

SMTP består av förfrågningar, som mestadels är fyra bokstäver, såsom MAIL, och svar, som är (minst) tresiffriga siffror. På den sista raden i svaret följs numret av ett mellanslag; på de föregående raderna följs det av ett bindestreck. När man fastställer att ett meddelande som försöker skickas är skräppost, kan en e-postserver svara:

 451-Ophiomyia prima är en agromyzidfluga 451-Ophiomyia secunda är en agromyzidfluga 451-Ophiomyia tertia är en agromyzidfluga 451-Ophiomyia quarta är en agromyzidfluga 451-Ophiomyia quinta är en agromyzidfluga 451-Ophiomyia quinta är en agromyzidfluga d flyga 451- Ophiomyia septima är en agromyzidfluga 451 Din IP-adress är listad i  DNSBL  . Vänligen försök igen senare.  

Tarpiten väntar femton eller fler sekunder mellan raderna (långa fördröjningar är tillåtna i SMTP, eftersom människor ibland skickar e-post manuellt för att testa e-postservrar). Detta binder upp SMTP-sändningsprocessen på spammarens dator för att begränsa mängden skräppost den kan skicka.

Tarpits på IP-nivå

Linux-kärnan kan nu korrigeras för att tillåta tarpittering av inkommande anslutningar istället för den mer vanliga släppningen av paket. Detta implementeras i iptables genom tillägg av ett TARPIT-mål. Samma paketinspektions- och matchningsfunktioner kan tillämpas på tarpitmål som tillämpas på andra mål.

Tarpits på blandad SMTP-IP-nivå

En server kan avgöra att ett givet e-postmeddelande är skräppost, t.ex. för att det var adresserat till en skräppostfälla eller efter betrodda användares rapporter. Servern kan besluta att IP-adressen som är ansvarig för att skicka meddelandet förtjänar tarpitering. Korskontroll mot tillgängliga DNSBL:er kan hjälpa till att undvika att inkludera oskyldiga speditörer i tarpitdatabasen. En demon som utnyttjar Linux libipq kan sedan kontrollera fjärradressen för inkommande SMTP-anslutningar mot den databasen. SpamCannibal är en GPL-programvara designad kring denna idé; Stockade är ett liknande projekt implementerat med FreeBSD ipfirewall .

En fördel med tarpitting på IP-nivå är att vanliga TCP-anslutningar som hanteras av en MTA är stateful . Det vill säga, även om MTA:n inte använder mycket CPU medan den sover, använder den fortfarande den mängd minne som krävs för att hålla statusen för varje anslutning. På motsatsen är tarpitting i LaBrea-stil statslös , vilket får fördelen av en reducerad kostnad mot spammarens box. Det måste dock noteras att genom att använda botnät kan spammare externisera det mesta av sina kostnader för datorresurser.

Kritik

Det är känt att en tarpiterad anslutning kan generera en betydande mängd trafik mot mottagaren, eftersom avsändaren anser att anslutningen är etablerad och försöker skicka (och sedan återsända) faktiska data. I praktiken, med tanke på nuvarande genomsnittliga datorbotnätsstorlek, kommer en rimligare lösning att vara att släppa misstänkt trafik helt, utan tarpitering. På så sätt kommer endast TCP SYN-segment att återsändas, inte hela HTTP- eller HTTPS-förfrågningarna.

Kommersiella implementeringar av tjärgropar

Förutom MS Exchange har det funnits två andra framgångsrika kommersiella implementeringar av tar pit-idén. Den första utvecklades av TurnTide , ett Philadelphia-baserat startup-företag, som förvärvades av Symantec 2004 för 28 miljoner dollar i kontanter. TurnTide Anti Spam Router innehåller en modifierad Linux- kärna som gör att den kan spela olika tricks med TCP- trafik, som att variera storleken på TCP -fönstret. Genom att gruppera olika e-postavsändare i olika trafikklasser och begränsa bandbredden för varje klass, minskas mängden otillåten trafik - särskilt när den otillåtna trafiken kommer från enstaka källor som lätt kan identifieras av deras höga trafikvolym.

Efter förvärvet av Symantec släppte ett kanadensiskt startup-företag som heter MailChannels sin programvara "Traffic Control", som använder ett lite annorlunda tillvägagångssätt för att uppnå liknande resultat. Traffic Control är en semi-realtids- SMTP-proxy . Till skillnad från TurnTide-apparaten, som tillämpar trafikformning i nätverkslagret, tillämpar Traffic Control trafikformning på enskilda avsändare i programlagret. Detta tillvägagångssätt resulterar i en något effektivare hantering av skräpposttrafik som härrör från botnät eftersom det tillåter programvaran att bromsa trafiken från enskilda skräppostzombies, snarare än att kräva att zombietrafiken ska samlas i en klass.

Se även

  1. ^ Tom Liston pratar om LaBrea
  2. ^ Spamds man-sida
  3. ^ http://xtables-addons.sf.net/ [ död länk ]
  4. ^ http://www.spamcannibal.org/ [ död länk ]
  5. ^ Sebastian, Walla (2019). "MALPITY: Automatisk identifiering och utnyttjande av Tarpit Vulnerabilities in Malware". IEEE European Symposium on Security and Privacy (EuroS&P) Security and Privacy (EuroS&P) : 590–605.
  6. ^ "Symantec snappar upp antispamföretaget - CNET News" . Arkiverad från originalet den 16 juli 2012.