Hoppa till innehållet
Avanet

Skapa och testa egna IPS-signaturer på Sophos Firewall

En egen IPS-signatur är användbar när Sophos inte tillhandahåller en lämplig signatur för ett tydligt definierat nätverks- eller applikationsmönster. Den kan identifiera en känd klartextsträng, en ovanlig protokollegenskap eller en exakt kombination av port, riktning och payload.

Signaturen i sig skyddar ännu ingenting. Den måste användas i en IPS-policy, denna policy måste kopplas till brandväggsregeln som faktiskt matchar och dataflödet måste vara synligt för IPS. Ett för brett mönster kan blockera legitim trafik, medan ett för snävt mönster aldrig ger en träff.

Testa först en ny signatur med Allow packet och loggning i ett litet pilotflöde. Drop packet, Drop session, Reset och Bypass session ändrar produktionstrafik och ska användas först efter ett reproducerbart positivt och negativt test.

En kontrollerad pilot i sex steg

  1. Beskriv identifieringsfallet med protokoll, riktning, port och ett unikt mönster.
  2. Skapa en snäv signatur med Allow packet under Intrusion prevention > Custom IPS signatures.
  3. Lägg till signaturen i en egen regel i en IPS-policy som kan tas bort.
  4. Koppla denna IPS-policy endast till den avsedda pilotregeln och aktivera loggning.
  5. Skapa ett matchande och ett avsiktligt icke-matchande test och jämför Log Viewer, ips.log och regelmatchningen.
  6. Ange önskad åtgärd först efter stabil verifiering. Ta bort policykopplingen eller signaturen vid oväntade träffar.

En sparad post eller en godkänd syntaxkontroll är ännu inget funktionsbevis. Framgång innebär att det positiva testet träffar exakt den förväntade Custom Signature och brandväggsregeln, att det negativa testet inte ger någon träff och att produktionsapplikationen fungerar som tidigare.

När en egen signatur passar

Custom Signatures passar en stabil egenskap som är synlig på paket- eller strömnivå. Det kan vara ett eget protokollvärde, en tydlig exploitindikator eller ett tillfälligt skydd för en internt känd sårbarhet. Den förväntade datavägen och önskade reaktionen måste vara fastställda innan signaturen skrivs.

För föränderliga IP-adresser eller domäner är värdar, tjänster och grupper, threat feeds eller snäva brandväggsregler oftast bättre lämpade. En egen signatur ersätter inte heller patchhantering eller en väl underhållen leverantörsregel. Att utveckla en permanent signatur för en enstaka logghändelse är sällan proportionerligt.

Krypterad payload är en viktig gräns. IPS kan endast identifiera ett content-mönster i en HTTPS-payload om innehållet verkligen dekrypteras och är synligt för motorn i den valda bearbetningsvägen. Utan lämplig TLS Inspection är normalt endast okrypterade eller på annat sätt synliga egenskaper tillgängliga.

Kontrollera först licens och livscykel

Egna signaturer kan inte konfigureras om IPS-provlicensen har löpt ut eller om IPS Protection är avstängt under Intrusion prevention > IPS policies. Sophos rekommenderar att IPS aktiveras igen inom 30 dagar om befintliga Custom Signatures ska behållas. En backup eller export hör därför till återställningsplanen före licens-, IPS- eller större policyändringar.

IPS måste sedan vara globalt aktivt och brandväggsregeln som bearbetar trafiken behöver en IPS-policy. Den fullständiga grunden finns i Konfigurera och testa Sophos Firewall IPS säkert. En egen signatur kompletterar denna dataväg; den är inte en parallell skyddsmekanism.

Begränsa regelsyntaxen medvetet

Formuläret skiljer på Protocol och Custom rule. Regeln kombinerar enskilda nyckelord, deras värden och semikolon. Att kräva att flera oberoende egenskaper stämmer minskar normalt risken för oavsiktliga träffar. Samtidigt får signaturen inte bli så specifik att en ofarlig protokolländring gör den verkningslös.

För ett uteslutande kontrollerat klartexttest kan TCP väljas som protokoll och exempelvis detta snäva payloadmönster användas:

content:"AVANET-IPS-PILOT"; nocase;

AVANET-IPS-PILOT är ett avsiktligt tydligt dokumentationsvärde. Den tillhörande pilotregeln begränsas dessutom till testtjänsten, till exempel TCP-port 8080. Ersätt token, riktning och port med värden som förekommer i det verkliga dataflödet som IPS kan se. Exemplet är ingen universell attacksignatur och ska inte användas oförändrat i breda produktionsregler.

Payload och sökfönster

content söker efter en tecken- eller bytesekvens; binära värden placeras mellan lodräta streck. nocase ignorerar skiftläge vid en contentmatchning och rawbytes arbetar på rådata. depth och offset begränsar sökningen absolut i payloaden, medan distance och within arbetar relativt den föregående träffen. uricontent, isdataat och pcre täcker mer specialiserade URI-, positions- och reguljäruttrycksfall.

Ett snävt sökfönster minskar oavsiktliga träffar och bearbetningsbelastning. Särskilt pcre, stora fönster och flera breda contentmönster ska endast införas med realistiska paket och under observerad belastning. Om depth är kortare än det sökta contentmönstret kan signaturen aldrig matcha.

Paketfält, strömmar och strukturerade värden

Källa, destination och port kan begränsas med srcaddr, dstaddr, srcport och dstport. För IP-headers finns bland annat ttl, tos, id, ipopts, fragoffset, fragbits, dsize, ip_proto och samip. TCP-egenskaper beskrivs med flags, flow, seq, ack och window; itype, icode, icmp_id och icmp_seq gäller ICMP. rpc, byte_test och byte_jump är avsedda för strukturerade eller binära protokoll.

Den fullständiga SFOS 22-referensen för egen IPS-syntax är fortsatt styrande för komplexa regler. Odokumenterade Snort-nyckelord eller regler kopierade från andra motorer ska inte användas utan verifiering.

Skapa signaturen och koppla den till en policy

Under Intrusion prevention > Custom IPS signatures > Add anges Name, Protocol, Custom rule, Severity och Recommended action. Ett namn som PILOT-TCP-8080-AVANET-TOKEN visar syfte och testgräns. Severity beskriver den egna riskbedömningen; det bevisar inte att mönstret är skadligt.

För den första körningen ligger Recommended action kvar på Allow packet. De andra åtgärderna har betydligt större konsekvenser:

  • Drop packet kasserar endast det matchande paketet.
  • Drop session avslutar sessionen efter träffen.
  • Reset avslutar en TCP-session och skickar en reset till ursprunget.
  • Bypass session tillåter trafiken och slutar skanna resten av sessionen.

När inställningen sparas konfigurerar SFOS om IPS-motorn. Enligt Sophos sker det utan avbrott om det finns tillräckligt med ledigt RAM. Vid lite ledigt RAM kan motorn starta om och orsaka ett kort avbrott. Även en till synes liten signaturändring hör därför hemma i ett övervakat tidsfönster.

Därefter följer den ofta förbisedda andra delen: öppna en borttagbar policy avsedd för piloten under Intrusion prevention > IPS policies, lägg till en regel, välj Custom Signature och placera den specifika regeln ovanför bredare regler. Koppla sedan denna policy under Rules and policies > Firewall rules till pilotregeln som verkligen matchar.

Genomför ett positivt och ett negativt test

Det positiva testet skickar det överenskomna mönstret via avsedd port och i förväntad riktning. Registrera samtidigt Firewall Rule ID, IPS-policy, signaturnamn, källa, destination, åtgärd och tid i Log Viewer. ips.log ger ytterligare motordetaljer; Testa en brandväggsregel systematiskt förklarar sambandet mellan regel, Packet Capture och säkerhetsmodul.

Därefter följer minst ett negativt test: samma tjänst utan token, en annan port eller en avvikande riktning. Signaturen får då inte matcha. För ett contentmönster är även normala förfrågningar från applikationen viktiga, eftersom korta eller allmänna strängar kan förekomma i helt legitim payload.

Först när båda testerna är stabila ställs den planerade blockeringsåtgärden in och provas igen. En blockerande signatur är godkänd endast när exakt det positiva fallet stoppas, det negativa fallet fortsätter och ingen annan brandväggs- eller IPS-regel orsakar effekten.

Kontrollera antalet signaturer

Antalet kan tas fram i WebAdmin utan shell. Öppna en borttagbar policy under Intrusion prevention > IPS policies och lägg till en ny policyregel. Med Select all visar SFOS totalsumman ovanför Action. Listan syns endast när en regel läggs till i en borttagbar policy; stäng sedan dialogrutan utan att spara.

Sophos dokumenterar dessutom två skrivskyddade frågor i Advanced Shell:

psql -U nobody -d signature -p 5434 -c "select count (*) from tblidprules;"
psql -U nobody -d corporate -c "select count (*) from tblidpcustomsignature;"

Det första kommandot räknar standardsignaturer och det andra Custom Signatures. Databasfrågorna ändrar ingenting, men hör ändå hemma i en dokumenterad support- eller diagnossession. Antalet bevisar varken kvalitet eller funktion och kan ändras med patternuppdateringar.

När signaturen inte fungerar som väntat

Det finns ingen träff

Kontrollera först att IPS är aktivt, trafiken träffar den förväntade brandväggsregeln med rätt IPS-policy och Custom Signature verkligen finns i en utvärderad policyregel. Granska sedan protokoll, riktning, port, kryptering och faktisk payload. En sträng som visas i en webbläsare behöver inte förekomma oförändrad i nätverkspaketet.

En snävt filtrerad Packet Capture hjälper till att bekräfta synligt innehåll och riktning. Om mönstret redan saknas där kan en ändring av IPS-regeln inte skapa det. Om paketen är synliga kontrolleras offset, depth, distance, within, strömtillstånd och policyreglernas ordning.

För många anslutningar matchar

Signaturen ligger kvar på Allow packet tills källa, destination, port, riktning eller sökfönster har begränsats. Allmänna ord, korta binära sekvenser och obegränsade reguljära uttryck är vanliga orsaker. En bred brandväggsregel gör effekten ännu svårare att kontrollera.

Om brandväggen visar högre resursanvändning eller en IPS-omstart efter att inställningen sparats ska tidpunkt, modell, firmware, lediga resurser och ips.log säkras. Att upprepade gånger spara olika varianter är då inte längre ett rent test; klargör först orsaken och ett underhållsfönster.

Återställ säkert

Vid oväntade träffar tas först den egna regeln bort från pilotpolicyn eller den tidigare IPS-policyn återställs på brandväggsregeln. Kontrollera därefter nya sessioner med de positiva och negativa testerna. Ta endast bort Custom Signature när den inte används någon annanstans.

Före borttagning ska det dokumenteras vilken policy, brandväggsregel och applikation som använde den. Loggar, testad regelversion och orsaken till återställningen hör till ändringsunderlaget. Att stänga av IPS globalt eller ta bort hela produktionspolicyn är ingen lämplig återställning för en enstaka felaktig signatur.

FAQ

Kan en egen IPS-signatur identifiera HTTPS-innehåll?

Endast när det relevanta innehållet är synligt för IPS i den använda bearbetningsvägen. Utan lämplig dekryptering kan ett content-mönster inte läsa den krypterade HTTPS-payloaden.

Varför matchar inte signaturen efter att den har sparats?

Den måste även läggas till i en regel i en IPS-policy. Denna policy måste vara kopplad till brandväggsregeln som faktiskt bearbetar testtrafiken.

Är ett högt antal installerade IPS-signaturer ett framgångskriterium?

Nej. Aktuella patterns, en lämplig policy, en bekräftad regelmatchning och positiva och negativa tester är avgörande. Antalet i sig säger ingenting om effekten i den konkreta datavägen.