Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TODO List #333

Open
xwings opened this issue Jun 12, 2020 · 7 comments
Open

TODO List #333

xwings opened this issue Jun 12, 2020 · 7 comments
Labels
enhancement New feature or request

Comments

@xwings
Copy link
Member

xwings commented Jun 12, 2020

Updated by xwings, 6th Oct 2022

Contribution Guide: https://docs.qiling.io/en/latest/contribution/

Short Term Goals

This is a list of simple quick ideas, so people who want to play & contribute to Qiling can try.
Pull requests are always welcome!

Loader:

  • Port LIEF

CLI Support:

  • Shell based interface, such as ql>

Cross Platform Execution:

Compiler Support:

Windows:

  • Try to run malware/Windows PE on Qiling, find & implement the missing APIs
  • ARM64 Windows
  • More Windows API
  • API for PC name, WINS, WORKGOUP and Domains
  • API for fake installed application
  • API for process listing
  • Example and test for PR Add windows 16bit compatibility file api #885

Linux:

  • Try all the Linux binaries under /bin/, find & implement missing syscalls
  • Try IoT firmware binaries & implement missing syscalls
  • Linux: Multithread / Network

MacOS:

Peripheral:

  • Secure Digital Input Output (SDIO)
  • Ethernet peripheral (ETH)
  • Analog-to-digital converter (ADC)
  • Controller area network (bxCAN)
  • External interrupt/event controller (EXTI)
  • Digital-to-analog converter (DAC)
  • System configuration controller (SYSCFG)

Documents:

QNX
- set_api() implementation

Big Endian Support:
- ARM
- MIPS32EB


Ideas from some other projects


More Longer Term

Windows

Linux

Androids

  • It's Linux, but a bit more specific support ?
  • maybe an OS by itself

More Instrument-able Engines

  • Java bytecode
  • Javascript
@xwings xwings pinned this issue Jun 12, 2020
@aquynh aquynh changed the title TODO List - Short Term Goal TODO List - Short Term Goals for Contributors Jun 12, 2020
@aquynh aquynh added the enhancement New feature or request label Jun 12, 2020
@lucroida
Copy link

Suggestion: contribution guidelines (see #479)

@nullableVoidPtr
Copy link
Contributor

implement the missing APIs
implement missing syscalls

I think a milestone or a separate issue with a checklist would be of great help to new contributors, like the following:

  • mmap
  • mprotect

and so on.

@xwings
Copy link
Member Author

xwings commented Nov 15, 2020

Cool, can you help to list it out.

In that case we need to provide a binary too and more detailed example :)

@wtdcode
Copy link
Member

wtdcode commented Nov 15, 2020 via email

@xwings xwings changed the title TODO List - Short Term Goals for Contributors TODO List - Goals for Contributors Dec 6, 2020
@xwings xwings changed the title TODO List - Goals for Contributors TODO List Dec 7, 2020
@nullableVoidPtr
Copy link
Contributor

nullableVoidPtr commented Dec 8, 2020

Javascript

How would this work? If we can somehow link in V8, we can also put in WASM support if need be, but would Qiling hook into Ignition or something like that?

@wtdcode
Copy link
Member

wtdcode commented Dec 15, 2020

#479

Finally, here it comes :).

See https://docs.qiling.io/en/latest/contribution/ .

@xwings
Copy link
Member Author

xwings commented Dec 21, 2020

Javascript

How would this work? If we can somehow link in V8, we can also put in WASM support if need be, but would Qiling hook into Ignition or something like that?

No idea with Javascript yet. there are wish list. some of them got no clear path and idea yet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

5 participants