ofrak icon indicating copy to clipboard operation
ofrak copied to clipboard

Fix ofrak-dev, ofrak-ghidra, ofrak-tutorial entrypoints

Open Jepson2k opened this issue 1 year ago • 2 comments

What is the problem? (Here is where you provide a complete Traceback.) The addition of ofrak licensing broke the entrypoint commands for ofrak-dev, ofrak-ghidra, and ofrak-tutorial.

Please provide some information about your environment. At minimum we would like the following information on your platform and Python environment:

  • Platform: redballoonsecurity/ofrak/dev, .../ghidra, .../tutorial

If you've discovered it, what is the root cause of the problem? Ofrak license needs to be run first

How often does the issue happen? Everytime using those configs.

What are the steps to reproduce the issue? Ideally, give us a short script that reproduces the issue. Build those images, start those images.

How would you implement this fix? Add ofrak license --community --i-agree command to the entrypoint commands.

Are there any (reasonable) alternative approaches? No

Are you interested in implementing it yourself? Yes

Jepson2k avatar Dec 27 '24 18:12 Jepson2k

@Jepson2k , we should not be submitting either --community or --i-agree options on behalf of the user - we need the user to possess the appropriate license (e.g. either explicitly confirming their use qualifies for the Community License or purchasing an appropriate license authorizing Commercial Use), and explicitly agreeing to the terms of the license. Off the top of my head, one possibility would be to provide a web UI for this, another is to enable the user to provide the license inputs at the docker build time.

ANogin avatar Dec 27 '24 22:12 ANogin

@ANogin I took a different approach:

  • Upon the first start of a docker container it checks for the existence of the ofrak.license file.
    • If it finds it, it attaches it to the container and proceeds as normal.
    • If it does not find it, it first brings up the freshly build container running ofrak license command. Prompts user for input and if the user selects the license and agrees to the terms it copies the license file out of the container and then proceeds as normal.

Thoughts?

Jepson2k avatar Jan 03 '25 03:01 Jepson2k