这是一个基于 F# 语言的红队工具,使用 F# 交互式编译器来执行攻击负载。Fsi.exe 是一个包含在 Visual Studio 中的 Microsoft 签名的合法二进制文件,允许通过交互式命令行或脚本执行 .fsx 和 .fsscript 文件。由于自带微软的签名,可以用于绕过许多基于签名验证的安全防护软件,从而在目标环境中执行恶意代码。
0x01 Fsharp 的基本介绍
F# 是一种功能强大、功能式编程为主的编程语言,F# 是 .NET 平台的一部分,能够与 C# 和 Visual Basic 等 .NET 语言无缝集成,允许开发者使用函数式编程的优点,同时也可以使用面向对象和命令式编程。
F# 支持多种脚本格式,除了 .fsscript 之外,常见的格式包括 .fsx(用于 F# 脚本)和 .fs(F# 源文件)。其中 .fsx 是最常用于脚本化的文件扩展名,适合快速执行脚本,例如下面代码所示。
open System
let currentTime = DateTime.Now
printfn "Current time: %A" currentTime
代码中,open System 导入了 .NET System 命名空间,用于访问时间相关的 API。通过Fsi.exe 运行后如下图所示。