feat: added --base64 option to ticketConverter #2104
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
A story of pain and sorrow
Tools like Rubeus write base64-encoded Kirbi tickets to the terminal. I often find myself repeating this sequence:
/unwrapticket.kirbi.b64base64 -d ticket.kirbi.b64 > ticket.kirbiticketConverter.py ticket.kirbi ticket.ccacheticketConverter's current behaviorticketConverter.pycurrently only works with binary tickets. If it receives a base64-encoded ticket it fails:How this commit ends the pain
Added a new option
-b/--base64:Example with base64-encoded Kirbi ticket:
Seamlessly works the other way too:
Code edits
I made sure the commit is as non-invasive as possible.
It only adds a new function
base64_decode_with_unwrapwhich is only applied if the-b/--base64is provided. Otherwise, everything behaves as before.