linux系统调用dll,loadlibrary: loadlibrary 库允许原生 Linux 程序从 Windows DLL 加载和调用函数...

Porting Windows Dynamic Link Libraries to Linux

Introduction

This repository contains a library that allows native Linux programs to load

and call functions from a Windows DLL.

As a demonstration, I've ported Windows Defender to Linux.

$ ./mpclient eicar.com

main(): Scanning eicar.com...

EngineScanCallback(): Scanning input

EngineScanCallback(): Threat Virus:DOS/EICAR_Test_File identified.

How does it work?

The peloader directory contains a custom PE/COFF loader derived from

ndiswrapper. The library will process the relocations and imports, then provide

a dlopen-like API. The code supports debugging with gdb (including symbols),

basic block coverage collection, and runtime hooking and patching.

giphy.gif

What works?

The intention is to allow scalable and efficient fuzzing of self-contained

Windows libraries on Linux. Good candidates might be video codecs,

decompression libraries, virus scanners, image decoders, and so on.

C++ exception dispatch and unwinding.

Loading additional symbols from IDA.

Debugging with gdb (including symbols), breakpoints, stack traces, etc.

Runtime hooking and patching.

Support for ASAN and Valgrind to detect subtle memory corruption bugs.

If you need to add support for any external imports, writing stubs is usually

quick and easy.

Why?

Distributed, scalable fuzzing on Windows can be challenging and inefficient.

This is especially true for endpoint security products, which use complex

interconnected components that span across

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值