ボルトeスコーターアプリの実用的な脆弱性を活用するPythonスクリプト。
Bolt4Freeは、Bolt e-Scooterアプリで実際的な脆弱性を活用するPythonスクリプトであり、電荷なしで電子スクーターを使用できるようにします。このスクリプトは、ボルトにロック解除料がないという事実を利用しているため、数倍の速度を開始および終了することができます。
HTTP
リクエストを傍受して以下の情報を取得するためのBurpsuit(Burps Suiteとの傍受リクエストの下でMobileでBurpsuitを設定する方法の詳細このプログラムを実行する前に、次の情報が必要です。
cookie
:認証に必要なCookie値。
authorization
:認証に必要な承認値(例:基本的なKZQ5MTC2NZA4NJC1MDQ6MUZCRJAWMEYTQKKZRC00RJGWLUE5NUITRUZFODG4RJYZQZVB)。
payment_instrument_id
:支払い手段のID(adyen_paypal/6837466090316059)。
user_agent
(オプション):リクエストで使用されるユーザーエージェント文字列。デフォルト値は「Bolt/109764413 CFNetwork/1390 Darwin/22.0.0」です。
これらの値はすべて、Bolt Mobileアプリから発信されるhttp
リクエストから取得できます
Bolt4Freeスクリプトを実行するには、リクエストモジュールをインストールする必要があります。インストールしていない場合は、PIPを使用してインストールできます。
pip install requests
要件がインストールされた後、リポジトリをクローンにします。
git clone https://github.com/amstrdm/Bolt4Free.git
スクリプトを実行する前に、コード内の次の変数を必ず変更してください。
Cookie
:Burp Suiteが傍受したリクエストからのCookie
ヘッダーの値に置き換えます。Authorization
:バープスイートが傍受したリクエストからのAuthorization
ヘッダーの価値に置き換えます。Payment_instrument_id
:Burp Suiteがインターセプトされたリクエストのpayment_instrument_id
パラメーターの値に置き換えます。さらに、 user_agent
変数を変更して、目的のユーザーエージェントに一致させることができます。
その後、Pythonで通常のスクリプトを実行できます。
cd Bolt4Free
python3 bolt4free.py
必要な変数( Cookie
、 Authorization
、 Payment_instrument_id
)を取得するには、携帯電話のボルトアプリからBurp Suiteを実行しているコンピューターに投稿リクエストをリダイレクトできます。これにより、リクエストをキャプチャして必要な値を抽出できます。携帯電話からバープスイートへのリクエストをリダイレクトする方法については、こちらをご覧ください。
このプロセスには技術的な専門知識が必要であり、教育目的のみを目的としていることに注意してください。
プログラムは次の手順に従います。
get_user_input()
:ユーザーにボルトスクーターのIDを入力するように求めます。create_and_start_order
:ボルトAPIに投稿リクエストを送信して、ライドを作成して開始します。応答を返します。extract_order_id
:応答jsonから「order_id」を抽出します。getactive1
:アクティブなライドの詳細を取得するために、ボルトAPIにPOSTリクエストを送信します。応答を返します。extract_getactive1_order_id
:応答jsonから「getactive1_id_value」を抽出します。getactive2
:アクティブなライドの詳細を取得するために、2番目のPOSTリクエストをボルトAPIに送信します(このリクエストは不要であり、削除される可能性があります)。finish1
:ボルトAPIにPOSTリクエストを送信して、ライドを終了します(最初のステップ)。finish2
:ボルトAPIにPOSTリクエストを送信して乗車を終了します(2番目のステップ、終了を確認します)。プログラムは、基本的なエラー処理を実行します。リクエストのいずれかが失敗するか、予期しない応答を返した場合、エラーメッセージが印刷されます。エラーが発生した場合、プログラムは終了します。
Bolt4Freeプロジェクトは教育目的であり、バグバウンティプログラムの一部です。プロジェクトの作成者は、プログラムで実行された明示的または違法行為について責任を負いません。このスクリプトを責任を持って自分の責任で使用してください。
現在、プログラムを終了する必要があるため、プログラムを終了する「安全な」方法は現在ありません。したがって、プログラムを終了するときは、ライドがチャンスとして終了した場合に公式のボルトアプリをチェックすることが重要ですプログラムが早期にループから抜け出したため、ライドを終了するために必要なPOST
リクエストを送信しませんでした。
注:このプログラムはISとして提供されており、ボルトAPIまたは認証プロセスの変更に基づいて調整が必要になる場合があります。