เว็บฮุกและการเชื่อมต่อ
ตรวจลายเซ็นเว็บฮุก
คำนวณลายเซ็นบนเนื้อคำขอแบบดิบ ก่อนการแปลง JSON ใด ๆ แล้วเปรียบเทียบในเวลาคงที่ การแปลงเนื้อหากลับเป็นสตริงใหม่ทำให้ไบต์เปลี่ยน และลายเซ็นจะไม่มีวันตรงกันอีก
ขั้นตอน
- จับเนื้อคำขอแบบดิบเป็นไบต์ เฟรมเวิร์กส่วนใหญ่ให้อ็อบเจกต์ที่แปลงแล้วมาโดยค่าเริ่มต้น ซึ่งสายไปแล้ว
- คำนวณลายเซ็นบนไบต์เหล่านั้นเป๊ะ ๆ ด้วยคีย์ลับของปลายทางฝั่งคุณ
- เปรียบเทียบด้วยการเทียบแบบเวลาคงที่ แทนการเทียบสตริงตรง ๆ
- แปลง JSON ต่อเมื่อลายเซ็นผ่านการตรวจแล้วเท่านั้น
- ปฏิเสธทุกอย่างที่ไม่ผ่าน และบันทึก id ของการส่งแทนตัวเนื้อหา
วิธีตรวจผลลัพธ์
การส่งของจริงผ่านการตรวจ ส่วนเนื้อหาเดียวกันที่แก้ไปหนึ่งตัวอักษรไม่ผ่าน
สิ่งที่มักผิดพลาด
- แปลงแล้วแปลงกลับเป็นสตริงใหม่ก่อนคำนวณลายเซ็น
- มิดเดิลแวร์แปลงเนื้อคำขอที่กินสตรีมไปก่อนถึงตัวจัดการของคุณ
===ธรรมดาบนลายเซ็น ซึ่งรั่วผ่านเวลาที่ใช้
บทความนี้แก้ปัญหาให้คุณได้ไหม
วิธีนี้ไม่ช่วย
เขียนมาหาเราพร้อมแพลตฟอร์มและเวอร์ชัน ขั้นตอนที่คุณทำ ผลที่คาดไว้ และพื้นที่ทำงานหรือคิวอาร์โค้ดที่เกี่ยวข้อง ปิดบังทุกข้อมูลลับก่อนแนบอะไรก็ตาม
เขียนถึงฝ่ายสนับสนุน