สคริปต์ Python ใช้ประโยชน์จากช่องโหว่ในทางปฏิบัติในแอพ Bolt E-Scooter ซึ่งทำให้สามารถใช้ e-scooters ได้โดยไม่ต้องเสียค่าใช้จ่ายใด ๆ
Bolt4Free เป็นสคริปต์ Python ที่ใช้ประโยชน์จากช่องโหว่ในทางปฏิบัติในแอพ Bolt E-Scooter ช่วยให้คุณใช้ E-scooters โดยไม่เสียค่าใช้จ่ายใด ๆ สคริปต์ใช้ประโยชน์จากข้อเท็จจริงที่ว่า Bolt ไม่มีค่าธรรมเนียมการปลดล็อคดังนั้นการขับขี่สามารถเริ่มต้นและยกเลิกได้หลายครั้งตามที่ต้องการและหากระยะเวลาของการขับขี่อยู่ภายใต้กรอบเวลาที่กำหนดจะไม่มีค่าใช้จ่าย
HTTP
และรับข้อมูลด้านล่าง (เพิ่มเติมเกี่ยวกับวิธีการตั้งค่า burpsuit บนมือถือภายใต้การร้องขอการสกัดกั้นด้วย Burp Suiteก่อนที่จะเรียกใช้โปรแกรมนี้คุณต้องมีข้อมูลต่อไปนี้:
cookie
: ค่าคุกกี้ที่จำเป็นสำหรับการรับรองความถูกต้อง
authorization
: ค่าการอนุญาตที่จำเป็นสำหรับการรับรองความถูกต้อง (เช่นพื้นฐาน KZQ5MTC2NZA4NJC1MDQ6MUZCRJAWMEYTQKQZRC00RJGWLUE5NUITRUZFODG4RJYZQZVB)
payment_instrument_id
: รหัสของเครื่องมือการชำระเงิน (เช่น Adyen_PayPal/6837466090316059)
user_agent
(ไม่บังคับ): สตริงตัวแทนผู้ใช้ที่จะใช้ในคำขอ ค่าเริ่มต้นคือ "Bolt/109764413 CFNetwork/1390 Darwin/22.0.0"
ค่าเหล่านี้ทั้งหมดสามารถรับได้จากคำขอ http
ใด ๆ ที่ส่งออกจากแอพ Bolt Mobile
ในการเรียกใช้สคริปต์ Bolt4Free คุณจะต้องติดตั้งโมดูลคำขอ หากคุณไม่ได้ติดตั้งคุณสามารถติดตั้งได้โดยใช้ PIP:
pip install requests
หลังจากข้อกำหนดติดตั้งโคลนแล้วที่เก็บ:
git clone https://github.com/amstrdm/Bolt4Free.git
ก่อนเรียกใช้สคริปต์ตรวจสอบให้แน่ใจว่าได้แก้ไขตัวแปรต่อไปนี้ในรหัส:
Cookie
: แทนที่ด้วยค่าของส่วนหัว Cookie
จากคำขอที่สกัดกั้นโดย Burp SuiteAuthorization
: แทนที่ด้วยค่าของส่วนหัว Authorization
จากคำขอที่สกัดกั้นโดย Burp SuitePayment_instrument_id
: แทนที่ด้วยค่าของพารามิเตอร์ payment_instrument_id
จากคำขอที่ถูกสกัดกั้นโดย Burp Suite นอกจากนี้คุณสามารถเปลี่ยนตัวแปร user_agent
เพื่อให้ตรงกับตัวแทนผู้ใช้ที่คุณต้องการ
หลังจากนั้นคุณสามารถเรียกใช้สคริปต์ได้ตามปกติด้วย Python:
cd Bolt4Free
python3 bolt4free.py
ในการรับตัวแปรที่ต้องการ ( Cookie
, Authorization
, Payment_instrument_id
) คุณสามารถเปลี่ยนเส้นทางคำขอโพสต์จากแอพ Bolt ของโทรศัพท์ของคุณไปยังคอมพิวเตอร์ที่ใช้ชุด Burp Suite สิ่งนี้ช่วยให้คุณสามารถจับคำขอและแยกค่าที่จำเป็น คุณสามารถค้นหาคำแนะนำเกี่ยวกับวิธีการเปลี่ยนเส้นทางคำขอจากโทรศัพท์ไปยัง Burp Suite ได้ที่นี่
โปรดทราบว่ากระบวนการนี้อาจต้องใช้ความเชี่ยวชาญด้านเทคนิคและมีวัตถุประสงค์เพื่อการศึกษาเท่านั้น
โปรแกรมทำตามขั้นตอนต่อไปนี้:
get_user_input()
: แจ้งให้ผู้ใช้ป้อน ID ของสกูตเตอร์ Boltcreate_and_start_order
: ส่งคำขอโพสต์ไปยัง Bolt API เพื่อสร้างและเริ่มการขับขี่ ส่งคืนการตอบกลับextract_order_id
: แยก "order_id" จากการตอบกลับ JSONgetactive1
: ส่งคำขอโพสต์ไปยัง Bolt API เพื่อรับรายละเอียดการขับขี่ที่ใช้งานอยู่ ส่งคืนการตอบกลับextract_getactive1_order_id
: แยก "getactive1_id_value" จากการตอบสนอง JSONgetactive2
: ส่งคำขอโพสต์ที่สองไปยัง Bolt API เพื่อรับรายละเอียดการขับขี่ที่ใช้งานอยู่ (คำขอนี้อาจไม่จำเป็นและสามารถลบออกได้)finish1
: ส่งคำขอโพสต์ไปยัง Bolt API เพื่อจบการนั่ง (ขั้นตอนแรก)finish2
: ส่งคำขอโพสต์ไปยัง Bolt API เพื่อจบการนั่ง (ขั้นตอนที่สองยืนยันการเลิกจ้าง)โปรแกรมดำเนินการจัดการข้อผิดพลาดพื้นฐาน หากคำขอใด ๆ ล้มเหลวหรือส่งคืนการตอบกลับที่ไม่คาดคิดข้อความแสดงข้อผิดพลาดจะถูกพิมพ์ โปรแกรมจะออกในกรณีที่เกิดข้อผิดพลาด
โครงการ Bolt4Free มีวัตถุประสงค์เพื่อการศึกษาและเป็นส่วนหนึ่งของโปรแกรม Bug Bounty ผู้สร้างโครงการจะไม่รับผิดชอบต่อการกระทำที่ชัดเจนหรือผิดกฎหมายใด ๆ ที่ดำเนินการกับโปรแกรม ใช้สคริปต์นี้อย่างรับผิดชอบและมีความเสี่ยงของคุณเอง
โปรดทราบว่าขณะนี้ไม่มีวิธีการ "ปลอดภัย" ในการออกจากโปรแกรมเนื่องจากจะต้องมีเกลียวซึ่งอาจจะเพิ่มในภายหลังดังนั้นเมื่อยกเลิกโปรแกรมเป็นสิ่งสำคัญที่จะต้องตรวจสอบแอพ Bolt อย่างเป็นทางการหากการขับขี่สิ้นสุดลงเป็นโอกาส โปรแกรมจะออกมาจากการวนรอบก่อนและดังนั้นจึงไม่ได้ส่งคำขอ POST
ที่จำเป็นเพื่อยุติการขับขี่
หมายเหตุ: โปรแกรมนี้มีให้ในรูปแบบและอาจต้องมีการปรับเปลี่ยนตามการเปลี่ยนแปลงใด ๆ ของ BOLT API หรือกระบวนการตรวจสอบความถูกต้อง