我的ASP.NET网站遭可疑链接注入,求排查方法
ASP.NET网站恶意注入排查指南
问题描述
我有一个ASP.NET网站,近期遭恶意注入:页面被添加了全屏覆盖的div(点击任意位置会跳转至第三方站点),同时引入了伪装成jQuery的恶意外部脚本,但本地代码中找不到相关URL痕迹。
可疑代码片段
全屏跳转div:
<div id="div642028" style="width: 100%; height: 100%; position: fixed; left: 0px; top: 0px; z-index: 99999999;"><a href="http://c822c1b63853ed273b89687ac505f9fa.onepro.club/redirect?u=aHR0cHM6Ly91cy51c2FkYXkuYml6Lz91dG1fbWVkaXVtPTYyMTQ0MzY3OGNlNzI1YzE1NjkxMjgzMTdlNDA3ZDg4ODI2NWVkZGUmdXRtX2NhbXBhaWduPW15Y2Ft" target="_blank" style="display: block; width:100%; height: 100%; cursor: default"></a></div>
伪装成jQuery的恶意脚本地址:
https://abu.usaday.biz/jquery-3.6.0.min.js
注:上述链接已被Virustotal、Hybrid Analysis标记为潜在恶意。
可能的注入方式
- 服务器端文件篡改:攻击者通过弱密码、未修补的ASP.NET漏洞登录服务器,修改母版页、布局文件或全局脚本文件,注入恶意代码。
- 数据库注入:网站存在SQL注入漏洞,攻击者在存储的动态内容(文章、配置项等)中插入恶意HTML/JS,页面渲染时被加载。
- 第三方组件漏洞:使用的NuGet包、CMS插件存在远程代码执行漏洞,被攻击者利用注入代码。
- 资源劫持:网站引用的CDN或外部资源被劫持,恶意脚本替换了正常资源。
- XSS存储型注入:攻击者通过XSS漏洞将恶意代码写入localStorage/sessionStorage,页面加载时读取并注入(若恶意代码持续存在则该可能性较低)。
排查步骤
- 检查核心布局文件:优先查看母版页(
.master)、布局视图(_Layout.cshtml)、全局头部/尾部包含文件,这类文件会被所有页面引用,是注入高发位置。 - 扫描服务器文件:用服务器文件对比工具,检查近期修改过的ASPX、CSHTML、JS、CSS文件,排查陌生代码。
- 排查数据库内容:查询站点配置、文章内容、用户自定义字段等动态存储内容,看是否包含恶意HTML/JS片段。
- 检查NuGet依赖:运行
dotnet list package --outdated查看存在漏洞的旧版本依赖,重点关注页面渲染、资源加载类包。 - 监控HTTP请求:用浏览器开发者工具或Fiddler查看页面所有加载请求,追踪恶意脚本的来源,确认是服务器输出还是资源被劫持。
- 查看服务器日志:检查IIS日志、Windows事件日志,寻找异常登录记录、带恶意参数的可疑请求。
- 验证外部资源:若使用CDN,核对资源哈希值是否与官方一致;暂时移除非必要外部资源,观察恶意代码是否消失。
临时修复建议
- 立即移除页面中的恶意div和脚本引用,恢复为干净代码版本。
- 重置服务器登录密码,开启两步验证,限制登录IP范围。
- 临时禁用非必要第三方插件/依赖,排查是否为插件导致的注入。
- 配置内容安全策略(CSP),限制脚本仅从可信域名加载,阻止恶意外部脚本执行。
内容的提问来源于stack exchange,提问作者marifrahman
相关产品推荐
相关产品推荐

