問題タブ [cycript]
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.
security - スイフトは引っ掛かりに強いですか?
Cycript は、Objective-C と JavaScript を組み合わせたコンソール ベースのアプリケーションです。Cycript は、iOS アプリケーションの動的分析に非常に役立ちます。
メソッドまたは完全な ipa を Swift で記述した場合、ジェイルブレイクされたデバイスでアプリケーションをフックすることは可能ですか? それとも、Swift は iOS の「ネイティブ C」コードのように安全ですか?
ios - プログラムの開始前に Cycrypt または gdb をアタッチする方法
私は、アプリケーションが JailBreak をチェックしている PT の途中にいます。すぐに開始され、ユーザーが最初に表示する画面は、アプリケーションがジェイルブレイクされていることを示す警告であり、[OK] をクリックして終了します。
私の質問:アプリケーションが既に呼び出されているときにメソッドを変更するのが非常に遅く、私が警戒しているので、アプリケーションが開始する前にCycriptをアタッチする方法、またはCycriptでアプリケーションを開始する方法はありますか?
お知らせ下さい。
または、後でプロセスにアタッチするのではなく、GDB でアプリケーションを実行できる場合、ここでも同じ問題があります。JailBroken の決定が既に行われているため、アプリケーションの実行後に gdp にアタッチするには遅すぎます。
ios - iOS アプリでマクロ SEC_IS_BEING_DEBUGGED_RETURN_NIL を使用する
メソッド スウィズリングをある程度防ぐと主張されている以下のコードについて学びました。
しかし、テスト用にプロジェクトに含めると、エラーが発生します。
関数 'SEC_IS_BEING_DEBUGGED_RETURN_NIL' の暗黙の宣言は C99 では無効です
同じライブラリヘッダーを含める必要がある場合、誰かがこのエラーについて助けてくれますか?
ios - アクセスするCycript から
関連オブジェクトと ISA スウィズルを使用したくないのですが、Cycript で使用するために objc/runtime.h をインポートする方法がわかりません。コンソールと .js ファイルの両方で試しましたが、うまくいきませんでした。
理想的には、フレームワークも含める方法を理解したいと思っています。
ios - アプリをバックグラウンドで実行する Cycript スクリプト
バックグラウンドで実行し続けるようにアプリを変更するのに最適なcycript
backboardd
スクリプトがあります。iOS 7
必要なのはこれだけです。ただし、iOS 8
これは現在と現在では機能せBKProcess
ずBKSProcess
、異なる方法があります。on のようにアサーションをアプリにアタッチする方法はないようです。BKProcessAssertion
BKSProcessAssertion
iOS 7
の下でこれを機能させるのを手伝ってくださいiOS 8
。
ios - Cycript/Substrate または gdb が iOS アプリのプロセスに接続されているかどうかを検出しますか?
機密データをサーバーに送信する iOS アプリを構築しており、追加の手段として API 要求に署名しています。リバース エンジニアリングを可能な限り困難にしたいと考えており、Cycript を使用して実世界のアプリの署名キーを見つけたので、プロセスにアタッチしてこれらのキーを見つけるのは難しくないことを知っています。誰かが本当に熟練して十分に努力すれば、最終的には悪用されることを私は完全に認識していますが、私は自分自身とユーザーにとって便利でありながら、できるだけ難しくしようとしています.
ジェイルブレイク状態をチェックして追加の対策を講じることも、SSL ピンニングを行うこともできますが、プロセスにアタッチしてメモリを変更することで、どちらも簡単にバイパスできます。
App Store から拒否されずに、何か(Cycript、gdb、またはプロセスのクラッキングに使用できる同様のツール) がプロセスに接続されているかどうかを検出する方法はありますか?
編集:これはDetecting if iOS app is run in debuggerの複製ではありません。その質問は出力に関連しており、出力ストリームをチェックしてロガーにアタッチされた出力ストリームがあるかどうかを識別しますが、私の質問はそれに関連していません(そのチェックは私の状態をカバーしていません)。
ios - iOS シミュレーターでの Cycript インジェクションで CYPoolError が発生しました
Jay Freeman によるビデオのように 、Cyript lib を iOS シミュレーターに挿入して、アプリを動的にデバッグできます。
しかし、私が操作を行って試してみるとCYListenServer(5432);
、クラッシュしました:libc++abi.dylib: terminating with uncaught exception of type CYPoolError
誰にもいくつかの解決策がありますか?
html - HTML ファイルで、cycript ファイルにリンクするにはどうすればよいですか?
head セクションでこれを試しましたが、うまくいきません:
ありがとう。