推奨:ASPコンポーネントのないページングの実装のアイデアとコードコンポーネントフリーのページネーションは信じられないほどです。この記事の効果を見ることで知っているでしょう。以下の具体的な実装を共有しましょう。興味のある友達はそれを参照できます。
タイトル:ASP EWEBEDITOR v3.8列のディレクトリの脆弱性(他のバージョンはテストです)
脆弱性ファイル:ASP/Browse.asp
脆弱性が発生します:
sub initparam()
stype = ucase(trim(request.querystring(type)))sstylename = trim(request.querystring(style))scusdir = trim(request.querystring(cusdir))dim i、astyleconfig、astyleconfig、bvalidstylebvalidstyle = for for i = astylefig) |||)if lcase(sstylename)= lcase(astyleconfig(0))thenbvalidStyle = trueBalidStyle forend ifnextif bvalidStyle = false sonoutscript( 'invalid style。'))end ifsbaseurl = astyleconfig(19)nallowse = nallowse = nallowse = nallowse clng(astyleconfig(43))ncusdirflag = clng(astyleconfig(61))if nallowbrowse <> 1 sonoutscript(alert( 'browowser!'))の場合、ncusdirflag <> 1thencusdir = eLSeSdir = scusdir = scusdir = scusdir = scusdir = scusdir = eLSESDIR = eLSESDIR = eLSESDIR = ELSESDIR = ELSESDIRの場合または左(scusdir、1)=。または右(scusdir、1)=。または、instr(scusdir、./)> 0またはinstr(scusdir、 /。)> 0またはstr(scusdir、//)> 0 thenscusdir = elseif right(scusdir、1)<> /end ifend ifend ifend ifsuproddir = astyleconfig(3) thensuploaddir = ../&suploaddirend ifselect case sbaseurlcase 0scontentpath = astyleconfig(23)case 1scontentpath = relativepath2rootpath(suploaddir)ケースscusdirscontentpath = scontentpath&scusdirselect case stypecase filesallowext = case mediasallowext = rm | mp3 | wav | mid | midi | ra | avi | mpg | mpeg | asx | wma | wma | movcase flashsallowext = swfcase elsesalext = jpgrdg | jpgig suploaddirsdir = trim(request(dir)) '1。 dir = ../'2と仮定します。 dir = ... // '3を仮定します。 dir = ... /// sdir =置換(sdir、/、/) 'フィルター1sdir = felpper(sdir、../、)'フィルター2'1を想定します。ここでフィルタリングされていますsdir =置き換え(sdir、./、) 'フィルター3'2もここに搭載されています' 3はここにあります.../。もっと面白い!多くのCMSがこのようにフィルタリングされているようです。 [ /color] sdir <> thenif checkvaliddir(server.mappath(suploaddir&sdir))= true thenscurrdir = suploaddir&sdir& /elsesdir = end ifend sub sub sub共有:ASPの実際のIPアドレスを取得する方法ASPでrequest.servervariables(remote_addr)を使用してクライアントのIPアドレスを取得しますが、クライアントがプロキシサーバーを使用してアクセスすると、プロキシサーバーのIPアドレスが取得されます。実際のクライアントIPアドレスではありません。プロキシサーバーを介してクライアントの実際のIPアドレスを取得するには、request.servervariables(hを使用する必要があります。