การทดสอบความปลอดภัย - บริการเว็บ
ในแอปพลิเคชันบนเว็บสมัยใหม่การใช้บริการเว็บเป็นสิ่งที่หลีกเลี่ยงไม่ได้และมีแนวโน้มที่จะถูกโจมตีเช่นกัน เนื่องจากบริการเว็บร้องขอการดึงข้อมูลจากนักพัฒนาเว็บไซต์หลายรายจึงต้องใช้มาตรการเพิ่มเติมเล็กน้อยเพื่อหลีกเลี่ยงการเจาะจากแฮกเกอร์
Hands ON
Step 1- ไปที่พื้นที่บริการเว็บของ Webgoat และไปที่ WSDL Scanning ตอนนี้เราต้องการรายละเอียดบัตรเครดิตของหมายเลขบัญชีอื่น ภาพรวมของสถานการณ์มีดังที่กล่าวไว้ด้านล่าง
Step 2 - หากเราเลือกชื่อแรกการเรียกใช้ฟังก์ชัน 'getFirstName' จะทำผ่านคำขอ SOAP xml
Step 3- เมื่อเปิด WSDL เราจะเห็นว่ามีวิธีการดึงข้อมูลบัตรเครดิตเช่นเดียวกับ 'getCreditCard' ตอนนี้ให้เราแก้ไขอินพุตโดยใช้ Burp suite ดังที่แสดงด้านล่าง -
Step 4 - ตอนนี้ให้เราแก้ไขอินพุตโดยใช้ Burp suite ดังที่แสดงด้านล่าง -
Step 5 - เราสามารถรับข้อมูลบัตรเครดิตของผู้ใช้รายอื่นได้
กลไกการป้องกัน
เนื่องจากข้อความ SOAP เป็นแบบ XML ข้อมูลรับรองที่ส่งผ่านทั้งหมดจึงต้องถูกแปลงเป็นรูปแบบข้อความ ดังนั้นเราจึงต้องระมัดระวังในการส่งผ่านข้อมูลที่ละเอียดอ่อนซึ่งจะต้องมีการเข้ารหัสเสมอ
การปกป้องความสมบูรณ์ของข้อความโดยการนำกลไกเช่นการตรวจสอบมาใช้เพื่อให้แน่ใจว่าแพ็คเก็ตมีความสมบูรณ์
การป้องกันการรักษาความลับของข้อความ - การเข้ารหัสแบบอสมมาตรถูกนำไปใช้เพื่อป้องกันคีย์เซสชันแบบสมมาตรซึ่งในการใช้งานจำนวนมากนั้นใช้ได้สำหรับการสื่อสารเพียงครั้งเดียวเท่านั้นและจะถูกยกเลิกในภายหลัง