問題タブ [cydia-substrate]
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.
iphone - 基本的な MobileSubstrate 微調整の作成方法
基本的な「Hello, World!」の作り方を知りたいです。MobileSubstrate
微調整します。
ios - 実行時の iOS パッチ プログラム命令
アプリケーションの実行中に個々のアセンブリ命令を変更するにはどうすればよいでしょうか?
既存のアプリケーション用に書いている Mobile Substrate の微調整があります。微調整のコンストラクター ( MSInitialize
) では、アプリのコード内の個々の命令を書き直すことができる必要があります。つまり、アプリケーションのアドレス空間には変更したい場所が複数ある可能性がありますが、各インスタンスで変更する必要があるのは 1 つの命令だけです。私はすでにアプリケーションの ASLR を無効にしており、パッチを適用する命令の正確なメモリ アドレスを知っています。また、新しい命令の 16 進バイト (char[] として、ただしこれは重要ではなく、必要に応じて変更できます) を持っています。変更を実行する方法を理解する必要があります。
iOS がデータ実行防止 (DEP) を使用して、実行可能メモリ ページも書き込み可能にできないこと、およびその逆を指定することは知っていますが、ジェイルブレイクされたデバイスではこれをバイパスできることはわかっています。また、iDevices で使用される ARM プロセッサには、変更を反映するために更新する必要がある命令キャッシュがあることも知っています。しかし、私はこれをどこから始めるべきかさえ知りません。
ですから、そうでなければきっと尋ねられるであろう質問に答えるために、私は何も試していません. これは私が怠け者だからではありません。むしろ、これがどのように達成されるのかまったく見当がつかないからです。どんな助けでも大歓迎です。
編集:
それが少しでも役立つなら、私の最終的な目標は、App Store アプリケーションをフックする Mobile Substrate の微調整でこれを使用することです。以前は、このアプリケーションを変更するには、まずアプリを解読してバイナリにパッチを適用できるようにする必要がありました。私は強く反対している著作権侵害につながる可能性があるため、人々がアプリをクラックする必要がないようにしたいと考えています。すべての作業が Objective-C ではなく C++ で行われ、アプリケーションが取り除かれ、使用するシンボルが残っていないため、通常は Mobile Substrate を使用できませんMSHookFunction
。
ios - String-Hack 後に MobileSubstrate-dylib に再署名しますか?
ジェイルブレイクした iPad (第 3 世代、5.1.1) のステータスバーに現在の日付を表示したいので、Tweak "DateCarrier" をインストールしました。悲しいことに、それには設定がなく、フォーマットとして MM/dd/yyyy を使用しますが、これは私は好きではありません。
これのフォーマット文字列を .dylib ファイルで見つけ、16 進エディタで単純に dd.MM.yyyy に変更しようとしました。文字列の長さは明らかに同じで、まだ null で終了しています。悲しいことに、微調整の変更されたバージョンは起動時にクラッシュします。
これは署名の問題だと思いますが、私は Mac ソフトウェアまたは iOS 開発の経験がないため、どのように進めればよいかわかりません。
Googleは、バイナリに署名すると主張するツール「ldid」を指摘しましたが、dylibファイルで「unknown load command 7」というエラーで解決します。
誰かが私を正しい方向に向けたり、変更されたライブラリをロードすることさえ可能かどうか教えてもらえますか?
iphone - iPhoneでプロトコルを接続する
iOS でデリゲート (プロトコル) メソッドをフックしたいのですが、その方法を教えてくれる人はいますか?
フック方式などapplicationDidFinishLaunching:
私はこのようにしていますが、うまくいきません...
cydia - TheosでCydiaTweakを作成するときに、ヘッダーがダンプされたコンパイラエラー
iPhoneのアプリの微調整を書き込もうとしています。私はObjectiveCとiPhoneの開発に精通していますが、Cydiaの脱獄の調整は行ったことがありません。ただし、rpetrichのダンプされたヘッダーを使用した調整に関するいくつかのチュートリアルは除きます。PoedCrackModを使用して復号化し、class-dump-zを使用してヘッダーを取得し、次にtheos/logosを使用してクラックされたアプリにパッチを適用することを検討しています。
私は先に進み、PoedCrackModを実行してアプリを復号化しました。これにより、.ipaファイルが生成されます。このファイルを抽出して、実際のアプリケーションバイナリを含む.appファイルを取得できます。
使えるより
先に進み、ヘッダーファイルのディレクトリを取得します。これらのヘッダーを$THEOS/ include/Fooにコピーします。(ここで-gオプション[エクスポートされたクラスのみを表示]を使用する必要がありますか、それともエクスポートされていないクラスをフックすることもできますか?)
この時点で、次のようなtweak.xmファイルを作成できるはずです。
参考までに、makefileは次のようになります。
先に進んでTweakをコンパイルしようとすると(この時点では何も実行されないはずです)、あらゆる種類の重複宣言エラーが発生します。これは正常ですか、それとも私は何か間違ったことをしていますか?
正常な場合、これを修正するにはどうすればよいですか?重複する宣言をコメントアウトしようとしました。その場合、コンパイルすることができます。メソッドが呼び出されたときにUIAlertViewsを作成する20以上のフックを挿入しましたが、いずれもトリガーされていないようです-呼び出されていないメソッドをフックしていないと思いますが、どちらかを作成していますヘッダーをダンプしたり、ヘッダーを微調整にインポートしたりするのに間違いがありますか?
誰かが私が間違っているかもしれないことについて何か洞察を持っていますか?
objective-c - ios - Sparrow メール アプリが 5.0.1 でクラッシュする - 修正をビルドしたい、モバイル基板のヘルプが必要
昨日、Sparrow メール アプリをダウンロードしましたが、起動後すぐにクラッシュします。
次のクラッシュ ログが生成されます。
問題は、iOS 5 には存在しない UINavigationBar のプロパティ「shadowImage」です。
現在、クラッシュを回避するためにモバイル基板アドオンを構築しようとしています。不足しているプロパティを上書きして次のコードで UINavigationBar に追加します。
shadowImage または UI_APPEARANCE_SELECTOR を正しく設定する方法がわかりません。
何か案は?ありがとう
ios - ロゴを使用しているときにインスタンスメトが見つかりません%new
ツイートにはロゴを使用しています。- (void)checkTQT
%newを使用してSBAwayControllerに新しいメソッドを追加しましたが、を使用してメソッドを呼び出すと、 [self checkTQT]
「インスタンスメソッド'-checkTQT' not found(return type defaults to'id')」と表示されます。
これが私のコードです:
私はそれを間違って使用しますか?
iphone - .dylib モバイル基板の微調整が機能しない
ソースコードを含むチュートリアルに出くわしたとき、モバイル基板の調整について学んでいました。それをさらに理解するために、私はそれをテストすることにしました
コード:
IOS 電話で theos を使用し、微調整を行い、このコードを「tweak.xm」
に貼り付け、「makefile」に移動して追加しました
私のtest.plistに何があるか疑問に思ったら、ここにあります
次に私は携帯端末に行き、これをしました
次に、theos が作成した .dylib と「test.plist」ファイルをコピーして、/Library/MobileSubstrate/DynamicLibraries に貼り付けました。
その後、デバイスをリスプリングしてアプリを起動しようとしましたが、何も起こりませんでした。すべて正常に起動しました。ここで私を助けてください
ios - モバイル基板を微調整するための設定バンドルを作成するにはどうすればよいですか?
私はtheos
、sdk3
iPhoneにインストールしました
私も機能する微調整を作成しましたが、いくつかの設定を追加するための設定バンドルを作成する方法がわかりません。
はい/いいえまたはBOOLボタンを設定ボタンに追加して、微調整を有効にするかどうかを確認したい
有効になっているかどうかにかかわらず、微調整して読み取るにはどうすればよいですか?例:
助けてください
iphone - MobileSubstrate: オブジェクトをグローバルにアクセス可能にする方法
現在、substrate.h を使用して MobileSubstrate 拡張に取り組んでおり、すべてのバンドルからアクセスできるオブジェクトが必要です。
私が知る限り (そして私が試した限り)、static
コード内に変数を配置しただけでは、現在挿入されているバンドル (SpringBoard や任意のアプリなど) 全体でのみオブジェクトにアクセスできるようになります。
だから、すべてのアプリ (バンドル) から同じオブジェクトにアクセスできるようにするための最良の方法は何だろうか?
クラスにインスタンス変数を追加するというアイデアがありましたSpringBoard
が、明らかにclass_addIvar()
既存のクラスを呼び出すことはできません。
どんな助けでも大歓迎です。