ไทย

เครื่องมือสำหรับนักพัฒนาซอฟต์แวร์ · ตัวถอดรหัส JWT

อย่าวางโทเค็นการเข้าถึงแบบสดลงในตัวถอดรหัส JWT ฝั่งเซิร์ฟเวอร์

· เหตุใดจึงสำคัญ

jwt ความปลอดภัย ความเป็นส่วนตัว

โทเค็นข้อมูลรับรองที่แยกออกจากเซิร์ฟเวอร์อัปโหลดระยะไกลโดยมีขอบเขตความเป็นส่วนตัวที่ชัดเจน
ภาพประกอบเวกเตอร์ต้นฉบับ ToolAcre

โทเค็นสำหรับผู้ถือคือข้อมูลรับรอง: ใครก็ตามที่ถือโทเค็นนั้นสามารถทำหน้าที่เป็นคุณได้จนกว่าโทเค็นจะหมดอายุ โพสต์นี้จะอธิบายสิ่งที่คุณมอบให้เมื่อวางลงในเครื่องมือที่สื่อสารกับเซิร์ฟเวอร์ และวิธีการแก้ไขข้อบกพร่องอย่างปลอดภัย

วางอย่างรวดเร็วภายใต้ความกดดัน — ทันทีที่ข้อมูลประจำตัวที่ใช้งานได้ออกจากเครื่องของคุณ

การผลิต API ตอบสนอง 401 และขั้นตอนการดีบักที่ดูเร็วที่สุดคือการวางผู้ถือ JWT ลงในตัวถอดรหัสเว็บ ในขณะนั้นคุณอาจมอบข้อมูลประจำตัวที่ใช้งานได้ให้กับเซิร์ฟเวอร์ที่ไม่เกี่ยวข้องกับแอปพลิเคชันของคุณ แผงผลลัพธ์ที่แสดงการอ้างสิทธิ์ที่อ่านได้ไม่ได้บอกคุณว่าผู้ปฏิบัติงานรายนั้นเก็บ บันทึก หรือส่งต่ออะไรบ้าง หยุดและระบุว่าโทเค็นใช้งานได้หรือไม่ก่อนที่จะใช้ตัวถอดรหัสที่สะดวกเป็นตัวจัดรูปแบบที่เป็นกลาง

Bearer หมายถึงการครอบครองคือผู้มีอำนาจ - เหตุใดโทเค็นจึงใกล้กับรหัสผ่านมากกว่า ID

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

สิ่งที่เครื่องมือฝั่งเซิร์ฟเวอร์มองเห็น — โทเค็นทั้งหมด การอ้างสิทธิ์ภายใน และโดยหลักการแล้ว ความสามารถในการเล่นซ้ำในขณะที่ยังใช้งานได้

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

สิ่งที่อยู่ในเพย์โหลด — ตัวระบุผู้ใช้ ที่อยู่อีเมล บทบาท และขอบเขตที่เป็นข้อมูลส่วนบุคคลแม้ว่าจะไม่มีการเล่นซ้ำก็ตาม

เพย์โหลด JWT มีการเข้ารหัส Base64url ไม่ใช่เข้ารหัส อาจมีตัวระบุหัวเรื่อง อีเมล บทบาท ขอบเขต หรือ ID ผู้เช่า แม้ว่าโทเค็นจะหมดอายุและไม่สามารถให้สิทธิ์การเข้าถึงได้อีกต่อไป ฟิลด์เหล่านั้นอาจเป็นข้อมูลที่มีความละเอียดอ่อนส่วนบุคคลหรือเชิงพาณิชย์โดยไม่ขึ้นอยู่กับลายเซ็น ป้ายกำกับอัลกอริทึมและการอ้างสิทธิ์การหมดอายุเป็นเพียงข้อมูลภายในโทเค็นจนกว่าผู้ตรวจสอบที่เชื่อถือได้จะตรวจสอบ ตัวถอดรหัสของ ToolAcre จงใจไม่ตรวจสอบลายเซ็น อย่าใช้เอาต์พุตเป็นการตัดสินใจอนุญาต

นิสัยการแก้ไขข้อบกพร่องที่ปลอดภัยยิ่งขึ้น — การถอดรหัสฝั่งไคลเอ็นต์ โทเค็นหมดอายุหรือทดสอบ และการเพิกถอนหรือหมุนเวียนหลังจากการเปิดเผยใดๆ

ต้องการดีบักเกอร์ออฟไลน์หรือสคริปต์ในเครื่องที่คุณควบคุมสำหรับสื่อการผลิตจริง ใช้โทเค็นที่หมดอายุ หมุนเวียน หรือสังเคราะห์อย่างชัดเจนเมื่อสาธิตตัวถอดรหัสเว็บสาธารณะ หากมีการวางโทเค็นที่ใช้งานได้ในหน้าที่ไม่น่าเชื่อถือ ให้หมุนหรือเพิกถอนโทเค็นแทนที่จะล้างเฉพาะประวัติเบราว์เซอร์ การถอดรหัสฝั่งไคลเอ็นต์เป็นการปรับปรุงที่เหนือกว่าการอัปโหลดค่า แต่ไม่ปลอดภัยโดยอัตโนมัติ: สคริปต์ของหน้าและส่วนขยายอาจอ่านอินพุต DOM และหน้านักพัฒนาที่ใช้งานจริงของ ToolAcre โหลดการเชื่อมต่อไซต์ AdSense ของบุคคลที่สาม GA4 และสคริปต์เครื่องจัดการแท็ก แม้ว่าการแสดงโฆษณาจะถูกปิดใช้งานและเหตุการณ์การวิเคราะห์ ToolAcre ต้องได้รับความยินยอมก็ตาม อย่าวางโทเค็นการเข้าถึงแบบสดลงในเว็บไซต์ใดๆ รวมถึง ToolAcre

ตัวอย่างการทำงาน — เซสชันการแก้ไขจุดบกพร่องที่ตรวจสอบโทเค็นโดยไม่ต้องออกจากเบราว์เซอร์ ได้รับการยืนยันในแผงเครือข่าย

สร้างการทดสอบที่ไม่เป็นอันตราย JWT ในสภาพแวดล้อมการพัฒนา ทำให้การทดสอบเป็นโมฆะ และตรวจสอบสำเนานั้นโดยเปิดแผงเครือข่ายของเบราว์เซอร์ไว้ ToolAcre แยกและถอดรหัสเป็นโค้ดหน้าโดยไม่มีคำขออัปโหลด ToolAcre ที่มีไบต์ คุณสามารถตรวจสอบคำขอเหล่านั้นได้ในระหว่างเซสชันของคุณ คุณอาจยังคงเห็นเนื้อหาเว็บไซต์และการเข้าชมสคริปต์ของบุคคลที่สามที่เปิดเผย ดังนั้นแผงเครือข่ายที่ว่างเปล่าจึงไม่ใช่การอ้างสิทธิ์ เปรียบเทียบส่วนหัวและเพย์โหลดที่แสดงกับข้อมูลการทดสอบที่เชื่อถือได้ของคุณ และจดคำเตือน "ลายเซ็นไม่ได้รับการยืนยัน" อย่างชัดเจนก่อนตีความการอ้างสิทธิ์ใดๆ

สิ่งนี้ไม่ครอบคลุมถึง — โทเค็นรั่วไหลผ่านบันทึกและ URL ซึ่งเป็นเส้นทางการรั่วไหลที่แยกจากกัน

บทความนี้ไม่ได้แก้ปัญหาโทเค็นที่รั่วไหลลงในบันทึกแอปพลิเคชัน สตริงการสืบค้น URL การแชร์หน้าจอ หรือส่วนขยายเบราว์เซอร์ และการถอดรหัสในเครื่องไม่ได้ป้องกันสคริปต์ที่เป็นอันตรายที่สามารถเข้าถึงเพจของคุณแล้วจากการอ่านช่องข้อความ ใช้อายุการใช้งานที่สั้น ขอบเขตสิทธิ์ขั้นต่ำ และการควบคุมการบันทึกที่ปลอดภัยที่บริการที่ออก ตัวถอดรหัสไม่สามารถดัดแปลงคุณสมบัติเหล่านั้นใหม่ลงในข้อมูลรับรองที่สร้างขึ้นอย่างไม่ปลอดภัย

ประเด็นสำคัญ: ตรวจสอบในเครื่องหรือไม่ตรวจสอบเลย — ตัวถอดรหัส ToolAcre JWT ทำงานในเบราว์เซอร์ ไม่เก็บข้อมูลใดๆ และไม่ยืนยันเลย ดังนั้นจึงไม่ต้องการหรือส่งโทเค็นของคุณ

ตรวจสอบในพื้นที่หรือด้วยข้อมูลที่ใช้แล้วทิ้ง ToolAcre JWT ตัวถอดรหัสอ่านและแยกวิเคราะห์โทเค็นที่วางในเบราว์เซอร์ของคุณ และไม่ตรวจสอบความถูกต้อง ดังนั้นจึงสามารถช่วยวินิจฉัยรูปแบบโดยไม่ต้องให้สิทธิ์แก่โทเค็น เนื่องจากนี่ยังคงเป็นหน้าเว็บที่มีโค้ดปฏิบัติการอื่นๆ ให้เลือกเครื่องมือออฟไลน์สำหรับข้อมูลรับรองที่ใช้งานอยู่ โทเค็นการผลิตที่ปลอดภัยที่สุดในการวางลงในตัวถอดรหัสออนไลน์คือไม่มีเลย