-
Notifications
You must be signed in to change notification settings - Fork 6
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
specification #5
Comments
Is this what you had in mind?
|
this seems reasonable. when i have a chance (eta probably 1-2 weeks), I'll attempt to re-implement the RichPE hash in another language and report back on the experience. |
joyce8
added a commit
that referenced
this issue
Jan 31, 2019
Thank you! I've pushed changes but will leave this issue open in the meantime. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
having been privy to a lot of the imphash development over recent years, a point of friction was that the initial research and discussion was around a specific python implementation. its usage gained momentum before a clear specification on how the imphash should be computed was published. this made it difficult to compute an imphash from another language (you have to adhere to python's idiosyncrasies if you want to match across vendors).
with this in mind, I'd like to recommend that the RichPE hash specification be considered before it becomes too late. specifically, lines 38-48 rely on the way python formats integers. could we define this in a way that's language independent?
one option might be to hash the raw bytes that back the flags/fields. alternatively, maybe provide concrete format specifiers that can be passed to
sprintf
/etc. across languages.fyi, the motivation here was that we'd been discussing internally how to use RichPE across our datasets. one option would be to extend yara to compute the RichPE (sharing upstream, of course); however, this would require doing the implementation in C, which brings up this issue...
The text was updated successfully, but these errors were encountered: