長い話を短く:プログラムが作成されてから削除されることを知っています/tmp
。これを確認するためにどのようにブロックできますか?
コンテキスト:
私が信頼していない特定のファイルが1つあります.jar
。何らかの理由で、そのファイルのソースコードにはftmメソッドと接続設定機能が含まれていますstrace
。 、Unixドメインソケットを意味するわけではないがAF_INET6
)。 Wiresharkで確認したところ、使用中に発信TCPまたはUDP接続が見つかりませんでした。
それでも、私はそれを信じていません。出力から一時ファイルを作成してから削除するstrace
のがわかります。/tmp
これらのファイルを傍受して内容を確認する方法はありますか?
ベストアンサー1
より良い方法は、悪意のあるJavaバイナリをリバースエンジニアリングしたい場合は、ファイルを傍受するのではなく、疑わしい.jar
ファイルをデコンパイルすることです。
これには、次のものを使用できます。CFR - 別のJavaデコンパイラ
CFRはJava 9の大部分を含む最新のJava機能をデコンパイルしますが、Java 6で完全に書かれており、どこでも使用できます。
使用するには、デコンパイルするクラス名(クラスファイルのパスまたはクラスパスの完全修飾クラス名)で特定のバージョンのjarを実行するだけです。 (--helpにはパラメータが一覧表示されます)。
または、jar全体をデコンパイルするにはjarパスを指定し、ファイルをエクスポートするには(おそらくそうします)、--outputdir /tmp/putithereを追加します。
代替案が不足しているわけではありませんが、CFRプロジェクトは2018年のアップデートを通じてよく維持されているようです。
免責事項:私は2005年以来、Java / JARバイナリをリバースエンジニアリングしたことがありません。