1

GCC の可視性機能により、共有ライブラリ内の顧客に見せたくない API を取り除くことができます。実際、ldopen を使用してこれらの隠し関数を呼び出すことはできませんが、機密性の高い API を保護するのに十分な安全性があるかどうかは疑問です。

労力とリスクのバランスをとることができるように、共有ライブラリの隠し API の信頼性/セキュリティについて簡単に説明したいと思います。この質問をしたのは、GCC のドキュメントでこの問題に関する適切な説明が見つからないためです。

この質問を再開してください。

4

2 に答える 2

2

可視性属性の本当の目的は、ライブラリが直接使用することを意図していない部分を公開しないことです。それをクラックしようとする人にとっては、ほとんど違いはありません。コードを逆アセンブルする必要はありますが、関数のエントリ ポイントを見つけるのはそれほど難しくありません (自分で調べてください!)。はい、メガバイトのコードを処理するのは大変な作業ですが、経験のある人は、どのようなものを探すべきかを知っているので、おそらく膨大な量のコードをスキップできます.

于 2013-05-21T08:43:34.157 に答える
1

コードを逆アセンブルできる限り、ハッキングできます。もっと時間がかかるかもしれませんが、それは可能です。より安全な保護は、サーバーでコードを実行することです。それがDiablo 3がそれを保護している方法であり、十分に機能しています. ただし、何かをクラックするのはモチベーションの問題です。あなたのプログラムが十分に優れていて、ハッカーが十分に決心しているなら、誰かがそれをクラックするでしょう。かかる時間を増やすことしかできません。

于 2013-05-21T08:36:59.130 に答える