ELF形式がどのように機能するか、またはコードを介してそのヘッダーとデータにアクセスする方法についての知識はありませんが、ELFバイナリがLinux用のUPXで圧縮(パック?)されているかどうかを確認する必要があります。
バイナリをチェックするとstrings
文字列UPX!
が表示されたので、それを使用できると思います。バイナリを16進編集すると文字列が表示され、バイナリ内の位置については、ELFのヘッダーの1つの一部であると見なすことができます(間違っている場合は修正してください)。これはそのダンプです:
00000000 .ELF........................4...
00000020 ........4. ...(.................
00000040 ........................@...@...
00000060 @.....................[.UPX!....
00000080 ............T............?d..ELF
これがよさそうかどうかわかりません、ごめんなさい。
LinuxでUPXを検出する方法を知っている人はいますか?そうでない場合、ヘッダーにアクセスしてそのUPX!
文字列(ヘッダーの名前?)を取得する方法は?
私はUPXソースコードを調べましたが、すべてがC ++であり、これをCでコーディングしようとしています。そして、それを追跡するのは非常に困難です。
ありがとう、どんな助けでも歓迎します。
編集:バウンティについて。以下のサンプルのように、私がさまざまなアプローチを試したが、常に機能するとは限らないため、彼らの答えは確かな例を示しているに違いありません。
ありがとうございました