ผู้สอน: เอาล่ะ ตอนนี้เรามาลองกำหนดจำนวนคอลัมน์ที่ถูกเลือกในหน้านี้กัน
จึงมีการเลือกและแสดงข้อมูลในหน้านี้มากน้อยเพียงใด
ในการทำเช่นนั้น เราจะใช้คำสั่งตามลำดับ
ดังนั้นเราจึงสั่งซื้อทีละรายการและส่งคืนสิ่งที่ยอมรับได้และการสั่งซื้อ
100,000 ครั้งทำให้เรามีข้อผิดพลาด
เลยลองทำตามลำดับ 10 กัน
และเรายังคงได้รับข้อผิดพลาด
งั้นฉันจะสั่งก่อนห้าโมงนะ
และนั่นก็ใช้ได้
ลองทำคำสั่งโดยหกและนั่นทำให้เกิดข้อผิดพลาด
การทำเช่นนี้ทำให้เรารู้ว่ามีห้าคอลัมน์หรือกำลังถูกเลือกจากตารางใดตารางหนึ่งและเป็นตารางบัญชี
และนำมาแสดงในหน้านี้
มาลองสร้างคำสั่ง select ของเราเองและนำไปรันบนคอมพิวเตอร์เป้าหมายกัน
มาลองสร้างที่นี่กัน
ดังนั้น ในขณะนี้ ใบแจ้งยอดจะเป็น select
star จากบัญชีที่ username เท่ากับ zaid และเรากำลังทำการสั่งซื้อทีละรายการ
มาดูกันว่าเราจะแก้ไขมันได้หรือไม่
และเลือกสิ่งที่เราชอบ
ดังนั้นวิธีปกติในการเลือกสิ่งของคือการใช้รูปแบบนี้
แต่เนื่องจากเรากำลังพยายามเลือกหลายรายการและเรากำลังพยายามทำจาก
URL เราจึงต้องใช้สหภาพแรงงานก่อน แล้วเราจะบอกว่าเลือก
จากนั้นเราต้องจินตนาการถึงสิ่งที่เกิดขึ้นในแอปพลิเคชันนี้
ดังนั้นในแอปพลิเคชันเว็บนี้
เรารู้ว่ามีการเลือกระเบียนห้ารายการ
ดังนั้นจึงมีห้าคอลัมน์ที่กำลังเลือกอยู่
เราทำหนึ่ง สอง สาม สี่ ห้า และเราได้มาจากคำสั่งตามลำดับ
ลองเรียกใช้สิ่งนี้และดูว่าเกิดอะไรขึ้น
และฉันสะกดคำว่า union ผิด
และอย่างที่คุณเห็นตอนนี้ การเลือกนั้นถูกต้อง
และเราได้ตัวเลือกแรก
ดังนั้นการเลือกแรกในบรรทัดนี้จึงเสร็จสิ้น
จากนั้นจึงรวมเข้าด้วยกัน
ดังนั้นมันจึงรวมการเลือกนั้นกับการเลือกอื่นและแสดงให้เราเห็นอย่างอื่น
และอย่างที่คุณเห็นที่นี่
เราเห็นแค่สอง สาม และสี่เท่านั้น
และความหมายก็คือค่าใดก็ตามที่คุณใส่ตัวเลขสองหรือสามหรือสี่
สิ่งที่คุณต้องการเลือก
ถ้าคุณใส่มันเข้าไป
มันจะถูกแสดงในหน้านี้ในตำแหน่งเฉพาะนี้
และคุณจะเห็นว่าที่นี่คุณมีผลลัพธ์สำหรับสองคน
ดังนั้นสิ่งที่คุณใส่เป็นสองส่วนจะแสดงที่นี่ด้วย
ลองมาดูฐานข้อมูลของเรากัน
แทนที่จะเป็นข้อที่สอง
ฉันจะบอกว่าฐานข้อมูล
และแทนที่จะเป็นข้อสาม
ฉันจะพูดชื่อผู้ใช้
หรือผู้ใช้
และแทนที่จะเป็นข้อสี่
ฉันจะทำเวอร์ชัน
และจะเลือกฐานข้อมูลปัจจุบัน สิทธิ์ของผู้ใช้ปัจจุบันที่เรามี
และเวอร์ชันของฐานข้อมูล
ลองดูว่าสิ่งนี้ถูกดำเนินการหรือไม่
แล้วเราจะพูดถึงมัน
โอเคเย็น
ดังนั้นชื่อผู้ใช้จึงแสดงเป็น owasp10
และนั่นคือหมายเลขสอง
นั่นคือฐานข้อมูลที่เรากำลังมองหา
ดังนั้นฐานข้อมูลคือ owasp10
ผู้ใช้ปัจจุบันที่เราเข้าสู่ระบบในฐานะ root@localhost ดังนั้นเราจึงเป็นผู้ใช้รูท
และในลายเซ็น สิ่งเหล่านี้ไม่ได้มีความหมายอะไรเลย
เรากังวลเกี่ยวกับสิ่งนี้เท่านั้นและสิ่งที่เราฉีดเข้าไป
และเราฉีดเวอร์ชันเข้าไป และเราจะเห็นว่านี่เป็นเวอร์ชันของ MySQL ดังนั้นจึงเป็น
5 0. 51.
ในขณะนี้ เรารู้ว่าฐานข้อมูลของเราที่เราเชื่อมต่ออยู่คือ
owasp10
โดยปกติในสถานการณ์จริงส่วนใหญ่ แต่ละฐานข้อมูลถูกกำหนดให้กับผู้ใช้บางคน
โดยปกติแล้ว คุณจะเลือกได้เฉพาะรายการ
ตาราง คอลัมน์ ข้อมูลที่อยู่ในฐานข้อมูลปัจจุบันเท่านั้น
ในขณะนี้ เรากำลังเข้าสู่ระบบในฐานะรูท
ดังนั้นเว็บแอปพลิเคชันนี้จึงเชื่อมต่อกับฐานข้อมูลในฐานะรูท
ดังนั้น เราจึงสามารถเข้าถึงฐานข้อมูลอื่นได้จริง
แต่สิ่งนี้ไม่ได้เกิดขึ้นจริงในสถานการณ์จริง
โดยปกติ ผู้ใช้แต่ละคนจะมีฐานข้อมูลของตนเอง
ดังนั้นเมื่อพวกเขาเชื่อมต่อเว็บแอปพลิเคชันกับฐานข้อมูล พวกเขาเชื่อมต่อกับฐานข้อมูลหนึ่ง
ดังนั้น คุณจะไม่สามารถเข้าถึงฐานข้อมูลอื่นได้
ดังนั้นเราจะพิจารณาว่า
เราจะถือว่าเราเข้าถึงได้เฉพาะ owasp10 ซึ่งเป็นฐานข้อมูลปัจจุบันของเราสำหรับเว็บไซต์ปัจจุบันนี้
และชื่อผู้ใช้นั้นคือ root@localhost
ในวิดีโอหน้า เราจะมาดูกันว่าเราจะใช้ประโยชน์จากสิ่งนี้ต่อไปได้อย่างไร
และทำคำสั่งคัดเลือกที่มีประสิทธิภาพยิ่งขึ้น