9

バイナリにデバッグ シンボルが含まれているかどうかを知る必要があります。これは本番システムであるため、fileまたはobjdumpなどのコマンドはありませんgdb

必要に応じてより多くの情報を提供できます。

OS: デビアン

4

3 に答える 3

1

何よりも、いくつかのツールを持っていきましょう。

".strtab"できない場合は、バイナリの形式を知っておく必要があります。Linux システムでは ELF です".symtab"
それらが存在する場合、バイナリにすべてのシンボルがあります。

別のアイデアは、いくつかのシンボル(例my_check_symbol_to_see)を植えてから、このシンボルをgrepすることです...

于 2016-06-01T10:36:47.380 に答える
1

バイナリにシンボルがあるかどうかがわからず、バイナリがインストールされている実際のマシンにツールがない場合の簡単な解決策は、scp(安全なリモート コピー) のようなものを使用してファイルをマシンにコピーすることです。ツールがあります。

他のコメントが言うように、stringsコマンドを使用すると、「文字列のように見える」(「印刷可能な」文字の十分な長さのシーケンス) と思われるものはすべて印刷されますが、デバッグ記号が何であるかを実際に知らないため、信頼性はそれほど高くありません。のように見え、マクロなどからのシンボルを含むコードから誤検知を得ることができます。

于 2013-07-03T20:17:11.137 に答える