az nmap dokumentációja a következőket tartalmazza NULL
FIN
and Xmas
scans:
az RFC szövegnek megfelelő rendszerek szkennelésekor minden olyan csomag, amely nem tartalmaz syn, RST vagy ACK biteket, visszaadott RST-t eredményez, ha a port zárva van, és egyáltalán nem válaszol, ha a port nyitva van. Mindaddig, amíg a három bit egyike sem szerepel, a másik három (FIN, PSH és URG) kombinációja rendben van. Az Nmap ezt három szkennelési típussal használja ki
mint látható, ha a port nyitva van, a rendszer nem ad vissza választ. Ez ideális esetekben működhet, de előfordulhat, hogy olyan tűzfalon keresztül kutat, amely blokkolja bizonyos szolgáltatásokhoz való hozzáférést.
például van egy webalkalmazás a 80-as porton, amelynek mindenki számára elérhetőnek kell lennie, de nem szeretné, hogy mindenki hozzáférhessen az ssh portjához, ezért állítsa be a tűzfalat úgy, hogy a SYN
jelzővel ellátott csomagokat a 22-es portra dobja, ha nem engedélyezett IP-ről származik, és válaszoljon egy RST
ebben a példában egy szkennelési a SYN
jelzővel a RST
ami azt jelenti, hogy a port zárva van. Ehelyett, ha egyNULL
scan például – amely nem rendelkezik aSYN
zászló – Nem dobja el a tűzfal, és visszaadjaRST
ha a port zárva van, vagy semmi, ha nyitva van.
hogyan dönthetem el, hogy mikor használjak XMAS vagy FIN szkennelést, ha mindkettőnek ugyanaz a válasza és korlátai vannak?
a legtöbb esetben ezeknek a vizsgálatoknak ugyanúgy kell működniük, az egyetlen oka annak, hogy egyiket választom a másik helyett, bizonyos tűzfalszűrők megkerülése. Az előző példában a tűzfal csomagokat is dobhat egy NULL
szkennelésből, mivel nincs benne zászló, ezért sérült csomagként értelmezi. Ebben az esetben olyan szkennelést használjon, amelyen van néhány zászló, de nem tartalmazza a SYN
jelzőt, például FIN
vagy Xmas
beolvasások
vegye figyelembe, hogy nem fogja tudni tudni, hogy a port valóban nyitva van-e, ha nem kap választ, mivel az is lehetséges, hogy a A tűzfal eldobja a RST
választ, amikor egy port zárva van, ezért tévesen értelmezi nyitottnak, ha nem. Ahhoz, hogy az ilyen típusú vizsgálatok megfelelően működjenek, előzetesen tudnia kell, hogy a kiszolgáló hogyan reagál az ilyen típusú vizsgálatokra egy olyan port segítségével, amelynek pontos állapotát ismeri (példánkban ez lehet a 80-as port), és elemezze a különböző válaszokat minden szkennelési típushoz