GNU/Linux >> Linux の 問題 >  >> Linux

ELF ファイルへのセクションの追加

これは古い質問であることは知っていますが、プロジェクトに適用するのに役立つ実際の例を見つけました。 (誰かがこの質問に出くわした場合)

Sourceware Mail Archiv から取得

$ echo 'int main() { puts ("Hello world"); }' | gcc -x c - -c -o hello.o

$ echo "this is my special data" >mydata

$ objcopy --add-section .mydata=mydata \
          --set-section-flags .mydata=noload,readonly hello.o hello2.o

$ gcc hello2.o -o hello

$ ./hello
Hello world

$ objdump -sj .mydata hello

現在 ERESI プロジェクトの一部となっている ELFsh を見てください。

次のリンクが役立ちます:

  • チュートリアル「libelf by Example」には、新しい ELF オブジェクトの作成に関する章があります。
  • elftoolchain プロジェクトには、00 を説明するマニュアル ページがあります。 の API の詳細。

ELF ファイル ヘッダーに関するこの質問には、(おそらく) 関連する回答がいくつかあります。 14 を使用して言及された受け入れられた回答 ELF ファイルにセクションを追加するには


Linux
  1. 「実行のみ」のファイル権限の有効な使用例?

  2. Linux –ファイルパーミッションは実行のみですか?

  3. Linux ELF オブジェクト ファイル形式 (および ELF ヘッダー構造) の基本

  1. Linux でのフラット バイナリ ファイルの実行

  2. a.out は ELF ファイル形式に置き換えられましたか?

  3. アセンブリ内のファイルからの読み取り

  1. BASH で mv を使用してファイル名にタイムスタンプを追加する

  2. ELFファイル形式のセクションとセグメントの違いは何ですか

  3. プログラムは独自の elf セクションを読み取ることができますか?