5
การแฮ็ค JavaScript ในเบราว์เซอร์ทำได้ง่ายขนาดไหน?
คำถามของฉันเกี่ยวกับความปลอดภัย JavaScript ลองนึกภาพระบบการรับรองความถูกต้องที่คุณใช้เฟรมเวิร์ก JavaScript เช่นBackboneหรือAngularJSและคุณต้องการจุดปลายที่ปลอดภัย นั่นไม่ใช่ปัญหาเนื่องจากเซิร์ฟเวอร์มีคำสุดท้ายเสมอและจะตรวจสอบว่าคุณได้รับอนุญาตให้ทำสิ่งที่คุณต้องการหรือไม่ แต่ถ้าคุณต้องการความปลอดภัยเล็กน้อยโดยไม่ต้องเกี่ยวข้องกับเซิร์ฟเวอร์ล่ะ เป็นไปได้ไหม ตัวอย่างเช่นสมมติว่าคุณมีระบบการกำหนดเส้นทางฝั่งไคลเอ็นต์และคุณต้องการให้มีการป้องกันเส้นทางที่เป็นรูปธรรมสำหรับผู้ใช้ที่เข้าสู่ระบบ ดังนั้นคุณจึง ping เซิร์ฟเวอร์ถามว่าคุณได้รับอนุญาตให้เยี่ยมชมเส้นทางที่มีการป้องกันและคุณไป ปัญหาคือเมื่อคุณ ping เซิร์ฟเวอร์คุณจัดเก็บการตอบสนองในตัวแปรดังนั้นในครั้งต่อไปที่คุณไปเส้นทางส่วนตัวจะตรวจสอบว่าคุณเข้าสู่ระบบแล้ว (ไม่ ping ไปยังเซิร์ฟเวอร์) และขึ้นอยู่กับ ในการตอบสนองมันจะไปหรือไม่ ผู้ใช้สามารถปรับเปลี่ยนตัวแปรนั้นและเข้าถึงได้ง่ายแค่ไหน? ความรู้เกี่ยวกับความปลอดภัย (และ JavaScript) ของฉันไม่ได้ยอดเยี่ยม แต่ถ้าตัวแปรไม่ได้อยู่ในขอบเขตทั่วโลกและอยู่ในส่วนส่วนตัวของรูปแบบโมดูลซึ่งมีเพียง getters แต่ไม่ใช่ setters แม้ในกรณีนั้นคุณสามารถแฮ็คสิ่งนั้นได้หรือไม่