This is a basic but yet very powerful way to stress-test your site.
WordPress, Blogspot but also TYPO3 without HipHop and PHP7 (check out this benchmark) seem to be quiet good targets for this attack.
I basically managed to bring down my own blog with MySQL giving up 😀 and also slowed down Blogspot sites and managed to render a TYPO3-powered site basically defect. Shocking. Just imagine what an attacker could do running httperf like on 10x hacked servers. argh.
„Autobench is a Perl script designed to assist in the automation of benchmarking with httperf. It runs httperf a number of times against the target server, increasing the requested request rate each time, and produces output in the form of a CSV or TSV file which can be imported directly into a spreadsheet for further analysis or graphing.
Autobench also enables the easy comparison of two different web servers – it can test two servers and amalgamate the results in the same table, enabling comparative graphs to be drawn quickly and easily.
Autobench can be obtained from
. Download the autobench tarball to your client machine, untar it, and run
to install the autobench script.“
# build from src
apt-get install make;
# download src
# verify what we just downloaded
gpg --keyserver pool.sks-keyservers.net --recv-keys BCC7863F; # download author's public pgp key
gpg: requesting key BCC7863F from hkp server pool.sks-keyservers.net
gpg: key BCC7863F: public key "Julian T. J. Midgley <email@example.com>" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
gpg --verify autobench-2.1.2.tar.gz.asc autobench-2.1.2.tar.gz
gpg: Signature made Thu 27 May 2004 07:01:33 PM CEST using DSA key ID BCC7863F
gpg: Good signature from "Julian T. J. Midgley <firstname.lastname@example.org>"
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 52D9 1750 5721 7E58 C9E1 A7D5 3027 2F2E BCC7 863F
# this only works for 32Bit systems, for 64Bit you will have to compile from source
apt-get install httperf; # autobench depends on this
sha512sum autobench_2.1.2_i386.deb; # your checksum should be the same as mine...
dpkg -i autobench_2.1.2_i386.deb; # install autobench
(Reading database ... 25339 files and directories currently installed.) # should install without any errors
Preparing to unpack autobench_2.1.2_i386.deb ...
Unpacking autobench (2.1.2) over (2.1.2) ...
Setting up autobench (2.1.2) ...
Processing triggers for man-db (126.96.36.199-5) ...
autobench --single_host --host1 domain.com --uri1 /10K --low_rate 20 --high_rate 200 --rate_step 20 --num_call 10 --num_conn 5000 --timeout 5 --file results.tsv.txt; # run your webserver benchmark / DDoS stresstest
# if your website is down after that... i guess it is not DDoS battle proof...
apt-cache show autobench
Status: install ok installed
Maintainer: Julian T. J. Midgley <email@example.com>
Depends: httperf, libc6 (>= 2.3.2.ds1-4)
Description: Automates the benchmarking of web servers using httperf
autobench is used to to automate web server benchmarking. It runs
httperf against the specified host or hosts, ramping up the number of
requested connections, and logging the results in TSV or CSV format
files. Graphs can be automatically generated using gnuplot.
apt-cache show httperf
Source: httperf (0.9.0-2)
Maintainer: Alexander Reichle-Schmehl <firstname.lastname@example.org>
Depends: libc6 (>= 2.7), libssl1.0.0 (>= 1.0.0)
Description-en: An HTTP server performance tester
httperf is a tool to measure web server performance. It speaks the HTTP
protocol both in its HTTP/1.0 and HTTP/1.1 flavors and offers a variety of
workload generators. While running, it keeps track of a number of performance
metrics that are summarized in the form of statistics that are printed at
the end of a test run.
Tag: admin::benchmarking, implemented-in::c, interface::commandline,
protocol::http, role::program, use::monitor
author documentation: http://www.xenoclast.org/doc/benchmark/HTTP-benchmarking-HOWTO/