Ultrasurf engelleme
Ultrasurf ve benzeri mantikla calisan yazilimlari klasik yoldan engellemek imkansiz.Cunku trafik SSL uzerinden akiyor ve icerigine bakma sansiniz yok(?) ve hedef baglanti noktalari sabit degil. Durum boyle olunca daha yaratici cozumler gerekiyor basetmek icin. Ben de onceki gun tanistigim bu programi engellemek icin oturdum bilgisayar basina. Bir adet Windows XP+Ultrasurf ve bir adet FreeBSD makine ile ise giristim(Tek bir makine uzerinde Vmware ile). FreeBSD uzerinde Squid ve Packet Filter kurulu.
Once programin mantigini anlamak icin tcpdump ile trafik analizi yaptim ve acikcasi birsey anlamadim:). Program calistirildiginda bir suru farkli adrese dns sorgulari gonderiyordu ve ardindan o adreslere 443. porttan baglanip veri aktarimina geciyordu. Acaba dns sorgulari icerisinde veri mi tasiyor diye inceleyince anormal bir durumun olmadigini gordum. Biraz daha bekleyince bu sorgulari ya sasirtma ya da baglanilacak hedef noktalarin durumunu anlamak icin kullandigini dusundum.
Ve ilk is olarak makineden disari cikan dns isteklerini blokladim ve programi tekrar calistirdim. Birkac saniye gecikme ile problemsiz baglandi. DNs sorgularini birakip 443. porttan giden isteklere yogunlastim. Programi onlarca kere calistirarak hedef olarak baglandigi tum ipleri toplamaya calistim. Hatta bir ara topladigimi dusundum:). Yaklasik 30-40 ip adresine giden TCP/443 isteklerini bloklayinca program calismadi…
Yanildigimi anlamam cok uzun surmedi ve bu isi Firewall ile yapamayacagima karar verip biraz daha ustduzey bir cozume yoneldim. Burada devreye Squid girdi.
FreeBSD uzerinde Squid’i ayarlayarak tum SSL baglantilarini loglattirdim(CONNECT methodu ile baglanilan adresler) sonra programin ayarlarinda bulunan Proxy sekmesinden proxy olarak Freebsd’yi gosterdim ve squid loglarina baktim. Loglarda gordugum ip adresleri aslinda Firewall ile gorduklerimle benzerdi fakat ben o adresleri blokladikca adresler degismeye basladi:). Tam bir kefi fare oyunu gibi birkac saat ugrastim…
Ugraslarim sonucsuz kalinca biraz temiz hava alarak mantikli dusunmeye calistim ve daha once Skype bloklamak icin kullandigim bir yontemi denemeye karar verdim.
Bu karari almada Squid loglari cok etkili oldu.
1216392570.130 1 192.168.2.23 TCP_MISS/200 979 CONNECT https://121.100.83.188:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392570.134 1 192.168.2.23 TCP_MISS/200 979 CONNECT https://71.202.103.111:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392570.139 0 192.168.2.23 TCP_MISS/200 979 CONNECT https://99.244.154.125:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392570.145 1 192.168.2.23 TCP_MISS/200 979 CONNECT https://98.207.118.112:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392570.154 1 192.168.2.23 TCP_MISS/200 977 CONNECT https://71.198.74.252:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392570.158 0 192.168.2.23 TCP_MISS/200 977 CONNECT https://71.195.174.97:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392571.565 21393 192.168.2.23 TCP_MISS/200 9207 CONNECT https://login.dtcc.com:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392585.090 0 192.168.2.23 TCP_MISS/200 975 CONNECT https://64.62.138.25:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392585.096 0 192.168.2.23 TCP_MISS/200 975 CONNECT https://64.62.138.22:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392585.103 1 192.168.2.23 TCP_MISS/200 975 CONNECT https://64.62.138.20:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392606.547 56371 192.168.2.23 TCP_MISS/200 8565 CONNECT https://docs.google.com:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392606.548 56373 192.168.2.23 TCP_MISS/200 40604 CONNECT https://store.willcom-inc.com:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392606.549 56377 192.168.2.23 TCP_MISS/200 3237 CONNECT https://www.commerceonlinebanking.com:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392622.633 1 192.168.2.23 TCP_MISS/200 979 CONNECT https://59.115.196.224:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392625.220 1 192.168.2.23 TCP_MISS/200 979 CONNECT https://59.115.171.204:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392626.523 1 192.168.2.23 TCP_MISS/200 977 CONNECT https://125.225.43.66:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392626.532 1 192.168.2.23 TCP_MISS/200 979 CONNECT https://220.142.201.77:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392634.777 674 192.168.2.23 TCP_MISS/200 1305 CONNECT https://www.virusbtn.com:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392634.991 885 192.168.2.23 TCP_MISS/200 14882 CONNECT https://www.uktradeinvest.gov.uk:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392640.129 6024 192.168.2.23 TCP_MISS/200 9207 CONNECT https://login.dtcc.com:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392643.744 9638 192.168.2.23 TCP_MISS/200 1450 CONNECT https://ipfax.cttbj.com:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
1216392645.217 1473 192.168.2.23 TCP_MISS/200 138 CONNECT https://ipfax.cttbj.com:443 192.168.2.23 DEFAULT_PARENT/127.0.0.1 -
Loglardan anlasilan su idi: Bu program 443. port uzerinden cikmak icin cesitli ip adreslerini kullaniyordu oysa saglikli bir https sitesi ip adresi uzerinden calismaz(nadir ornekleri olsa da tercih ve tavsiye edilmeyen bir yontem ) ben eger Squid -ya da herhangi bir icerik filtreleme araci- ile 443. port uzerinden CONNECT methodu ile baglanan ve hedef olarak ip adresi secen istekleri yasaklarsam bu program calismaz. Birkac deneme sonrasi gercekten bu fikrin ise ayradigini gordum. Ayni dertten muzdarip bir arkadas da test edip onaylayinca rahat bir nefes alarak uykuya gecebildim.
Squid uzerinde yaptigim ayarlar;
acl CONNECT method CONNECT
acl ultra_block url_regex ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+
http_access deny CONNECT ultra_block all
kisaca icerisinde ip adresi gececek urlleri bloklayacak bir acl yazdim ve bunu blokladim.
Bu islem sonrasinda loglara bakilirsa hangi adreslere baglanmaya calistigi gorulecektir ve Ultrasurf calismayacaktir.
Ek olarak eger aginizda NTLM authentication kullaniyorsaniz bu tip programlar calismaz(proxy destegi var fakat ntlm auth destegi genelde yok)
Guncelleme: Bazi IPSler bu tip kacak programlar icin imzalarini cikarmaya basladilar. Siz de o sansli kullanicilardansaniz ek islem yapmaniza gerek kalmayacaktir.
Yine bazi client security urunleri(Mcafee vs) de uzun zamandir bu ve benzeri programciklari network katmaninda degil de direkt isletim sisteminde calistirilirken yakalayip engelleyebiliyor(mus). Tabi burada izlenen yontem onemli, zira bu clientlara ait tum ozellikler degistirilebilir.
Güncelleme-2: Zemana’cılar programı daha detaylı inceleyip ufak bir engelleme yazılımı hazırlamıslar. Onların uyarısı ile ben de tekrar test edip gördüm ki Ultrasurf gercek bir SSL baglantisi kullanmiyor. Bazı adreslere yaptığı gercek SSL bağlantılarına bakarak kanmısım oysa tekrar detaylı inceleyince SSL’de mutlaka olması gereken sertifika gönderimi Ultrasurf trafiğinde yok. Bunun yerinayni porttan, protokol bilgileri cok benzer cakma bir sifreli protokol kullanıyor.
Zemana’ın blog girdisi : http://blog.zemana.com/2009/01/ultrasurf-proxy-analizi.html

herseyi yasaklayarak yok edebilecegini sanan, iletisim özgürlügünü duymamis cok insan var. bu calismaniz onlara ilham vermez umarim. evet huzur duyabilirsiniz yapabiliceginizi gördünüz, keske bu kadar cabayi sansurlemeleri engelleyecek bir calisma icin ortaya koysaydiniz.
Bir onceki mesaja bakarsaniz amacimi daha iyi anlarsiniz. Her ozgurlugun bir siniri vardir ve bu siniri calistiginiz yer icin firmaniz koyar. Yine bir onceki yazida belirttigim gibi her engellemenin bir acik kapisi vardir, bunun da var. Ama onu da kullanacak olan bulsun. Atalarimiz at binenin kilic kusananin demis:)
Ultrasurf engelleme konusundaki çalışmalarınızı umarım MEB farketmez. Ultrasurf benim ve tanıdığım pek çok arkadaşımın özgürlüğe açılan kapısıydı. (MEB kurumlarında popüler sitelerin çoğu yasaklı.) Siz bu yazılımı yerel ağda engellemeyi başarmışsınız. Peki TTNET, MEB’e bağlı ip numaralarına ya da MEB abonelerine bu tür toptan engelleme yapabilir mi?
MEB nasil bir cozum kullaniyor bilmiyorum. Muhtemelen kullandigi ticari cozumlerle engelleme yapamaz.
Huzeyfe hocam, freegate de mi aynı mantıkta çalışıyor? Veya bulduğunuz çözüm freegate için de geçerli mi?
Selamlar
Freegate kullanmadim ama artik anonymizer programlari hep benzeri yontemleri kullaniyorlar. Bu yontem digerlerine gore cok daha saglikli.
Huzeyfe hocam transparent proxy kulanılan yerlerde nasıl olucak bu?
Transparant olmasi farketmez. HTTPS baglantilari zaten transparan kullanamazsiniz(kullanabilirsiniz ama ek program gerekir)
Merhaba (umarım görüşmeyeli iyisindir),
MEB in kullandığı ticari çözümlerinden birini ben bununla delebiliyorum
Selamlar,
Acaba Websense üzerinden engellemenin bir yöntemi var mıdır?
Deneyen arkadaslar Websense uzerinde engellemenin bir yolunu bulamamislar.
hocam kolay gelsin.. squid 2.6 kullanıyorum ve . bu şekliyle engelleyemedim..squid içerisinde nereye ve ne şekilde yazılacağını bir kez daha izah ederseniz sevinirim…şimdiden reşekkürler iyi çalışmalar…
squid.conf icerisinde acl ile baslayan satirlari bulup
acl CONNECT method CONNECT acl ultra_block url_regex ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+
yazin. Sonra http_access ile baslayan satirlari bulup en uste asagidaki satiri yazin.
http_access deny CONNECT ultra_block all
Huzeyfeciğim niye bu kadar uğraştığını anlayamadım.Kur Zonealarm Security Suite’i ,blokla kardeşim!Olay bitti:)
ZoneAlarm’da bireysel harici nasil bloklama yapacaksiniz? Yani 300 kisilik bir kullanici grubu icin(merkezi yonetim vs varsa bilmiyorum)ama uzaktan yapacaginiz engellemeler bir sekilde asilacaktir. Uygulamanin ismini cismini degistirip atlatmak bir zamanlar mumkundu.
bu ultrasurf programını websense de nasıl yasaklarım yardımcı olabilirseniz çok sevinirim
Websense konusunda guncel bilgim olmadigi icin nasil bloklanir tarif edemem. Ama Websense blog/forumlarinda vs konu mutlaka gecmistir. Oradan faydalanabilirsiniz.
Huzeyfe Bey,son günlerde bir RocketDock modası var.Hatta CHIP dergisi “Hala RocketDock kullanmıyor musunuz?” diye bir kampanya bile başlattı.Sorun şu:RocketDock üzerinden ne zaman internete bağlanan bir program kullansam,RD da internete bağlan izni istiyor.RD’a izin vermediğim taktirde diğer program da bağlanamıyor.Zonealarm Security Suite kullanıyorum.İnternet explorerdan “haberturk.com”‘a girmek istedim, RD da 127.0.0.1 port 1045′e bağlanmak istedi.Safari ile “yahoo.com”‘a girmek istedim,RD 64.233.183.104 DNS’e bağlanmak istedi.Bu program gerçekten güvenli mi?Bu programı inceleyebilirseniz çok sevinirim.Bedava programlara hep şüpheyle yaklaşmışımdır.Ama ne yazık ki kuralımı bozup bu programı yükledim.Size yanlızca buradan ulaşabiliyorum.Bu yüzden sorun burada dile getirilmiştir.(Program CHIP Dergisinden indirilmiştir.)
arkadaşlar bizdede ultrasurf var ve admin trend micro sayesinde fabrikadaki tüm bilgisayarları temizledi. şimdi programı bilgisayarıma yapıştıramıyorum, yapıştırsamda trend micro bulup siliyor. sadece ultrasurf 9.9 ile şu anda giebiliyorum. herkese tavsiye ederim. hadi engelleyinde görelim.
Sayın Huzeyfe Hocam;
Okulmuzda engellemeler var,ultra surf ile asabiliyorduk ama suan onu da engellemeyi basardilar.Dansguardian diye bir program kullaniliyor.
bunu da delmenin bir yolu var demissiniz…
engin bilginizle bize bi yardimci olsaniz…
amacimiz yasakli sitelere girmek degil zaten,haber sitelerine bile girmeiyoruz…
Selametle…
yardimci olursaniz memnun oluruz tum hoca arkadaslarla beraber…