2017-01-23 1 views
0

私はexeinfoPeのようなpeファイルアナライザのように動作し、セクションリストの部分には.textとCODEのセクションタイプがあります。 CODEまたは他のセクション名。これらのセクションは同じですか?それらの違いは何ですか?.textと.codeのセクション名の違い

+0

[コードセグメント](https://en.wikipedia.org/wiki/Code_segment)と[データセグメント](https://en.wikipedia.org/wiki/Data_segment)を参照してください。時には、同じものにすることもできます。 –

+1

私はあなたがフラグではなくセクション名について話していると信じています。一般的なセクション名がいくつかありますが、必須ではありません。実際にフラグ(実行可能ファイルや書き込み可能ファイルなど)は何番ですか。 – Jester

+0

はい私は間違っていました。あなたの答えと思い出させることに感謝します。私はその問題を解決する。 @Jester –

答えて

3

バイナリの.textセクションと.codeセクションの間に機能的な違いはありません。

は、ほぼすべてのケースで、彼らは(彼らは同じセクションを参照していることを意味する)完全に同義であるが、彼らは(例えばによるバイナリのセクションの実際の順序に)じゃない場合でも、彼らはをしています意味的にはと同じです。

これは、実行可能命令(「コード」)を含むオブジェクトファイルまたはアドレス空間のセクションであり、プレーンテキスト(「テキスト」)として格納されます。ほとんどの場合、読み取り専用です。.dataセクションとは異なります。

アセンブラ、コンパイラ、リンカ、または逆アセンブラのドキュメントを参照して、どの名前が好きであるかを確認してください。 PEフォーマットは.textを使用します。

+0

命令はどのように書き込み可能になりますか?彼らがシステムの深刻な脆弱性の兆候になるのであれば、そうではありませんか?誰かがコードを.codeセクションに注入する可能性がありますか?それは可能でしょうか?これについてのあなたの考えを詳述できますか?ありがとう。 –

0

.CODE.TEXTセクションの間に意味的な違いはありません。 MASMアセンブラの場合と同様に、命令空間アドレスは.CODEセクション、その他のコンパイラでは.CODEという名前になります。

MASMでコードをアセンブルすると、.CODEセクションと.TEXTセクションが表示されます。

関連する問題