問題タブ [pydbg]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - pydbg exit_hook(コールバック)内で、スタック値を一致するPythonタイプに変換するにはどうすればよいですか?
これはおそらく質問とctypes
いうよりもpydbg
質問ですが、結果が一貫していない理由はまだわかりません。
私は次のような使用とそのクラスのexit_hook
セットを持っています:LoadLibraryA
pydbg
utils.hook_container
残念ながら、出力に一貫性がありません。一部の値は文字列に変換(および表示)されますが、その他の値は次のような数値として表示されます。
char*
私が欲しいのは、 (そして後でwchar_t*
のLoadLibraryW
)をPython文字列に確実に変換して出力することです。
python - PyThread_acquire_lock-キーの取得に関する問題
私はマルチスレッドのPythonアプリケーションを書いています。
メインスレッドは、5つのワーカースレッドのスレッドプールを作成します。メインスレッドは、モニタースレッドも作成します。
合計:6スレッド+1メインスレッド=7
すべてのスレッドはMySQLサーバーと通信します(mysqldb-> libmysqlclient_r)
私のSQLラッパーでは、DBクエリ関数にThreading.Lockを追加しました。このロックはグローバルロックであり、DBを照会するすべてのスレッドがそれを使用します。
ある時点でメインスレッドがスタックするまで(すべてのスレッドも同様に)、すべてが正常に機能します。GDBデバッガーを接続すると、次のことに気付きました。(情報スレッド)
Th1 =メインスレッド、Th2 =モニタースレッド、Th3-Th7-ワーカースレッド
モニタースレッドの横にあるすべてのスレッドがsem_wait()を待機していることに気付きました。
ただし、モニタースレッドはロックを取得および解放できます(30秒ごとに実行され、表示されるselect()はsleep(30)によるものです)。誰もロックを取得していないので、なぜ残りのスレッドがsem_wait()でスタックしているのかわかりません。
これを解決する方法はありますか?これをデバッグする方法は?
ありがとうございました
python - PyDBG Python 2.7 エラー:「TypeError: 'モジュール' オブジェクトは呼び出し可能ではありません」
Python 2.7 で PyDBG を使用しようとしています。正しくインストールされていると思います。
実行するとエラーが発生します:
snapshot - PyDBG プロセスのスナップショットが機能しない
私はGrey Hat Pythonの本に従っており、PyDBGを使用してプロセススナップショットのコードをコピーしました。スクリプトを実行すると、エラーは発生せず、期待どおりの出力が得られますが、プログラムは実際にはスナップショットに戻りません。デバッグに入ると、スナップショット情報を保存しているかのように値がスナップショット変数にあるように見えますが、確かに言うには十分ではありません。
コードは次のとおりです。
python - pydbg は pydasm をインポートできません - Python 2.7
ここに私のpythonシェルのスニペットがあります。何が悪いのか理解できません。誰かが何か提案があれば、喜んで聞いてください。
pydasm をインポートできず、pydasm を直接インポートできるため、pydbg をインポートできないのはなぜですか?
python - PyDbg でのスレッド切り替え
これをリバース エンジニアリング スタック交換に投稿しようとしましたが、可視性を高めるためにここに相互投稿すると思いました。
pydbg で 1 つのスレッドから別のスレッドにデバッグを切り替えるのに問題があります。私はマルチスレッドの経験があまりないので、明らかな何かが欠けているだけだと思っています。
基本的に、すべてのスレッドを一時停止してから、1 つのスレッドでシングル ステップを開始します。私の場合、2 つのスレッドがあります。
まず、すべてのスレッドを中断します。次に、スレッド 2 が再開されたときに EIP が存在する場所にブレークポイントを設定します。(この場所は IDA を使用して確認されています)。次に、他のコンテキストと同じようにシングル ステップを有効にして、スレッド 2 を再開します。
ただし、pydbg はブレークポイントの例外をキャッチしていないようです! スレッド 2 が再開したように見え、そのアドレスに到達する必要がありますが、pydbg がブレークポイントの例外をキャッチしているという兆候はありません。pydbg の内部ブレークポイント ハンドラ内に "print "HIT BREAKPOINT" を含めましたが、スレッド 2 の再開後に呼び出されることはないようです。
次にどこに行けばいいのかよくわからないので、何か提案をいただければ幸いです。
「マジックナンバー」については申し訳ありませんが、私が知る限り正しいです。
python - PyDBG プロセスの復元が機能しない
Windows7 x64でpython 2.5(x86)を使用しています。この本に従ってコードを書きました。
http://nostarch.com/ghpython.htm
しかし、私の環境ではうまくいきません。
誰かが下の URL ページで言及していて、Windows XP で動作すると聞いたので、問題は Windows バージョンにあると思います。
http://bbs.csdn.net/topics/380255167
このエラーを回避して機能させるにはどうすればよいですか?
python - Python を使用して任意のプロセスにフックされている dll を確認したいと考えています。pdbで可能ですか?
Python を使用して任意のプロセスにフックされている dll を確認したいと考えています。pdbで可能ですか?
プロセスにアタッチするか、Python デバッガーからプロセスを開き、フックされた dll を表示する方法はありますか?
python - Pythonでのフックファイルの作成
私はプログラムに取り組んでいますが、その一部では、ファイルが作成/保存されるときにOPをリッスンする必要があるため、そのファイルで作業できます。フックの基本的な概念は知っていますが、この特定の用途でそれを実装する方法が正確にはわかりません (フックを特定の PID にアタッチする方法は知っていますが、ここではすべてのプロセスをリッスンして、それらはファイルを作成しています)。私はフックのニーズに pydbg を使用していますが、回答が別のものを使用している場合でも、お気軽に回答してください。ありがとう :)