简介 如果拥有一个微软签名的fscan,你会心动吗? 当然不是真正的签名,我标题党,不过你进来了不妨看看学学呗。 这篇关于武器化白加黑,以Fscan为例子开讲。 先看看效果 免责声明由于传播、利用此文章所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,本文作者不为此承担任何责任。切勿用于未授权测试!本文主要来自日常学习记录 第二篇另类武器化我fscan白程序了,你该怎么办?我流量白程序你该怎么办?拿390流量监控找吗? 如果是你你会怎么办? 步骤一寻找白程序,往期有方法,就用往期找的样式 寻找到的白文件通过,工具获取导出的DLL函数 步骤二fscan为go写的(@shadow1ng大佬yyds),这个项目也衍生了很多其他的工具 fscan使用Flag包接收参数,那么就不用改了,直接拿来就用。 (注意go编写的DLL可以直接接收EXE传入的参数) //先看看原代码
package main
import (
"fmt"
"github.com/shadow1ng/fscan/Plugins"
"github.com/shadow1ng/fscan/common"
"time"
)
func main() {
start := time.Now()
var Info common.HostInfo
common.Flag(&Info)
common.Parse(&Info)
Plugins.Scan(Info)
t := time.Now().Sub(start)
fmt.Printf(" 扫描结束,耗时: %s\n", t)
}
修改后的,这里我们又用到的了init(关于go如何编写DLL,不做解释,善用搜索) package main
import "C"
import (
"fmt"
"time"
"github.com/shadow1ng/fscan/Plugins"
"github.com/shadow1ng/fscan/common"
)
//export DllCanUnloadNow
func DllCanUnloadNow() {}
//export DllGetClassObject
func DllGetClassObject() {}
//export DllRegisterServer
func DllRegisterServer() {}
//export DllUnregisterServer
func DllUnregisterServer() {}
func init() {
start := time.Now()
var Info common.HostInfo
common.Flag(&Info)
common.Parse(&Info)
Plugins.Scan(Info)
t := time.Now().Sub(start)
fmt.Printf(" 扫描结束,耗时: %s\n", t)
}
func main() {
}
编译测试image-fscan
|