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
Related posts:



This post has 39 comments
July 23rd, 2008
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.
November 19th, 2009
İyide arkadaşım herşeye yasakçı diye karşı dikilmekte yanlış. Ben okulda çalışıyorum ve öğrenciler onların kullanımına sunulmuş 300den fazla bilgisayarla video ve gereksiz sitelere bağlanmak istiyorlar. Burası okul ve sadece aylık 60GB download hakkımız var (Avustralya) ve hızdasadece 6000/384. Personel ile birlikte 400 bilgisayar bu hattı kullanıyor. Şimdi sen olsan ne yapardın. (Ek hat alamıy0ruz).
Ayrıca şirkette çalışanına çalışması için para ödeyene bir firmanın gereksiz ve çalışanını işinden alıkoyacak bir filtre sistemini kullanması gayet doğal hakkıdır.
July 23rd, 2008
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:)
July 24th, 2008
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?
July 24th, 2008
MEB nasil bir cozum kullaniyor bilmiyorum. Muhtemelen kullandigi ticari cozumlerle engelleme yapamaz.
August 7th, 2008
Huzeyfe hocam, freegate de mi aynı mantıkta çalışıyor? Veya bulduğunuz çözüm freegate için de geçerli mi?
Selamlar
August 10th, 2008
Freegate kullanmadim ama artik anonymizer programlari hep benzeri yontemleri kullaniyorlar. Bu yontem digerlerine gore cok daha saglikli.
August 21st, 2008
Huzeyfe hocam transparent proxy kulanılan yerlerde nasıl olucak bu?
August 22nd, 2008
Transparant olmasi farketmez. HTTPS baglantilari zaten transparan kullanamazsiniz(kullanabilirsiniz ama ek program gerekir)
September 13th, 2008
Merhaba (umarım görüşmeyeli iyisindir),
MEB in kullandığı ticari çözümlerinden birini ben bununla delebiliyorum
September 17th, 2008
Selamlar,
Acaba Websense üzerinden engellemenin bir yöntemi var mıdır?
September 18th, 2008
Deneyen arkadaslar Websense uzerinde engellemenin bir yolunu bulamamislar.
November 3rd, 2008
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…
November 4th, 2008
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
November 4th, 2008
Huzeyfeciğim niye bu kadar uğraştığını anlayamadım.Kur Zonealarm Security Suite’i ,blokla kardeşim!Olay bitti:)
November 4th, 2008
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.
November 18th, 2008
bu ultrasurf programını websense de nasıl yasaklarım yardımcı olabilirseniz çok sevinirim
November 20th, 2008
Websense konusunda guncel bilgim olmadigi icin nasil bloklanir tarif edemem. Ama Websense blog/forumlarinda vs konu mutlaka gecmistir. Oradan faydalanabilirsiniz.
December 25th, 2008
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.)
January 8th, 2009
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.
March 16th, 2009
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…
August 8th, 2009
Adam bir halt becermiş gibi birde anlatıyor iyimi?8mbit bağlantı sunan ttnet bu bağlantıyla hd youtube ve benzeri sitelere giremeyen kullanıcılarına ne sunmayı bekliyor?kahrolsun statükocu sansürcü zihniyet.30kb lik programı saatlerce engellyemeyen bir embesil internet özgürlüğüne elindeki iğne ile çukur kazarak engel olacağını sanıyor.Yazıklar olsun sanada okuduğun dökümanlarada.
August 10th, 2009
1)Sansürcü bir zihniyette olsaydım bu yorumunuz burada yaynlanamazdı
2)İnsanların istediği şeyi yapabilmesi özgürlük değildir, sizin özgürlük olarak baktığınız bazı şeyler benim için özgürlük olmayabilir.
3)İnsanların iş saatleri içerisinde her internet sitesine girememeleri onların özgürlüklerinin kısıtlanması anlamına gelmez. Aksine iş saatinden çalma anlamına gelebilir.
4)İnsanları suçlamadan önce biraz araştırma yapmanızı öneririm. Bu saydanın sahibi internet sansür sistemlerini atlatma üzerinde defalarca yazı yayınlamış birisidir. Biraz araştırma kabiliyetiniz varsa arar bulursunuz.
February 8th, 2010
bu yasakcı zihniyet çinde ve iranda var bu tarz programları yasakladıkca adamlar yenilerin yapıyor neden mi amerika özelliklie aşılmasını istiyor . film indirmesin .rapide girmesin belki anlarım cok.bazı üniversiterde özgür fikir! bunlarda facebook hadi buda neyse dersin google da taramalar yasak haber yorum okuyacagım yorum yazıyor ya yorumcu fal yorum bunlara girecegini zannediyor buda yasak . e oldumu şimdi herşey yasak nereye kadar nerde görülmüş iranda çinde e bravo size bizdede bu yakışır
February 10th, 2010
Bu kadar hızlı gaza gelip yazmadan biraz “özürlük”, çalışma hayatı ve bu blogdaki diğer yazıları kurcalasaydınız keşke.
March 3rd, 2010
Huzeyfe hocam ben birçok araştırma yaptım ve gerçekten squid üzerinde en oturaklı yöntemlerden birini uyguladığınızı belirtmek isterim yöntemi çok beğendim ve uyguladım gayet başarılı çalıştı ama ileride bizlere ne gibi sıkıntılar doğurur göreceğiz
belirtmiş olduğunuz gibi her engellemenin bir acık kapısı olabileceğinden şimdi sıra geldi bu açıkların tespitine. Bu konuda tecrübleriniz var ise e-mail yoluyla haberleşebilirsek memnun olurum. Kolay gelsin.
March 16th, 2010
Hüzeyfe hocam çalışmış olduğum kurumda pfsense kullanıyorum squide söylemiş olduğunuz kuralı ekledim başarılı bir şekilde çalışıyor ama pfsenseyi restart ettiğimde squid üzerinde yapmış olduğum tüm kurallar siliniyordu neyseki squid.inc üzerinde ufak bir ayarlama ile bu sorunu çözdüm ama kısa bir süre sonra farkettimki hotmail,yahoo vs. gelen ekleri açılmıyor.deneme amaçlı squid üzerinde kuralı sildiğimde sorun ortadan kalktı, ?
March 16th, 2010
Hocam yukarıdaki yazmış olduğum soruna ek olarak şunları yazmayı unuttum ve eklemek istiyorum
yine sizin başka bir sitede önerdiğiniz Traffic Shaper yöntemi ile geçi olarak çözdüm gibi ilgili ip nin internet trafiğini 5Kb yaptım…ama tabi ipler değişirse allah büyüktür ,
March 18th, 2010
Merhaba,
bu kod endian 2.3 versiyonda çalışırmı acaba ?
eğer çalışır ise etc/squid/squid.conf.tmpl dosyasında nereye yazmak gerekir.
teşekkürler.
March 21st, 2010
Uzun zamandır Endian kullanmadığım için nasıl çalışır nereden dosyaları okur bilemiyorum. Endian forumlarına sormanız daha faydalı olur.
March 19th, 2010
merhaba,
ben endian 2.3 kullanıyorum. bahsettiğiniz kuralı endianda etc/squid/squid.conf.tmpl dosyasında nereye yazmam gerek acaba.
bilgi verirseniz çok sevinirim.
ben anlayabildiğim kadarıyla bir yere yazdım ama çalışmadı malesef
teşekkürler.
May 5th, 2010
Bu dediklerinizi ipcop yuklu makinamin squid.conf ayarlarina girip makinama restart cektikten sonra ilk baslarda ultrasurf a girememesine ragmen kullanılan server değiştirildiği zaman her türlü siteye girebildikerini farkettim. zannedersem bu işlem işe yaramıyor…
May 5th, 2010
merhaba hocam
gerçekten endian ile ilgili bu konuda çözüm lazım yardımcı olursanız çok makbule geçer
May 5th, 2010
özellikler port kapatmayla çözülebilir mi?
May 5th, 2010
Port kapama IP engellemeyle cozemezsiniz. Squid kullanarak anlattığım çözüm kesin çözümdür.
Eğer bu ayarları yapıp engelleyemiyorsanız bir yerlerde hata yapıyorsunuz demektir. 443. port trafiği Squid üzerinden geçirilmek zorunda yoksa bu ayarlar işe yaramaz.
May 11th, 2010
merhaba ultrasurf yasaklama konusunda aşağıdaki linkten çok faydalandım. faydası dokunur diye yazıyorum.
http://www.bilside.com/linux-bilgi-kupu-makaleler/71-ipcop-firewall-kategorisi/345-ipcop-firewall-ile-ultrasurf-engellemesi-yapmak.html
May 12th, 2010
Iptables yerine Snort ile yapmak isterseniz http://www.guvenlikegitimleri.com/?p=1119 adresindeki post işinize yarayacaktır.
June 3rd, 2010
Hüzeyfe hocam bilgi için teşekkürler.
Denedim işe yarıyor ancak Skype erişimleri de https üzerinden ip bazlı yapıldığı için bloklama ile karşılaştım. 1-2 kişi bağlandığı için onları bu ACL den hariç tutarak çözdüm ama sizce başka bir çözüm var mıdır?
June 3rd, 2010
Bu yöntem Skype’i de engeller. Snort ile engelleme secenegini deneyebilirsiniz.
http://guvenlikegitimleri.com/?p=1119