ผู้สอน: เอาล่ะ ตอนนี้เรารู้แล้วว่าเราสามารถใส่โค้ดใดก็ได้ที่เราต้องการที่นี่
และมันจะถูกดำเนินการบนระบบ
ตอนนี้เรามาดูแถลงการณ์กันอีกครั้ง
ดังนั้นคำสั่งบอกว่า เลือก * จากบัญชี โดยที่ชื่อผู้ใช้เท่ากับชื่อผู้ใช้ที่เราใส่ที่นี่
และรหัสผ่านเท่ากับรหัสผ่านที่เราใส่ไว้
มาดูกันว่าเราสามารถใช้สิ่งนั้นเพื่อเข้าสู่ระบบโดยไม่ต้องใช้รหัสผ่านโดยไม่ต้องรู้รหัสผ่าน
และฉันจะทำอย่างนั้นกับผู้ดูแลระบบ
ดังนั้นผู้ดูแลระบบชื่อผู้ใช้จะเป็นผู้ดูแลระบบ
และฉันไม่รู้ว่ารหัสผ่านสำหรับผู้ดูแลระบบคืออะไร
สิ่งที่ฉันจะทำ ฉันจะใส่อะไรก็ได้
ไม่มีอะไรจริงๆ รหัสผ่านแบบสุ่ม และในโค้ด
ฉันควรจะเรียกใช้ที่นี่
กำลังทำอยู่ และ 1 = 1 และ หรืออย่างอื่น ดังนั้น
สิ่งที่ฉันจะทำคือ ฉันกำลังจะทำ หรือ
แทนที่จะทำ และ
และผมจะบอกว่า 1 = 1
ดังนั้น โค้ดของเราจะเป็นอย่างไร เมื่อฉันรันสิ่งนี้
เมื่อฉันฉีดสิ่งนี้
มันจะเข้าไปในนี้ เหมือนที่เราทำก่อนหน้านี้
ดังนั้นโค้ดของเราจะเป็นแบบนี้, มันจะเป็นอย่างนั้น
เลือก * จากบัญชี โดยที่ชื่อผู้ใช้ของเราเท่ากับผู้ดูแลระบบ
และรหัสผ่านจะเท่ากับ AAA
ตอนนี้มันผิด
หรือ 1 = 1 ซึ่งถูกต้อง
ดังนั้น เมื่อใดก็ตามที่คุณมี หรือ ถ้าเงื่อนไข หรือ ถูกต้อง
ทุกอย่างถูกต้อง
นั่นเป็นวิธีที่หรือคำสั่งทำงาน
ดังนั้น เลือก * จากบัญชี
เราเป็นผู้ใช้เท่ากับผู้ดูแลระบบ
โอเคชื่อผู้ใช้เท่ากับผู้ดูแลระบบ
และรหัสผ่านก็เท่ากับ AAA ผิด
หรือ 1 = 1 ก็ได้ ฉันจะรับไว้
จากนั้น มันก็จะรันมันจริง
ๆ และให้เราล็อกอินเข้าสู่ admin โดยที่ไม่รู้รหัสผ่านสำหรับ
admin
เลยลองฉีดตอนนี้
และอย่างที่คุณเห็น ฉันสามารถเข้าสู่ระบบได้ ในฐานะผู้ดูแลระบบ
และลิงคือลายเซ็นของผู้ดูแลระบบ
ตอนนี้ การบายพาสและการเข้าสู่ระบบสามารถทำได้หลายวิธี
ขึ้นอยู่กับรหัสที่เขียนบนหน้า
และขึ้นอยู่กับวิธีที่คุณต้องการทำ และวิธีที่คุณจินตนาการถึงโค้ด
และหลายๆ กรณี เมื่อคุณใส่เครื่องหมายอัญประกาศเดี่ยวที่นี่
คุณจะไม่เห็นข้อความนี้
บางครั้งคุณเห็นมัน
ซึ่งทำให้งานของคุณง่ายขึ้นมาก
ถ้าไม่เช่นนั้น คุณต้องเดาว่าหน้าตาเป็นอย่างไร
ผมจะแสดงตัวอย่างอื่นของการบายพาสให้คุณดู
แทนที่จะฉีดโค้ดแบบนี้ พารามิเตอร์
admin ก็สามารถฉีดได้เช่นกัน อย่างที่คุณเห็นเมื่อฉันใส่เครื่องหมายอัญประกาศเดี่ยวนี้
พารามิเตอร์ admin เป็นแบบฉีดได้ เช่นเดียวกับรหัสผ่าน
เพื่อให้เราสามารถใส่รหัสในชื่อผู้ใช้ได้เช่นกัน
และสิ่งที่ผมจะทำในตอนนี้ ลองมาดูเรื่องนี้กัน
และผมจะรีเซ็ตมันให้เป็นแบบปกติ
ดังนั้น เราจะมี และชื่อผู้ใช้และรหัสผ่าน จากฟิลด์ที่คุณใส่ในที่นี้
จะถูกแทนที่ และชื่อผู้ใช้และรหัสผ่านจากฟิลด์ที่คุณใส่ที่นี่
เรามาลองใส่อะไรบางอย่างในชื่อผู้ใช้กัน
และสิ่งที่ฉันจะพูดก็คือ ฉันจะบอกว่า
username เท่ากับ admin แล้วฉันจะปิดใบเสนอราคาเอง เพิ่มความคิดเห็น.
ดังนั้น คำสั่งของผม เมื่อผมรันคำสั่ง มันจะออกมาเป็นแบบนี้
และผมจะคัดลอกมันตรงนี้
และเมื่อฉันฉีดเข้าไป เมื่อฉันใส่รหัสนี้ที่นี่ ในชื่อของฉัน
มันจะฉีดเข้าไปตรงนั้น โค้ดก็จะออกมาเป็นแบบนี้
มันจะเลือกเริ่มจากบัญชีโดยที่
username เท่ากับ admin
ผมปิดใบเสนอราคาเองที่นี่ โดยใช้นี่ตรงนี้
จากนั้นฉันกำลังเพิ่มความคิดเห็น โดยพื้นฐานแล้ว
ทั้งหมดนี้จะไม่ถูกดำเนินการ ดังนั้นรหัสจะเป็นนี่
จะถูกเลือก * จากบัญชี โดยที่ชื่อผู้ใช้เท่ากับผู้ดูแลระบบ
และจะให้ฉันเข้าสู่ระบบโดยไม่ต้องป้อนรหัสผ่านใดๆ
เลย ลองทำกันดู
ฉันจะใส่ชื่อผู้ใช้ของฉันเป็นผู้ดูแลระบบ และฉันจะปิดใบเสนอราคาและเพิ่มความคิดเห็น
จากนั้นคุณสามารถใส่รหัสผ่านที่คุณต้องการได้
ฉันจะใส่ #1 แล้วฉันจะเข้าสู่ระบบ
และอย่างที่คุณเห็น ฉันจัดการเข้าสู่ระบบในฐานะผู้ดูแลระบบได้
อีกครั้ง นี่คือการทดสอบกล่องดำ ดังนั้นคุณจึงไม่เห็นรหัสจริงๆ
ในหลายกรณี คุณอยากจะลองเล่นกับมันและดูว่ามันทำงานอย่างไรกับคุณ
แต่สิ่งสำคัญคือ คุณต้องการทดสอบว่ามีการฉีด SQL หรือไม่
และคุณจะใช้วิธีนี้โดยใช้วิธีที่เราแสดงให้คุณเห็นในวิดีโอที่แล้ว
ลองใช้เครื่องหมายคำพูดเดียว ลองใช้คำสั่ง
and ลองใช้ข้อความจริงกับข้อความ จากนั้น 1 =
1 แล้วตามด้วยข้อความเท็จ ดังนั้น 1 = 0, หรือ
2 = 0 และหากเป็นไปตามที่คาดไว้ แสดงว่าคุณตกเป็นเป้าหมาย มีการฉีด
SQL และคุณสามารถเริ่มเล่นกับมันได้