建議:解讀ASP程式中通用防SQL注入攻擊程式碼SQL注入一般的http請求不外乎get和post,所以只要我們在檔案中過濾所有post或get請求中的參數資訊中非法字符,就可以防SQL注入攻擊。 IIS傳遞給asp.dll的get請求是以字串的形式,當傳遞給Request.QueryString資料後,asp解析器會分析Request.QueryString
首先介紹編輯器的一些預設特徵:預設登陸admin_login.asp
預設資料庫db/ewebeditor.mdb
預設帳號admin密碼admin或admin888
在baidu/google搜尋inurl:ewebeditor
數萬的站起碼有數千個是具有預設特徵的,那麼試試看預設後台
http://www.xxx.com.cn/admin/ewebeditor/admin_login.asp
試預設帳號密碼登陸。
利用eWebEditor獲得WebShell的步驟大致如下:
1.確定網站使用了eWebEditor。一般來說,我們只要注意發表貼文(文章)的頁面是否有類似做了記號的圖標,就可以大致做出判斷了。
2、查看原始碼,找到eWebEditor的路徑。點擊查看原始碼,看看原始碼中是否存在類似<iframesrc='/edit/ewebeditor.asp?id=content&style=web'frameborder=0scrolling=nowidth='550'HEIGHT='350'></iframe>的語句。其實只有發現了存在這樣的語句了,才可以真正確定這個網站使用了eWebEditor。然後記下src='***'中的***,這就是eWebEditor路徑。
3、存取eWebEditor的管理登入頁面。 eWebEditor的預設管理頁面為admin_login.asp,和ewebeditor.asp在同一目錄下。以上面的路徑為例,我們造訪的位址為:http://www.***.net/edit/admin_login.asp,看看是否出現了登入頁面。
如果沒有看到這樣的頁面,表示管理員已經刪除了管理登入頁面,呵呵,還等什麼,走人啊,換個地方試試。不過一般來說,我很少看到有哪個管理員刪了這個頁面,試試預設的使用者名稱:admin,密碼:admin888。怎麼樣?成功了吧(不是預設帳號請看後文)!
4.增加上傳文件類型。點選樣式管理,隨便選擇清單中底下的某一個樣式的設置,為什麼要選擇清單中底下的樣式?因為eWebEditor自帶的樣式是不允許修改的,當然你也可以拷貝一個新的樣式來設定。
然後在上傳的文件類型中增加asa類型。
5.上傳ASP木馬,獲得WebShell。接下來將ASP木馬的副檔名修改為asa,就可以簡單上傳你的ASP木馬了。不要問我怎麼上傳啊,看到預覽了嗎?點擊預覽,然後選擇插入其它文件的按鈕就可以了。
漏洞原理
漏洞的使用原理很簡單,請看Upload.asp檔:
任何情況下都不允許上傳asp腳本文件
sAllowExt=Replace(UCase(sAllowExt),ASP,)
因為eWebEditor只是過濾了ASP檔案。記得我第一次使用eWebEditor時就在納悶:既然作者已經知道asp檔需要過濾,為什麼不同時過濾asa、cer等檔案呢?也許這就是對免費用戶不負責任的表現吧!
進階應用
eWebEditor的漏洞利用還有一些技巧:
1、使用預設使用者名稱和密碼無法登入。
請試試直接下載db目錄下的ewebeditor.mdb文件,用戶名和密碼在eWebEditor_System表中,經過了md5加密,如果無法下載或無法破解,那就當自己的運氣不好了。
2.加了asa類型後發現還是無法上傳。
應該是站長懂點代碼,自己修改了Upload.asp文件,但是沒有關係,按照常人的思維習慣,往往會直接在sAllowExt=Replace(UCase(sAllowExt),ASP,)一句上修改,我就看見過一個站長是這樣修改的:
sAllowExt=Replace(Replace(Replace(Replace(Replace(UCase(sAllowExt),ASP,),CER,),ASA,),CDX,),HTR,)
猛一看什麼都過濾了,但是我們只要在上傳類型中增加aaspsp,就可以直接上傳asp檔了。呵呵,是不是天才的想法? aaspsp過濾了asp字元後,反而變成了asp!順便告訴大家一個秘密,其實動網論壇7.0sp2中也可以利用類似的方法繞過對副檔名的過濾。
3.上傳了asp檔後,卻發現該目錄沒有執行腳本的權限。
呵呵,真是好笨啊,上傳類型可以改,上傳路徑不是也可以修改的嗎?
4.已經使用了第2點中的方法,但是asp類型還是無法上傳。
看來站長肯定是個寫asp的高手,但是我們還有最後一招來對付他:eWebEditor能夠設定自動保存遠端檔案的類型,我們可以加入asp類型。但是如何才能讓遠端存取的asp檔案能夠以原始碼形式保存呢?方法是很多的,最簡單的方法是將IIS中的應用程式檔案映射中的asp刪除。
分享:用紅色顯示ASP查詢資料時所得到的記錄關鍵字% response.write replace(rs(字段X),searchname,font color=#FF0000 searchname /font) % 說明:rs為記錄集對象,searchname為搜尋的關鍵字轉載自HTMer[http://www.htmer. com/]