Oracle也有注入漏洞
更新時間:2007年03月07日 00:00:00 作者:
正在看的ORACLE教程是:Oracle也有注入漏洞。近期,MSN、江民等知名網(wǎng)站相繼受到了黑客的威脅和攻擊,一時間網(wǎng)絡(luò)上風聲鶴唳。本報編輯部接到本文作者(熾天使)的電話,他詳細講述了發(fā)現(xiàn)國內(nèi)最大域名提供商(以下簡稱“X網(wǎng)”)網(wǎng)站漏洞的經(jīng)過。本報編輯部立即和X網(wǎng)的首席工程師進行了交流,確認了漏洞的真實性,該工程師也及時修補了該漏洞。
發(fā) 現(xiàn)
10月18日,筆者手上的項目做完以后,便和網(wǎng)上的朋友天南海北地聊天。聽到朋友網(wǎng)站的開張,心里也是非常的羨慕。
什么時候我才能擁有自己的主機和域名……想到申請主機和域名,筆者自然想到了X網(wǎng)(在中國太有名嘛^_^)。順手打開其主頁,突然看到了主頁右上角的會員登錄界面,這讓筆者“賊”心又起——要是能發(fā)現(xiàn)什么漏洞就好了,反正現(xiàn)在也沒什么事情。
筆者拿出端口掃描工具掃了一下X網(wǎng)的服務器,竟然什么漏洞都沒有發(fā)現(xiàn),真是郁悶!轉(zhuǎn)念一想,畢竟X網(wǎng)也做了10多年了,這些大型網(wǎng)站服務器的安全措施恐怕不會少——映射,外加IDS和防火墻,補丁肯定也早打全了,說不定還有蜜罐程序等著你呢!
過了不久,筆者突然發(fā)現(xiàn)了一個情況,X網(wǎng)原來是用ASP寫的。前段時間ASP+MSSQL的注入漏洞可是鬧得沸沸揚揚,不少網(wǎng)站都吃了苦頭。這里會有這類問題嗎?不管了,先試一試再說。筆者隨手找了一個購買虛擬主機的頁面:http://www.???.cn/HAS_Client/buy/vir_host/vir_ host1_SB.asp?PackageID=10341。先用經(jīng)典的方法來測試了一下,返回類型均為不匹配: ‘CDbl'錯誤。X網(wǎng)用的什么數(shù)據(jù)庫呢?筆者在參數(shù)后面加上一個單引號,再提交請求,頁面返回了一段報錯信息。
原來用的是Oracle,一般Oracle數(shù)據(jù)庫出現(xiàn)這樣的返回錯誤,都可能存在漏洞的。這和MSSQL未閉合引號的返回錯誤差不多,不過MSSQL出現(xiàn)這樣的錯誤提示,我們幾乎可以肯定存在注入漏洞了,而Oracle則要再進一步確定。
確 認
以下幾步為入侵的基礎(chǔ),非常重要。我們分別在IE中輸入:
http://www.???.cn/HAS_Client/buy/vir_ host/vir_host1_SB.asp?PackageID=10341‘a(chǎn)nd%200<>(select%20count(*)%20from%20all_tables)%20and%20'1‘='1;
http://www.???.cn/HAS_Client/buy/vir_ host/vir_host1_SB.asp?PackageID=10341‘a(chǎn)nd%200<>(select%20count(*)%20from%20user_tables)%20and%20'1‘='1;
http://www.???.cn/HAS_Client/buy/vir _host/vir_host1_SB.asp?PackageID=10341‘a(chǎn)nd%200<>(select%20count(*)%20 from%20user_tab_columns)%20and%20'1‘='1;
以上這些是筆者猜測的Oracle的系統(tǒng)表:all_tables,user_tables和user_tab_col umns。如果沒有,就沒戲了。
沒想到頁面全都返回成功,這說明筆者猜測的系統(tǒng)表都是存在的,同時也說明提交的SQL語句,程序已經(jīng)做了處理。
至此,筆者確認X網(wǎng)存在注入漏洞。
利 用
數(shù)據(jù)庫可以說是一個站點的重中之重,通過筆者發(fā)現(xiàn)的這個漏洞,我們完全可以訪問并修改數(shù)據(jù)庫中的所有數(shù)據(jù)。不光是用戶賬號,對于所有存在數(shù)據(jù)庫中的數(shù)據(jù),我們都可以獲取并修改。
在開放Public組的UTL_File權(quán)限的情況下,其實還可以利用Union查詢、讀取服務器上的文件,這點和PHP+MYSQL注入漏洞中的load_file()有些相似,當然也可以執(zhí)行Update之類的。只是在Oracle注入漏洞研究上,筆者還是個菜鳥,沒能實現(xiàn)插入數(shù)據(jù)和進行更高級的注入攻擊。在整個測試漏洞的過程中,由于利用了NBSI的后臺掃描功能和WPE,大大提高了效率。
現(xiàn)在,筆者已經(jīng)可以得到X網(wǎng)所有用戶的信息,只要登錄進去,就能輕易更改他們的域名指向。如果筆者是一個惡意攻擊者,只要把某個商業(yè)站點的域名指向指到自己制作的一個假站點上,那么用戶登錄這個商業(yè)站點的賬號信息就毫無安全可言了。其實此漏洞和域名劫持有些相似,只要你是X網(wǎng)的用戶,筆者肯定就能黑了你的站點。對于X網(wǎng)來說,其所有的業(yè)務都有可能受到影響,數(shù)據(jù)可以被任意獲取竄改。
其他的一些危害也是顯而易見的,就不再做具體說明了。
修 補
要防止這類注入漏洞其實很簡單,只要對URL中提交的參數(shù)進行嚴格的過濾,去除一些比如單引號、SQL關(guān)鍵字等字符即可。具體做法:利用程序檢查提交的URL中問號后的字符串,一旦發(fā)現(xiàn)單引號、分號、SQL關(guān)鍵字等特殊字符,馬上就 會跳轉(zhuǎn)到一個自定義的Error頁面。
對于X網(wǎng)的網(wǎng)管來說,解決這個問題其實花的時間不到5分鐘。另外,X網(wǎng)也應加強一下數(shù)據(jù)庫中的數(shù)據(jù)安全,至少加個密吧!
順便提一下,國內(nèi)還有很多站點都存在這樣的注入漏洞。
編 后
自從經(jīng)歷了許許多多蠕蟲和病毒的攻擊后,大家普遍對服務器的安全十分關(guān)注,有些站點甚至只開了80端口。如今在服務器上運行的代碼的安全,就顯得格外重要了。代碼上一個小小的疏忽,往往就可能造成全局的崩潰。
今天有數(shù)據(jù)庫的注入漏洞,明天又將出現(xiàn)什么呢?
發(fā) 現(xiàn)
10月18日,筆者手上的項目做完以后,便和網(wǎng)上的朋友天南海北地聊天。聽到朋友網(wǎng)站的開張,心里也是非常的羨慕。
什么時候我才能擁有自己的主機和域名……想到申請主機和域名,筆者自然想到了X網(wǎng)(在中國太有名嘛^_^)。順手打開其主頁,突然看到了主頁右上角的會員登錄界面,這讓筆者“賊”心又起——要是能發(fā)現(xiàn)什么漏洞就好了,反正現(xiàn)在也沒什么事情。
筆者拿出端口掃描工具掃了一下X網(wǎng)的服務器,竟然什么漏洞都沒有發(fā)現(xiàn),真是郁悶!轉(zhuǎn)念一想,畢竟X網(wǎng)也做了10多年了,這些大型網(wǎng)站服務器的安全措施恐怕不會少——映射,外加IDS和防火墻,補丁肯定也早打全了,說不定還有蜜罐程序等著你呢!
過了不久,筆者突然發(fā)現(xiàn)了一個情況,X網(wǎng)原來是用ASP寫的。前段時間ASP+MSSQL的注入漏洞可是鬧得沸沸揚揚,不少網(wǎng)站都吃了苦頭。這里會有這類問題嗎?不管了,先試一試再說。筆者隨手找了一個購買虛擬主機的頁面:http://www.???.cn/HAS_Client/buy/vir_host/vir_ host1_SB.asp?PackageID=10341。先用經(jīng)典的方法來測試了一下,返回類型均為不匹配: ‘CDbl'錯誤。X網(wǎng)用的什么數(shù)據(jù)庫呢?筆者在參數(shù)后面加上一個單引號,再提交請求,頁面返回了一段報錯信息。
原來用的是Oracle,一般Oracle數(shù)據(jù)庫出現(xiàn)這樣的返回錯誤,都可能存在漏洞的。這和MSSQL未閉合引號的返回錯誤差不多,不過MSSQL出現(xiàn)這樣的錯誤提示,我們幾乎可以肯定存在注入漏洞了,而Oracle則要再進一步確定。
確 認
以下幾步為入侵的基礎(chǔ),非常重要。我們分別在IE中輸入:
http://www.???.cn/HAS_Client/buy/vir_ host/vir_host1_SB.asp?PackageID=10341‘a(chǎn)nd%200<>(select%20count(*)%20from%20all_tables)%20and%20'1‘='1;
http://www.???.cn/HAS_Client/buy/vir_ host/vir_host1_SB.asp?PackageID=10341‘a(chǎn)nd%200<>(select%20count(*)%20from%20user_tables)%20and%20'1‘='1;
http://www.???.cn/HAS_Client/buy/vir _host/vir_host1_SB.asp?PackageID=10341‘a(chǎn)nd%200<>(select%20count(*)%20 from%20user_tab_columns)%20and%20'1‘='1;
以上這些是筆者猜測的Oracle的系統(tǒng)表:all_tables,user_tables和user_tab_col umns。如果沒有,就沒戲了。
沒想到頁面全都返回成功,這說明筆者猜測的系統(tǒng)表都是存在的,同時也說明提交的SQL語句,程序已經(jīng)做了處理。
至此,筆者確認X網(wǎng)存在注入漏洞。
利 用
數(shù)據(jù)庫可以說是一個站點的重中之重,通過筆者發(fā)現(xiàn)的這個漏洞,我們完全可以訪問并修改數(shù)據(jù)庫中的所有數(shù)據(jù)。不光是用戶賬號,對于所有存在數(shù)據(jù)庫中的數(shù)據(jù),我們都可以獲取并修改。
在開放Public組的UTL_File權(quán)限的情況下,其實還可以利用Union查詢、讀取服務器上的文件,這點和PHP+MYSQL注入漏洞中的load_file()有些相似,當然也可以執(zhí)行Update之類的。只是在Oracle注入漏洞研究上,筆者還是個菜鳥,沒能實現(xiàn)插入數(shù)據(jù)和進行更高級的注入攻擊。在整個測試漏洞的過程中,由于利用了NBSI的后臺掃描功能和WPE,大大提高了效率。
現(xiàn)在,筆者已經(jīng)可以得到X網(wǎng)所有用戶的信息,只要登錄進去,就能輕易更改他們的域名指向。如果筆者是一個惡意攻擊者,只要把某個商業(yè)站點的域名指向指到自己制作的一個假站點上,那么用戶登錄這個商業(yè)站點的賬號信息就毫無安全可言了。其實此漏洞和域名劫持有些相似,只要你是X網(wǎng)的用戶,筆者肯定就能黑了你的站點。對于X網(wǎng)來說,其所有的業(yè)務都有可能受到影響,數(shù)據(jù)可以被任意獲取竄改。
其他的一些危害也是顯而易見的,就不再做具體說明了。
修 補
要防止這類注入漏洞其實很簡單,只要對URL中提交的參數(shù)進行嚴格的過濾,去除一些比如單引號、SQL關(guān)鍵字等字符即可。具體做法:利用程序檢查提交的URL中問號后的字符串,一旦發(fā)現(xiàn)單引號、分號、SQL關(guān)鍵字等特殊字符,馬上就 會跳轉(zhuǎn)到一個自定義的Error頁面。
對于X網(wǎng)的網(wǎng)管來說,解決這個問題其實花的時間不到5分鐘。另外,X網(wǎng)也應加強一下數(shù)據(jù)庫中的數(shù)據(jù)安全,至少加個密吧!
順便提一下,國內(nèi)還有很多站點都存在這樣的注入漏洞。
編 后
自從經(jīng)歷了許許多多蠕蟲和病毒的攻擊后,大家普遍對服務器的安全十分關(guān)注,有些站點甚至只開了80端口。如今在服務器上運行的代碼的安全,就顯得格外重要了。代碼上一個小小的疏忽,往往就可能造成全局的崩潰。
今天有數(shù)據(jù)庫的注入漏洞,明天又將出現(xiàn)什么呢?
相關(guān)文章
oracle查詢鎖表及解鎖,修改表字段名與復制表結(jié)構(gòu)和數(shù)據(jù)的方法
今天小編就為大家分享一篇關(guān)于oracle查詢鎖表及解鎖,修改表字段名與復制表結(jié)構(gòu)和數(shù)據(jù)的方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2018-12-12Oracle數(shù)據(jù)庫的啟動和關(guān)閉順序?qū)嵗v解
這篇文章主要介紹了Oracle數(shù)據(jù)庫的啟動和關(guān)閉順序?qū)嵗v解的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-07-07oracle 動態(tài)AdvStringGrid完美示例 (AdvStringGrid使用技巧/Cells)
本方法實現(xiàn)用常量和常量數(shù)組完美創(chuàng)建和控制動態(tài)TAdvStringGrid。2009-06-06Windows10安裝Oracle19c數(shù)據(jù)庫詳細記錄(圖文詳解)
這篇文章主要介紹了Windows10安裝Oracle19c數(shù)據(jù)庫詳細記錄,文中給大家介紹了修改密碼的方法,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-05-05