Konu: Socker!
Tekil Mesaj gösterimi
  #1 (permalink)  
Alt 08-25-2009, 20:05
med1kal med1kal isimli Üye şimdilik offline konumundadır
Codeman.
 
Üyelik tarihi: Aug 2009
Mesajlar: 31
Beğenim: 16
Beğenilen: 20 \ 8
Tecrübe Puanı: 10
med1kal Meraklı
Lightbulb Socker!

Socker! 1.0

Kullanım: /socker

Nedir bu socker?

Socker, FTP, HTTP gibi protokoller üzerinde yapılan analizlerle edinilen veriyi test etmenin kolay yollarından biri.

Şöyle ki, daha önce "protocol sniffing" metoduyla aldığım bilgileri sockete dönüştürüp, gelip giden bilgiyi incelemeye çalışırdım. Her seferinde yeni bir sockopen/sockread olayı yazmak gerekirdi. Bunu basitleştirmek için socker dediğim küçük bir kod yazdım. Bu kod, panoya(clipboard) kaydedilen protokol mesajlarını hedefe ileterek sonuçlarını gösteriyor. Üstelik hedefini de kendisi belirliyor. Çünkü panoya alınan verilerde "Host:" belirtecinde, hedef zaten mevcut oluyor. Ayrıca kod, gzip ile sıkıştırılmış içerikleri gözlemleye bilmemiz için Encoding belirtecini de esgeçiyor.

Unutmadan, panoya kaydedilen verilerin, aşağıdakine benzer şekillerde olması gerekiyor:

Kod:
POST /ajax/reqs.php HTTP/1.1
Accept: */*
Accept-Language: tr-TR
Referer: http://www.facebook.com/home.php?#/reqs.php#friend
x-svn-rev: 175196
Content-Type: application/x-www-form-urlencoded
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; GTB6; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; .NET CLR 1.1.4322)
Host: www.facebook.com
Content-Length: 341
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: datr=1243252399-706ad3744faef2ea70ddad4c48ef0f536d647d403bd064b9c6502; s_vsn_facebookpoc_1=2673803476138; ABT=2dd086ca2a46e9e50fff44e0ec48cb811st0%3A1248249628%3AB; __utma=87286159.141936298.1246961479.1246961479.1246961479.1; __utmz=87286159.1246961479.1.1.utmccn=(direct)|utmcsr=(direct)|utmcmd=(none); login_x=a%3A2%3A%7Bs%3A5%3A%22email%22%3Bs%3A19%3A%22acelya345%40gmail.com%22%3Bs%3A19%3A%22remember_me_default%22%3Bb%3A0%3B%7D; test_cookie=1; login=+; lsd=141606237; s_cc=true; s_sq=%5B%5BB%5D%5D; locale=tr_TR; xs=6a8efed417c093cda2b9cace86b7b157; c_user=1828445692; cur_max_lag=2; h_user=f2fd17e98837; x-referer=http%3A%2F%2Fwww.facebook.com%2Freqs.php; presence=%7B%22v%22%3A2%2C%22time%22%3A1247834137%2C%22ch%22%3A%7B%22h%22%3A%22channel25%22%2C%22p%22%3A80%2C%22sub%22%3A%5B1%5D%2C%22p_1828445692%22%3A0%2C%22ri%22%3A0%7D%2C%22state%22%3A%7B%22p%22%3A0%2C%22w%22%3A1420%2C%22h%22%3A712%2C%22ut%22%3A1247834083484%2C%22pt%22

type=friend_connect&id=1204033085&action=accept&params[add_to_nf_saw]=true&params[add_to_nf]=false&params[lists]=&post_form_id=43157381083540433ecec727145268fd&fb_dtsg=BSVsYAC139G6_lDPm0Ky5_NDwhc&post_form_id_source=AsyncRequest&__a=1&nctr[id]=9d4cac55ca6fb4a435b484a1328a2e6d&nctr[nid]=d415246fb1b155f9d0ce0cff2d3f2a14&nctr[ct]=1247834312234

Kodumuz:

Kod:
alias socker {
  var %i = 1
  while (%i <= $cb(0)) {
    echo -a - $cb(%i)
    if ($regex($gettok($cb(%i),1,32),Host:)) { 
      if ($sock(%s.name).name) sockclose %s.name
      %s.name = $gettok($cb(%i),2,32) 
      sockopen %s.name %s.name 80 
    }
    inc %i
  }
}
on *:sockopen:$(%s.name):{ 
  var %i = 1, %x = 0
  while (%i <= $cb(0)) {
    if (!$cb(%i)) sockwrite -n $sockname $crlf   
    if ($gettok($cb(%i),1,32) != Accept-Encoding:)  { sockwrite -n $sockname $cb(%i) }
    inc %i
  }
  sockwrite -n $sockname $crlf
}
on *:sockread:$(%s.name):{
  var %tmp
  sockread %tmp
  if (%tmp) echo - %tmp
}
Alıntı ile Cevapla
4 kullanıcı med1kal kullanıcısının bu mesajını begendi.
CoCoRiCo (08-25-2009), DaGGeR (08-26-2009), L4roXyL (08-26-2009), WeiLSiDe (08-25-2009)
 
1 2 13 14 16 17 18 19 21 22 23 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 49 50 51 52 54 55 56 57 58 59 60 61 62 63 67