Jeg er i gang med at lave et projekt omkring hvordan man via tunneller kan
omgå firewalls indefra. Dvs. hvorledes man kan anvende FTP, telnet mmm.
selvom firewallen f.eks. kun tillader trafik ud på port 80.
Mod den simpleste form for firewall beskyttelse der blot lader trafikken
sive ud gennem f.eks. port 80 synes løsningen lige til: man kontakter en
ekstern tunnel på port 80, der så videreformidler en til den ønskede IP og
port.
Men hvad hvis firewallen laver en form for indholdscheck af de sendte
pakker? Ved f.eks. at kigge på om det nu også er HTML der sendes over
porten. Kan man da blot lave en slags "http marshalling" ved at smide nogen
html tags omkring pakkerne inde man sender dem ud, encode binært iht. RFCen
for HTTP og få den eksterne tunnel til at fjerne dette? Hvad er
sandsynligheden for at firewallen vil opdag dette, og hvordan vil den gøre
det?
Helt "galt" synes det så at være hvis firewallen checker om trafikken nu
også opfører sig som HTTP: HTTP er jo karaktiseret ved at klienten kun
sender én forespørgelse af begrænset størrelse, serveren svarer og socket
nedlukkes. Protokoller der anvender lange forbindelsestider og kræver flere
sendinger fra klienten – f.eks. telnet -, vil således ikke umiddelbart kunne
omgå firewalls der anvender denne form for "forbindelsescheck". Eller?
For at vise princippet bag tunnellen har jeg lagt en illustration op på
http://www.it.edu/~morton/Tunnel.ppt . Venstre side er intranettet, højre
Internettet.
Er der nogen der kender til hvordan indholdsscheck fungerer og
begrænsningerne i disse? Links, erfaringer o.l. ville altsammen være af
største interesse!
På forhånd tak for hjælpen.
-- Morton