权限维持:Win2008以上的iis

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了权限维持:Win2008以上的iis相关的知识,希望对你有一定的参考价值。

参考文章:https://mp.weixin.qq.com/s/z1d3yvp14GWakyonTh_b8A

浅谈原理:

在.Net中,HttpModule 其实就是实现了 IHttpModule 接口的程序集。在 IIS 中 Http 请求会通过一系列 HttpModule,而在经过这些 HttpModule 时,这些 HttpModule 对 Http 请求具有完全的控制权。

而我们这时就可以根据这些 http 请求判断是否是后门请求如果是就触发后门,如果不是就什么也不做交给后面的模块,在经过所有的 HttpModule 之后,它会被 HttpHandler 处理,在 HttpHandler 处理完以后 http 请求返回包会再一次经历 HttpModule,最后到达客户端!

操作流程:

1、创建一个目录file,再创建一个images目录,配置web.config文件如下

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <modules>
      <add name="IIS_backdoor" type="IIS_backdoor_dll.IISModule" />
        </modules>
    </system.webServer>
</configuration>

2、在images目录下创建bin目录,放置后门文件,文件名字随意,但是需要和web.config中的名字对应

3、然后对images目录设置转换为应用程序,如果直接在根目录的话就不需要了,因为根目录本身就是应用程序,我们这里为了隐蔽,参考了黑无常的做法

4、运行后门程序,发现执行命令成功

总结

1、基于80端口的后门,比较隐蔽
2、注意的坑 应用池需要设置为DefaultAppPool

继续走吧,这里我们用C来实现一个模块的编写

注意的:

Ensure that you have specified __stdcall for your exported functions, or that you have configured compilation by using the __stdcall (/Gz) calling convention,意思是确保声明的导出函数的调用约定位__stdcall类型

Ensure that IIS has loaded HelloWorld.dll,确保你加载了指定的模块文件,可以通过appcmd.exe module list来进行查看

Ensure that you have added the correct RegisterModule export to your definition file,意思是色湖之了RegisterModule位导出函数在def的我呢见中

以上是关于权限维持:Win2008以上的iis的主要内容,如果未能解决你的问题,请参考以下文章

IIS SSL取消证书合法性验证

windows2008iis怎么配置播放mp4

windows 2008 r2怎么彻底删除iis和配置文件

将 SQL CE 4 部署到 IIS 7 - 需要特殊权限?

win server 2008 R2 安装IIS

win2008的IIS7+PHP5.3.8,速度奇慢,为啥