Oxygen Basic
Information => Development => Topic started by: JRS on June 25, 2018, 06:08:44 PM
-
Charles,
Would it be possible to start a Linux branch of Oxygen Basic from tbe codebase you have now?
-
In theory, John. Were you thinking of native Linux?
-
Yes!
It would seem to be a good time before O2 starts taking on Windows specific attributes.
-
What might be a good first step is a utility that would convert the PE headers so the base O2 code could execute under Linux. Of course this would require that no Windows specific code is included in the O2 source.
Porting Windows DLLs to Linux (https://github.com/taviso/loadlibrary)
-
If I could call Oxygen.DLL from Linux, I could use the JIT feature of O2.
-
I was able to build the loadlibrary package. The Windows Defender example seems to work.
This could turn out to be a Linux DLLC.
Windows Defender
MsMpEng is the Malware Protection service that is enabled by default on Windows 8, 8.1, 10, Windows Server 2016, and so on. Additionally, Microsoft Security Essentials, System Centre Endpoint Protection and various other Microsoft security products share the same core engine.
The core component of MsMpEng responsible for scanning and analysis is called mpengine. Mpengine is a vast and complex attack surface, comprising of handlers for dozens of esoteric archive formats, executable packers, full system emulators for various architectures and interpreters for various languages. All of this code is accessible to remote attackers.
jrs@jrs-laptop:~/loadlib/loadlibrary-master$ ./mpclient Oxygen.dll
main(): Scanning Oxygen.dll...
EngineScanCallback(): Scanning input
EngineScanCallback(): Scanning archive member !UPX_LZMA2_3.00
EngineScanCallback(): Scanning input->(UPX)
jrs@jrs-laptop:~/loadlib/loadlibrary-master$
-
A Freebasic Linux user familiar with both PE and low-level Linux binary formats could do it without too much difficulty. The file is o2hdrs.bas. Then all we would need is a memory allocator and some console i/o.
-
Luarent would seem to be the best candidate to take a lead in this effort.