自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Web應(yīng)用程序中的rootkit

安全 黑客攻防
Web是近幾年的熱點,各種各樣的服務(wù)都開始網(wǎng)絡(luò)化,用戶的敏感信息也開始不只是存儲在自己的計算機里,而開始存儲在服務(wù)提供商的數(shù)據(jù)庫里。

0×00 為什么我們會有這個想法

毫無疑問,Web是近幾年的熱點,各種各樣的服務(wù)都開始網(wǎng)絡(luò)化,用戶的敏感信息也開始不只是存儲在自己的計算機里,而開始存儲在服務(wù)提供商的數(shù)據(jù)庫里,用戶無須為這些數(shù)據(jù)的存儲和處理消費本地資源,只需要使用一個終端就可以訪問和使用這些數(shù)據(jù),而這些終端往往只需要一個瀏覽器和一些小小的網(wǎng)速就可以了。這樣的服務(wù)非常多,譬如非常典型的一個例子就是webmail,用戶收發(fā)郵件,聯(lián)系朋友或者客戶,只需要打開瀏覽器就足夠了。

同時,對于攻擊者發(fā)生了一個什么樣的變化呢?隨著web的發(fā)展,越來越多的攻擊開始指向web。開始的某些時候,黑客可能可以通過web程序的某些漏洞而直接控制整個web程序,但是隨著廠商安全意識的提高和在安全方面的投入,攻克一個如gmail這樣的應(yīng)用商已經(jīng)不太現(xiàn)實了,那么自然越來越的攻擊開始在用戶使用的終端上,因為一旦能控制某個用戶終端的行為,實際上已經(jīng)能完全控制這個用戶的所有信息了,盡管黑客不能攻陷web服務(wù)器,但已經(jīng)足夠了。

但是這遠遠不夠,因為往往一次攻擊只能取得一次的效果,有沒有可能在攻擊成功之后,只要用戶再次登陸這個web應(yīng)用程序或者再次使用這個web應(yīng)用程序的時候都可以被我們監(jiān)視到呢?有沒有一種類似于后門的方式長期潛伏在應(yīng)用程序里,適時地為我們再次獲得該用戶的應(yīng)用程序權(quán)限,或者為我們一直監(jiān)視用戶的行為呢?入侵服務(wù)器很明顯是不太現(xiàn)實的,那有沒有可能以其他的方式實現(xiàn)呢?

0×01 Web應(yīng)用程序后門的基本思想

傳統(tǒng)的后門都潛伏于被攻陷的系統(tǒng)中,基于應(yīng)用程序的后門為了實現(xiàn)我們指定的一些功能,也必須潛伏于一個環(huán)境當(dāng)中,并且可以在一定條件下得以運行。譬如一些經(jīng)典的windows傳統(tǒng)木馬就是一個程序,在系統(tǒng)啟動的時候啟動起來。如果我們要控制一個應(yīng)用程序,我們也必須需要一些代碼,而且在某些時候能夠運行起來。

那么我們的后門代碼可以存儲在哪里呢?現(xiàn)在的應(yīng)用程序越來越復(fù)雜,用戶可以控制的東西也越來越多,用戶控制的東西最終是存儲在應(yīng)用廠商的數(shù)據(jù)庫里,然后每次用戶需要的時候,這些數(shù)據(jù)才被取出來展現(xiàn)給用戶。那么很容易想到,存儲的問題比較好解決,我們的代碼其實是可以存儲在應(yīng)用廠商的數(shù)據(jù)庫里的,甚至在某些條件下的Cookie也是可以作為代碼存儲地,只要它將進入到我們所期望的邏輯。

那么我們的后門代碼怎么樣才可以運行呢?數(shù)據(jù)在不被執(zhí)行的時候,永遠不會有什么危害,所以執(zhí)行是web應(yīng)用程序后門的一個難點,不過也并非不可能。對于一個web應(yīng)用程序,數(shù)據(jù)最終是要處理好展現(xiàn)給用戶終端的,這里的終端就是用戶瀏覽器,如果這些數(shù)據(jù)在輸出的時候沒有進行安全處理,是很有可能發(fā)生一個xss漏洞從而在用戶瀏覽器里執(zhí)行js代碼的,利用js代碼,其實就已經(jīng)控制了瀏覽器了。現(xiàn)在的web應(yīng)用程序變得非常復(fù)雜,在進行安全處理的時候往往關(guān)注于外界來的數(shù)據(jù)的安全處理,而卻可能忽視來自于自身數(shù)據(jù)庫的數(shù)據(jù)的處理,拿一個webmail為例子,一般的思路往往把安全注重于在別人發(fā)送過來的電子郵件上(數(shù)據(jù)來自于外部),而對于用戶自身的數(shù)據(jù)(譬如郵件回復(fù)地址等個人設(shè)置選項,別人是無法控制的)卻缺乏安全的過濾,這就讓我們的后門獲得執(zhí)行的機會。

那么我們的后門代碼可以做什么呢?像上面所說,我們的代碼執(zhí)行的地點的不同決定了它可以做不同的事情,實現(xiàn)不同的目的。譬如如果我們的代碼在每一次登錄進應(yīng)用程序都會執(zhí)行的話,那我們就可以每次都可以獲取到用戶最新的登錄信息從而登錄進應(yīng)用程序,這種機會盡管非常小,但是不是沒有哦!另外某些應(yīng)用程序提供些特殊的功能,譬如webmail可能會提供郵件轉(zhuǎn)發(fā)的功能,那么我們可以利用這個功能來實現(xiàn)后門,但是這樣是非常不隱蔽的,用戶很可能會在進行郵箱設(shè)置時發(fā)現(xiàn)我們所做的修改,這個時候如果在同一頁面存在xss漏洞的話,我們就可以將這段設(shè)置從用戶的瀏覽器里抹除掉,并且對用戶在該頁面進行提交的動作進行監(jiān)視,完全實現(xiàn)一個類似于rootkit的功能。我們所能作的,完全取決于應(yīng)用程序自身的邏輯和我們的exploit點所處的位置。

0×02 實際應(yīng)用中的一些例子

在07年的時候,我們曾經(jīng)報告給Yahoo一個漏洞,在yahoo webmail的常規(guī)首選項里由于對回復(fù)地址的過濾存在問題,導(dǎo)致在這里寫入exploit代碼,可以在用戶登錄的時候就執(zhí)行,從而實現(xiàn)一個后門,在每一次用戶登錄進yahoo webmail的時候就可以觸發(fā)。當(dāng)時的exploit代碼:

在回復(fù)地址里寫上:

",aaa:alert(document.cookie),b:"@80sec.com

這部分代碼將在登陸時出現(xiàn)在頁面的js代碼中,并且由于對惡意字符的過濾不嚴(yán)格,導(dǎo)致執(zhí)行js代碼。

該漏洞已經(jīng)得到修復(fù)。最近在QQ Mail里出現(xiàn)的一個漏洞也證明了在實際應(yīng)用中的可能性,在QQ Mail的常規(guī)設(shè)置面板里存在一個xss漏洞,一般安全人員對于這種漏洞都會忽視,因為這里的漏洞必須要求用戶已經(jīng)登錄,并且自己對自己實現(xiàn)xss攻擊。但是一旦將漏洞利用到后門上,將會非常美妙,因為通過這里的xss可以修改用戶在設(shè)置面板里所看到的任何東西,并且對用戶的提交做自己的預(yù)處理,用戶可能永遠也不知道在這背后被人修改了什么,而這被修改的東西往往是非常重要的東西,譬如郵件轉(zhuǎn)發(fā)地址。

0×03 啟示錄

現(xiàn)在的web應(yīng)用越來越復(fù)雜,各種客戶端技術(shù)如json,ajax,flash的使用,使得即使在客戶端往往也存在著各種各樣的輸入輸出邏輯,這也提供了更多的可能供黑客利用的地方。我們更傾向于將web應(yīng)用作為一個獨立的系統(tǒng)來看待,數(shù)據(jù)的計算存儲都是在遠程的服務(wù)器上進行(類似于傳統(tǒng)的硬件資源),但是數(shù)據(jù)的展示和交互卻是在客戶端上(類似于傳統(tǒng)的操作系統(tǒng)),在這個操作系統(tǒng)上執(zhí)行的任意的代碼都可能給這個系統(tǒng)帶來嚴(yán)重的安全問題,這樣我們在評估一個漏洞的嚴(yán)重性的時候,也需要結(jié)合具體的應(yīng)用程序的上下文,不同的地方相同的漏洞執(zhí)行相同的代碼,得到的效果也是不同的,而在考慮應(yīng)用程序安全性的時候也該考慮那些來自于用戶的看起來比較可信的數(shù)據(jù)了。

轉(zhuǎn)載自:Web應(yīng)用程序中的rootkit:http://www.80sec.com/webapp-rootki.html

【編輯推薦】

  1. 徹底無處可逃:研究人員展示BIOS級底層安全攻擊
  2. 內(nèi)核級Rootkit技術(shù)入門
  3. 黑客高手為您講解目前流行的四種后門技術(shù)
  4. Rootkit隱形技術(shù)入門
  5. 《X戰(zhàn)警前傳》提前泄露 FBI怒抄0day組織大本營
責(zé)任編輯:潘宇杰 來源: [80sec]
相關(guān)推薦

2015-02-02 15:46:59

Web應(yīng)用架構(gòu)大數(shù)據(jù)

2009-07-29 10:30:53

Web應(yīng)用程序ASP.NET

2009-07-09 16:47:26

Servlet的Web

2017-09-21 10:43:55

web程序語言

2010-05-20 09:48:36

2011-03-22 14:12:17

LAMP

2012-04-19 09:34:21

ibmdw

2009-01-16 09:22:40

Web應(yīng)用程序Web程序管理Web服務(wù)

2009-02-27 17:00:25

2010-03-09 13:27:23

Web 2.0應(yīng)用程序

2023-01-09 17:04:24

2013-11-19 15:35:01

2010-02-01 14:05:03

2012-03-20 09:20:40

Go語言

2012-06-11 09:37:41

2013-08-08 09:48:10

Web

2009-01-03 14:25:10

ibmdwWeb

2009-09-22 12:22:54

ibmdwLotus

2014-02-19 15:38:42

2022-02-21 14:41:21

APIWeb安全
點贊
收藏

51CTO技術(shù)棧公眾號