Rabu, 26 Juni 2024

Stress Test Website dengan Slowhttptest

Pagi ini dimulai dengan sebuah keisengan yang menghasilkan. Kenapa? Saya membaca sebuah artikel terkait metode stress test dan load test terhadap sebuah aplikasi. Selama ini kita hanya berkutat di aplikasi hanya soal keamanan aplikasi, efisien dan efektif dari aplikasi, dan cepatnya akses aplikasi. Seharusnya selama ini kita harus bisa juga menggaransi bahwa aplikasi jangan sampai tumbang dengan serangan yang terus menerus, seakan-akan sebagai sebuah permintaan dari pengguna. Tetapi itu adalah sebuah serangan untuk menumbangkan layanan sebuah website.

Disclaimer

Disini saya tidak bermaksud untuk mengajarkan hal-hal yang tidak baik, tetapi memberikan sebuah informasi bahwasanya pengetahuan ini bermanfaat untuk hal yang positif.

Prolog

SlowHTTPtest adalah alat yang sangat dapat dikonfigurasi untuk mensimulasikan beberapa serangan Application Layer Denial of Service dengan memperpanjang koneksi HTTP dengan cara yang berbeda.

Dapat digunakan menguji server web untuk mengetahui kerentanan DoS, atau hanya untuk mengetahui berapa banyak koneksi bersamaan yang dapat ditangani. SlowHTTPtest bekerja pada sebagian besar platform Linux, OS X dan Cygwin - lingkungan mirip Unix dan antarmuka baris perintah untuk Microsoft Windows, dan dilengkapi dengan Dockerfile untuk membuat segalanya lebih mudah.

Instalasi

CPU 2vcpu
RAM 8 Gb
HDD 80 Gb
OS Parrot security OS 6.1

Karena sudah ada di aplikasi Parrot OS ini kita dapat menggunakan perintah sebagai berikut:

slowhttptest -c 10000 -H -g -o slowhttp -i 10 -r 200 -t GET -u https://domain.tujuan.anda

 untuk maksud perintah diatas dapat dilihat pada manual sebagai berikut

slowhttptest, a tool to test for slow HTTP DoS vulnerabilities - version 1.8.2
Usage: slowhttptest [options ...]
Test modes:

-H                slow headers a.k.a. Slowloris (default)
-B                slow body a.k.a R-U-Dead-Yet
-R                range attack a.k.a Apache killer
-X                slow read a.k.a Slow Read
Reporting options:
-g                generate statistics with socket state changes (off)
-o file_prefix    save statistics output in file.html and file.csv (-g required)
-v level          verbosity level 0-4: Fatal, Info, Error, Warning, Debug
General options:
-c connections    target number of connections (50)
-i seconds        interval between followup data in seconds (10)
-l seconds        target test length in seconds (240)
-r rate           connections per seconds (50)
-s bytes          value of Content-Length header if needed (4096)
-t verb           verb to use in request, default to GET for
                  slow headers and response and to POST for slow body
-u URL            absolute URL of target (http://localhost/)
-x bytes          max length of each randomized name/value pair of
                  followup data per tick, e.g. -x 2 generates
                  X-xx: xx for header or &xx=xx for body, where x
                  is random character (32)
-f content-type   value of Content-type header (application/x-www-form-urlencoded)
-m accept         absolute URL of target (http://localhost/)
Probe/Proxy options:
-d host:port      all traffic directed through HTTP proxy at host:port (off)
-e host:port      probe traffic directed through HTTP proxy at host:port (off)
-p seconds        timeout to wait for HTTP response on probe connection,
                  after which server is considered inaccessible (5)
-j cookies        value of Cookie header (ex.: -j "user_id=1001; timeout=9000")
Range attack specific options:
-a start          left boundary of range in range header (5)
-b bytes          limit for range header right boundary values (2000)
Slow read specific options:
-k num            number of times to repeat same request in the connection. Use to
                  multiply response size if server supports persistent connections (1)
-n seconds        interval between read operations from recv buffer in seconds (1)
-w bytes          start of the range advertised window size would be picked from (1)
-y bytes          end of the range advertised window size would be picked from (512)
-z bytes          bytes to slow read from receive buffer with single read() call (5)

 Hasil dari pengujian diatas sebenarnya ada bentuk report yaitu dalam format csv dan html



Cukup sekian keisengan saat ini

Tidak ada komentar:

Posting Komentar