Ubuntu LinuxでPythonを使用して別のプロセスのアドレス空間に書き込む方法は? 私の試み:
1) 仮想ファイル /proc/$PID/mem を使用してアドレスをシークします。私はそれを使用してメモリを読み取ることに成功しましたが、書き込もうとすると IOError が発生します。
fd=open("/proc/"+pid+"/mem","r+")
fd.seek(address,0)
fd.write("ABC")
出力:
IOError: [Errno 22] Invalid argument
2) 他のスレッドで提案されているように、python-ptrace ライブラリを使用しようとしています。ただし、適切なドキュメントやサンプル コードが見つかりません。
注: これはパーミッションの問題ではありません。root として実行すると同じ動作になります。