« Internet kisitlamalari nasil asilir? Anti-sansur yazilimlari | Home | Beyaz Sapka’dan yeni hizmetler »

Ultrasurf engelleme

By Huzeyfe ONAL | July 23, 2008

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 ehdef olarak baglandigi tum ipleri toplamaya calistim. Hatta bir ara topladigimi dusundum:).  Yaklasik 30-40 ip adresine giden TCP/443 istekelrini 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 basladim 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.

Topics: Content Filtering |

17 Responses to “Ultrasurf engelleme”

  1. ahmet bisi Says:
    July 23rd, 2008 at 7:31 pm

    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.

  2. Huzeyfe ONAL Says:
    July 23rd, 2008 at 7:34 pm

    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:)

  3. Serdar Says:
    July 24th, 2008 at 2:34 am

    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?

  4. Huzeyfe ONAL Says:
    July 24th, 2008 at 8:30 am

    MEB nasil bir cozum kullaniyor bilmiyorum. Muhtemelen kullandigi ticari cozumlerle engelleme yapamaz.

  5. M.Musa Ülker Says:
    August 7th, 2008 at 2:02 pm

    Huzeyfe hocam, freegate de mi aynı mantıkta çalışıyor? Veya bulduğunuz çözüm freegate için de geçerli mi? Selamlar

  6. Huzeyfe ONAL Says:
    August 10th, 2008 at 1:52 pm

    Freegate kullanmadim ama artik anonymizer programlari hep benzeri yontemleri kullaniyorlar. Bu yontem digerlerine gore cok daha saglikli.

  7. Tolga Cegiz Says:
    August 21st, 2008 at 8:32 am

    Huzeyfe hocam transparent proxy kulanılan yerlerde nasıl olucak bu?

  8. Huzeyfe ONAL Says:
    August 22nd, 2008 at 10:39 am

    Transparant olmasi farketmez. HTTPS baglantilari zaten transparan kullanamazsiniz(kullanabilirsiniz ama ek program gerekir)

  9. Hakan MÜŞTAK Says:
    September 13th, 2008 at 10:27 am

    Merhaba (umarım görüşmeyeli iyisindir), MEB in kullandığı ticari çözümlerinden birini ben bununla delebiliyorum :)

  10. Alper Somuncu Says:
    September 17th, 2008 at 1:02 pm

    Selamlar, Acaba Websense üzerinden engellemenin bir yöntemi var mıdır?

  11. Huzeyfe ONAL Says:
    September 18th, 2008 at 11:31 am

    Deneyen arkadaslar Websense uzerinde engellemenin bir yolunu bulamamislar.

  12. Levent Says:
    November 3rd, 2008 at 11:50 am

    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…

  13. Huzeyfe ONAL Says:
    November 4th, 2008 at 4:37 pm

    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

  14. memo Says:
    November 4th, 2008 at 4:56 pm

    Huzeyfeciğim niye bu kadar uğraştığını anlayamadım.Kur Zonealarm Security Suite’i ,blokla kardeşim!Olay bitti:)

  15. Huzeyfe ONAL Says:
    November 4th, 2008 at 8:06 pm

    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.

  16. murat elmalı Says:
    November 18th, 2008 at 5:43 pm

    bu ultrasurf programını websense de nasıl yasaklarım yardımcı olabilirseniz çok sevinirim

  17. Huzeyfe ONAL Says:
    November 20th, 2008 at 11:11 am

    Websense konusunda guncel bilgim olmadigi icin nasil bloklanir tarif edemem. Ama Websense blog/forumlarinda vs konu mutlaka gecmistir. Oradan faydalanabilirsiniz.

Comments

Anket Köşesi


Teknik bloglarda icerik nasil olmali?
View Results

Archives

Friends

Life(over)IP Network



View my profile on Turk Blog Yazarlari