ASLRがIOSで役割を果たし、ヒープの開始アドレスをランダム化する場合、現在のプロセスと他のプロセスのヒープの開始アドレスをpidから取得するにはどうすればよいですか?
論文に付属のaslr.c:「iOSkernel Exploitation」では、現在のプロセスのヒープコードの開始アドレスを取得しようとしているようです。
void* heap = malloc(0);
コードをテストしたところ、戻り値がすべて同じではないことがわかりました。ISO / IEC 9899:TC2(つまり、C99標準)によると、§7.20.3は次のように述べています。
要求されたスペースのサイズがゼロの場合、動作は実装定義です。nullポインターが返されるか、返されたポインターがオブジェクトへのアクセスに使用されないことを除いて、サイズがゼロ以外の値であるかのように動作します。 。