ASP代码审计学习笔记 -4.命令执行漏洞

简介:   命令执行漏洞:   保存为cmd.asp,提交链接: http://localhost/cmd.asp?ip=127.0.0.1 即可执行命令  利用方式: http://localhost/cmd.asp?ip=127.0.0.1|set   漏洞修复方式一: 把输入的值当作参数来执行,避免命令执行漏洞,可能会占用系统资源,不够优化。

 

 

命令执行漏洞:

 

保存为cmd.asp,提交链接: http://localhost/cmd.asp?ip=127.0.0.1 即可执行命令

<%ip=request("ip")
response.write server.createobject("wscript.shell").exec("cmd.exe /c ping "&ip&"").stdout.readall
%>

 利用方式:

http://localhost/cmd.asp?ip=127.0.0.1|set

 

漏洞修复方式一:

把输入的值当作参数来执行,避免命令执行漏洞,可能会占用系统资源,不够优化。

<%
 
ip=request("ip")
response.write server.createobject("wscript.shell").exec("cmd.exe /c ping """&ip&"""").stdout.readall

%>

  

 

漏洞修复方式二:

利用正则匹配ip,不符合不执行,比较合理的解决方法。

<%

ip=request("ip")
If RegExpTest(ip) then
	response.write server.createobject("wscript.shell").exec("cmd.exe /c ping "&ip&"").stdout.readall
else
	response.write("bad ip")
end if

Function RegExpTest(strng) 
	Dim regEx,retVal,patrn
	Set regEx = New RegExp 
	patrn="^(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[0-9]{1,2})(\.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[0-9]{1,2})){3}$"
	regEx.Pattern = patrn 
	regEx.IgnoreCase = False 
	retVal = regEx.Test(strng) 
	If retVal Then 
	RegExpTest = True
	Else 
	RegExpTest = False
	End If 
End Function

%>

  

 

目录
相关文章
|
4月前
|
SQL 小程序 Shell
PHP代码审计(三)php中代码执行&&命令执行函数
string system(string command,int &return_var) 可以用来执行系统命令并直接将相应的执行结果输出 system() 输出并返回最后一行shell结果。
53 0
|
10月前
|
安全 Java PHP
代码审计——命令执行详解
代码审计——命令执行详解
133 0
|
11月前
|
开发框架 .NET Apache
301重定向代码合集(iis,asp,php,asp.net,apache)
301重定向代码合集(iis,asp,php,asp.net,apache)
274 0
|
SQL 移动开发 供应链
网站代码审计漏洞查找技术是如何炼成的?
常常许多人问过那样一个难题,网络黑客是确实那么强大吗?就现阶段来讲,在黑客游戏或影视剧中,网络黑客所展现的工作能力与实际是相差无异的(黑客帝国此类种类以外)。唯一的差别是影视剧中的主人公可以瞬间控制供电系统,导致大城市电力工程偏瘫。走在路上任意监听所有人。
325 0
网站代码审计漏洞查找技术是如何炼成的?
|
安全 PHP .NET
通过代码审计找出网站中的XSS漏洞实战(三)
一、背景 笔者此前录制了一套XSS的视频教程,在漏洞案例一节中讲解手工挖掘、工具挖掘、代码审计三部分内容,准备将内容用文章的形式再次写一此,前两篇已经写完,内容有一些关联性,其中手工XSS挖掘篇地址为快速找出网站中可能存在的XSS漏洞实践(一)https://segmentfault.com/a/1190000016095198 本文主要记录通过代码审计的方式进行XSS漏洞挖掘,分为了找出关键位置,正向审计,反向审计三个部分,审计的系统为permeate渗透测试系统,测试系统的搭建可以参考笔者的第一篇文章。
1659 0
|
XML JSON 前端开发
ASP.NET Core 2 学习笔记(九)模型绑定
原文:ASP.NET Core 2 学习笔记(九)模型绑定 ASP.NET Core MVC的Model Binding会将HTTP Request数据,以映射的方式对应到参数中。基本上跟ASP.NET MVC差不多,但能Binding的来源更多了一些。
1289 0
|
SQL .NET
ASP代码审计学习笔记-1.SQL注入
ASP注入漏洞   一、SQL注入的原因 按照参数形式:数字型/字符型/搜索型 1、数字型sql查询 sql注入原因: ID=49 这类注入的参数是数字型,SQL语句原貌大致如下: id=request.
1031 0
|
安全 .NET 开发框架
ASP代码审计学习笔记 -2.XSS跨站脚本
XSS漏洞: 漏洞代码: 漏洞利用: 漏洞修复: Server.HTMLEncode(string):HTMLEncode 方法对一段指定的字符串应用 HTML 编码。修复代码如下:   
847 0
|
安全 .NET PHP
ASP代码审计学习笔记 -3.上传漏洞
1、ASP上传过程抓包分析: POST /4.asp HTTP/1.1 Host: 192.168.1.102 User-Agent: Mozilla/5.0 (Windows NT 10.
1671 0
|
Web App开发 .NET 测试技术
使用代码测试ASP.NET MVC2执行流程
测试代码点击这里下载,通过此代码也剖析了MVC2的扩展点和扩展方式(其实在不调用基类的情况下填满所有重写的方法也就完成了大半个MVC框架)。 MVC执行流程如下(可以直接下载代码运行页面查看此结果): ----------------开始执行TestMvcApplication 类的 ...
874 0