>> LUCIANO Arango: ตกลงครับ
ชื่อของฉันคือลูเซียโนเบียร์ปาเรเด
ฉันนักเรียนปีที่สองในบ้านอดัมส์
และเรากำลังจะพูดคุยเกี่ยวกับ การรักษาความปลอดภัยป้องกันที่ใช้งานเว็บ
ดังนั้นผมทำงานให้กับสำนักงานคณะกรรมการข้อมูล การรักษาความปลอดภัยในทะเล
และในช่วงฤดู​​ร้อนที่ฉันฝึกงานที่ SeguraTec ซึ่งเป็นข้อมูล
บริษัท รักษาความปลอดภัยที่ทำหน้าที่ สำหรับธนาคารแห่งโคลัมเบีย
นั่นคือส่วนใหญ่ที่ผมได้เรียนรู้ สิ่งที่ฉันได้เรียนรู้เพื่อให้ห่างไกล
>> และอื่น ๆ บางส่วนของวัสดุที่เรากำลัง จะไปกว่าวันนี้เรายังไม่ได้
พูดคุยกันมากเกี่ยวกับในชั้นเรียน
แต่เราจะเร็ว
มันจะเป็นเช่น SQL, JavaScript
และเรายังไม่ได้ไปจริงๆมากกว่านั้น
ดังนั้นผมอาจจะเรียงลำดับของการบินผ่านมันและ คุณอาจไม่ทราบบางสิ่งบางอย่าง
แต่ในไม่ช้าคุณจะเรียนรู้มัน
และมันทั้งหมดจะทำให้ความรู้สึก
นอกจากนี้ยังมีสิ่งอื่น -
อยู่ที่จริยธรรม
บางส่วนของสิ่งที่คุณเรียนรู้คุณ สามารถใช้ในรูปแบบที่ไม่จริยธรรม
>> ถ้ามันเป็นของคุณแน่นอนลอง
แน่นอนผมกระตุ้นให้พวกคุณ การพยายามที่เซิร์ฟเวอร์ของคุณเองลอง
ไปภายในพวกเขา
ดูว่าคุณสามารถเจาะพวกเขา ถ้าคุณจะได้รับในพวกเขา
แต่ไม่ได้คนอื่น
ตำรวจไม่ชอบเรื่องตลกและ ทั้งที่เราใส่ที่นี่
เรากำลัง messing รอบ
พวกเขาได้รับโกรธจริงๆ
>> เพื่อตรงไปที่เว็บไซต์นี้
ฉันมีมันเปิดที่นี่
นี้เป็นเว็บไซต์และมัน มีพวงของตัวอย่าง
สิ่งที่เกิดขึ้นคือตัวอย่างแรก มีการเรียงลำดับของความเป็นไปได้มากขึ้น
กว่าตัวอย่างที่ผ่านมาในความรู้สึก ที่ตัวอย่างแรก
ไม่ปลอดภัยอย่างสมบูรณ์
และสุดท้ายคือการจัดเรียงของสิ่งที่ ผู้รักษาความปลอดภัยเว็บปกติจะทำ
แต่คุณยังสามารถเรียงลำดับ ของได้รับรอบที่
และเรากำลังจะมุ่งเน้นไปที่หนึ่ง และทั้งสองตัวอย่างที่หนึ่งและสอง
>> ตกลง
ขอเริ่มต้นด้วยการเขียนสคริปต์ข้ามไซต์
จาวาสคริปต์ที่ทำงานใน เบราว์เซอร์ของลูกค้า
มันเป็นภาษาโปรแกรมที่คุณใช้ เพื่อให้ทำงานบนเบราว์เซอร์ของลูกค้าเพื่อให้
คุณไม่ได้มีการปรับปรุงเว็บไซต์ และไปกลับไปยังเซิร์ฟเวอร์
คุณมีมันทำงาน
ตัวอย่างเช่น Facebook, คุณไม่ได้มี เพื่อโหลดเว็บไซต์สำหรับสถานะใหม่
การปรับปรุงที่จะเกิดขึ้น
มันใช้งานจาวาสคริปต์ในการสร้าง สิ่งเหล่านี้
ดังนั้นเราจึงสามารถฉีดที่เป็นอันตราย JavaScript ในเว็บไซต์
และวิธีการที่เมื่อเราส่งลิงค์ไปยัง ใครสักคนที่เราเรียงลำดับของความสามารถที่จะส่งไปพร้อมกับ
บางส่วนของรหัสที่เราต้องการ
>> มีถาวรและไม่ถาวร JavaScript -
ถาวรและไม่ถาวรข้ามไซต์ การเขียนสคริปต์ที่ผมหมายถึง
และความแตกต่างการที่ถาวร เป็น JavaScript ที่จะ
ที่บันทึกไว้ในเว็บไซต์
และไม่ถาวรจะเป็น JavaScript ที่จะเกิดขึ้นจริงเพียงครั้งเดียว
ดังนั้นเรามาดูตัวอย่าง จริงอย่างรวดเร็ว
>> ตกลง
ดังนั้นเว็บไซต์นี้ง่าย ไม่มีอะไรเกิดขึ้นที่นี่
และเราจะพยายามที่จะ แทรกบาง JavaScript
ดังนั้นวิธีที่เราเริ่มเขียน JavaScript คือเราเริ่มต้นด้วยการเริ่มต้นสคริปต์
และเราปิดมันกับสคริปต์
เราก็จะใส่ข้อความ -
ฉันจะแสดงให้คุณ -
เตือนภัย
การแจ้งเตือนเป็นฟังก์ชันที่ JavaScript ใช้ในการแสดงบางสิ่งบางอย่าง
ดังนั้นเรามาลองจริงอย่างรวดเร็ว
ฉันจะไปสวัสดีการแจ้งเตือน
ดีฉันลืมที่จะใส่ -
ตกลง
เพื่อให้ง่าย
>> เราใส่ JavaScript บนเว็บไซต์ และมันขึ้นมา
และการจัดเรียงของจะเกิดขึ้น ในเว็บไซต์ของเราใช่ไหม
ดังนั้นดูเหมือนว่ามันไม่ ปัญหาใช่ไหม
ผมหมายถึงวิธีการที่คุณสามารถใช้ นี้ประสงค์ร้าย?
ดังนั้นวิธีการที่แฮกเกอร์ทำ นี้เป็นเรื่องง่ายมาก
พวกเขากำลังจะคว้ามัน
พวกเขาสามารถส่งลิงค์นี้เพื่อคุณ
ถ้าผมจะส่งลิงค์นี้เพื่อคุณในขณะนี้ และคุณเปิดมันขึ้นมามันจะ
พูดว่าสวัสดีบอกว่าเว็บไซต์ของฉัน จะบอกคุณสวัสดี
>> และอื่น ๆ ถ้าผมต้องพูดอะไรบางอย่าง นิด ๆ หน่อย ๆ อย่างชาญฉลาดถ้าผมดึงขึ้น
ฟังก์ชัน JavaScript ผมชนิด ของแล้วเขียน -
แต่ถ้าคุณมองไปที่มันฉันจะไป มากกว่านั้นก่อนที่ผมจะเขียนมัน
ดังนั้นเรากำลังจะหมดเวลาที่กำหนด
เราจะรอให้ สองสามวินาที
ในความเป็นจริงที่เรากำลังจะรอถ้า ฉันไม่ได้เข้าใจผิดห้าวินาที
นี้ไปในมิลลิวินาที
และแล้วสิ่งที่เรากำลังจะทำคือเรา จะแจ้งเตือนว่าการเข้าสู่ระบบ
หมดเวลาที่จะกลับเข้าสู่ระบบ
และเรากำลังจะเปลี่ยนสถานที่ ไปยังสถานที่ที่แตกต่างกัน
>> ดังนั้นถ้าผมส่งเว็บไซต์นี้เพื่อใครสักคน พวกเขากำลังจะเป็น
เรียกดูรอบ ๆ ที่เงียบสงบ
ไม่มีอะไรที่เกิดขึ้น
และในห้าวินาทีก็จะ ที่จะบอกว่าการเข้าสู่ระบบของคุณหมดเวลา
กรุณาเข้าสู่ระบบกลับมา
เมื่อพวกเขาคลิกตกลงฉันจะ พาพวกเขาไปยังเว็บไซต์อื่น
สมมุติเว็บไซต์จะ จะคล้ายกับเว็บไซต์ที่
พวกเขาอยู่ในก่อน
และพวกเขากำลังจะเข้าสู่ระบบของพวกเขา ข้อมูลประจำตัวที่ลงในเว็บไซต์ของฉันแทน
เว็บไซต์ของพวกเขา
>> และเพื่อให้สามารถส่งคน อีเมลที่มีการเชื่อมโยงนี้
ผมบอกว่าโอ้นี่คือการเชื่อมโยง
นี้เป็นธนาคารตัวอย่างเช่น
ผมบอกว่าที่นี่ให้ไปที่ลิงค์นี้
และเมื่อพวกเขาส่งไปที่พวกเขากำลัง จะได้รับการเรียกดูรอบ
ฉันจะรอเป็นเวลา 15 วินาที, 20 วินาที, แล้วปรากฏว่าโปรดกลับเข้าสู่ระบบใน
สมัครกลับมาที่
พวกคุณสามารถลองกับ สิ่งที่มากขึ้น
มันซับซ้อนเพราะพวกคุณ ยังไม่เคยเห็น JavaScript ดังนั้นคุณอาจจะ
ไม่ทราบการทำงานบางอย่าง
แต่สิ่งที่คุณต้องทำคือการเริ่มต้น กับสคริปต์จบกับสคริปต์
และคุณอาจจะใส่อะไร อยู่ตรงกลาง
>> การแจ้งเตือนเป็นฟังก์ชันรอ
สถานหน้าต่างจะนำคุณ ไปยังสถานที่ใหม่
แต่คุณสามารถทำมากขึ้น
และเพื่อให้ความคิดที่ว่า เราใช้เวลาที่ออก
ถ้าฉันไปกับตัวอย่างที่สองและฉัน ใส่ในรหัสเดียวกันนี้ก็
ไม่ไปทำงาน
จึงพิมพ์ทุกอย่างออกมาเพราะ สิ่งที่เว็บไซต์นี้ แต่เดิม
ไม่เป็นถ้าฉันใส่อะไรที่นี่ มันจะพิมพ์ออกมาที่นี่
จึงไม่พิมพ์อะไรออก
ตัวอย่างนี้เป็นจริงการตรวจสอบ เพื่อดูว่าจะมีสคริปต์
เพื่อใช่ไปข้างหน้า
ถามฉัน
>> ผู้ชม: ไม่ส่ง หรือได้รับการโพสต์ขอ?
>> LUCIANO Arango: ใช่ พวกเขากำลัง ส่งคำขอได้รับ
>> ผู้ชม: มันคืออะไร
>> LUCIANO Arango: ใช่
นอกจากนี้ยังมีเบราว์เซอร์ที่ใช้แสดงการโพสต์
แต่ฉันพยายามที่จะแสดงการร้องขอที่ได้รับ เพื่อให้เราสามารถมองเห็นสิ่งที่เป็น
จริงที่เกิดขึ้น
และดังนั้นหากเราดูที่รหัสนี้ - จึงไม่ทำงานอีกต่อไป
และถ้าเราจะดูที่รหัสนี้ มันเป็นไปได้ในตัวอย่างที่สอง
สิ่งที่คนนี้จะทำคน ในความดูแลของเบราว์เซอร์นี้ -
เปิด, OK -
คือแทนที่สคริปต์คำ
นี่คือ PHP ซึ่งพวกคุณอาจจะ ได้เห็นนิด ๆ หน่อย ๆ ของยัง
>> เขาเพียงแค่เปลี่ยน สคริปต์คำที่มีชื่อ
ดังนั้น แต่ถ้าฉันไปข้างหน้า และเพียงแค่ใส่ใน -
ถ้าผมคว้ารหัสของฉันอีกครั้งและฉันจะ ในการปรับเปลี่ยนก็แค่นิด ๆ หน่อย ๆ
แทนสคริปต์ที่ฉันจะเปลี่ยน มันเป็นสคริปต์ที่มีทุนอาร์และ
เราจะดูว่ารหัสนี้ทำงาน
ดังนั้นจึงไม่ได้พิมพ์ออกมา ซึ่งเป็นสัญญาณที่ดี
และหวังว่าในสองวินาทีเพิ่มเติม มันจะปรากฏขึ้น
>> การเข้าสู่ระบบของคุณหมดเวลา
ตกลง
ไม่เป็นไร
ดังนั้นการตรวจสอบสคริปต์อาจ ไม่จำเป็นต้องทำงาน
คน -
ก็ยังสามารถตรวจสอบการพิมพ์สคริปต์ พิมพ์เล็กสคริปต์กรณีที
เปรียบเทียบให้แน่ใจว่าพวกเขากำลังเดียวกัน
แต่แฮกเกอร์ยังสามารถทำเรียงลำดับของสิ่งที่ ที่เราทำใน Vigenere เมื่อเราย้าย
ตัวละครกลับคู่ รุกคืบ
และจะสามารถคิดออกว่าจะวางสคริปต์ กลับมาอยู่ในที่มีเพื่อให้สามารถฉีด
สคริปต์ที่
>> ดังนั้นสิ่งที่คุณต้องการที่จะใช้ เป็น htmlspecialchars ไป
ป้องกันเว็บไซต์ของคุณ
และสิ่งนี้จะทำให้ แน่ใจว่าสิ่งที่คุณใส่ใน -
ตัวอย่างเช่นใบเสนอราคาหรือนี้ มากกว่าหรือน้อยกว่า -
จะถูกแทนที่ด้วยบางสิ่งบางอย่าง ที่จะไม่เป็น -
ให้ฉันขยายที่นี่ -
เครื่องหมายที่เกิดขึ้นจริง
มันจะแทนพิเศษ HTML ตัวอักษรที่เราจะเห็นเมื่อเรา
พูดคุยเกี่ยวกับ -
โอ้นี้จะพาฉันกลับไป -
ตัวละครเหล่านี้ที่นี่
>> เหล่านี้มีความหมายว่าอะไร จะมา
สำหรับ HTML ที่วงเล็บจุดเริ่มต้น บอกเราว่าสิ่งที่
HTML ที่เกี่ยวข้องมา
และเราต้องการที่จะกำจัดของที่
เราไม่ต้องการที่จะใส่ลงไปใน HTML website.k เราไม่ต้องการให้ผู้ที่จะ
สามารถที่จะนำสิ่งที่อยู่ในเว็บไซต์ของพวกเขา ที่สามารถส่งผลกระทบต่อเว็บไซต์ของพวกเขาเช่น
สคริปต์หรือ HTML หรือสิ่งที่ต้องการ
สิ่งที่สำคัญคือการที่คุณ sanitize เข้าของผู้ใช้
>> เพื่อให้ผู้ใช้สามารถป้อนข้อมูลที่หลายสิ่งหลายอย่าง
เขาสามารถใส่พวงของสิ่งที่จะลอง เพื่อหลอกลวงให้เบราว์เซอร์ของคุณเป็นยัง
ใช้รหัสสคริปต์นี้
สิ่งที่คุณต้องการจะทำคือไม่เพียงแค่มอง สำหรับสคริปต์ แต่มองสำหรับทุกอย่าง
ที่อาจจะเป็นอันตราย
และ htmlspecialchars จะทำอย่างนั้น สำหรับคุณเพื่อให้คุณไม่ได้
กังวลกับมัน
แต่ไม่พยายามที่จะทำด้วยตัวเอง การจัดเรียงของที่มีรหัสของคุณเอง
คือทุกคนที่ชัดเจนใน XSS?
>> ตกลง
ขอไปฉีด
ดังนั้นการฉีดน่าจะเป็น หมายเลขหนึ่งของช่องโหว่
ในเว็บไซต์ที่แตกต่างกัน
ผมหมายถึงเป็นตัวอย่างที่ดี -
ฉันเป็นเพียงการค้นคว้าไกล เพื่อสิ่งนี้
และผมพบบทความนี้ที่น่ากลัวที่ ผมเห็นว่าฮาร์วาร์ถูกละเมิด
ถูกชำแหละ
และฉันถูกสงสัยดี วิธีการที่พวกเขาจะทำมันได้หรือไม่
ฮาร์วาร์เป็นที่น่ากลัวมากที่สุดส่วนใหญ่ มหาวิทยาลัยที่มีความปลอดภัยที่เคย
ใช่มั้ย?
ดีที่จะทำลายเซิร์ฟเวอร์ แฮกเกอร์ที่ใช้
เทคนิคที่เรียกว่าการฉีด
>> ดังนั้นนี้เกิดขึ้นในวันที่ตามวัน
คนลืมที่จะใช้บัญชี สำหรับการฉีด SQL
ฮาร์วาร์ไม่
ฉันคิดว่ามันพูดว่าที่นี่พรินซ์ตัน Stanford, คอร์เนล
ดังนั้นทำอย่างไรเรา - ดังนั้นสิ่งที่เป็น SQL นี้ การฉีดที่จะนำสิ่งเหล่านี้
คนลง
ตกลง
ดังนั้น SQL เป็นภาษาการเขียนโปรแกรมที่ เราใช้ในการเข้าถึงฐานข้อมูล
สิ่งที่เราทำคือเราเลือก -
ดังนั้นสิ่งนี้อ่านได้ในขณะนี้คือการเลือก ทุกอย่างจากตาราง
>> SQL, การเปลี่ยนแปลงในฐานข้อมูลเหล่านี้ ที่มีตารางเต็มไปด้วยข้อมูล
เพื่อเลือกทุกอย่างจากผู้ใช้ ที่มีชื่อเป็นชื่อผู้ใช้
ใช่มั้ย?
ง่ายพอ
ความคิดของการฉีดคือการที่เรา ใส่รหัสที่เป็นอันตรายบางอย่างที่จะ
หลอกลวงเซิร์ฟเวอร์ในการทำงานบางอย่าง แตกต่างจากสิ่งที่มัน
แต่เดิมมีการทำงาน
จึงขอกล่าวว่าสำหรับชื่อผู้ใช้ เราใส่ในหรือ 1 เท่ากับ 1
ดังนั้นเราจึงใส่ในหรือ 1 เท่ากับ 1
วิธีที่มันจะอ่านตอนนี้จะเลือก จากผู้ใช้ทุกอย่างจาก
ผู้ใช้ - นี่คือทุกอย่าง -
ที่มีชื่อเป็นชื่อผู้ใช้ แต่ ชื่อผู้ใช้หรือ 1 เท่ากับ 1
>> ดังนั้นชื่ออะไรหรือ 1 เท่ากับ 1
1 เท่ากับ 1 เป็นจริงเสมอ
ดังนั้นนี้จะส่งกลับข้อมูล จากผู้ใช้
ตกลง
เราไม่จำเป็นต้องมี ชื่อผู้ใช้ที่ถูกต้อง
เราก็สามารถมีสิ่งที่เราต้องการ และจะส่งกลับข้อมูล
ที่เราต้องการ
ลองดูตัวอย่างอื่น
>> ถ้าเราได้เลือกทุกอย่างจากผู้ใช้ ที่มีชื่อเป็นผู้ใช้ตาราง DROP -
ดังนั้นสิ่งที่คุณคิดนี้จะ ทำอย่างไรถ้าฉันใส่ในชื่อผู้ใช้
เป็นผู้ใช้ตาราง DROP?
ทุกคนมีความคิด?
ใช่
>> ผู้ชม: มันจะบอก ให้การถ่ายโอนข้อมูลตารางทั้งหมด
>> LUCIANO Arango: มันจะบอกเรา การถ่ายโอนข้อมูลทุกอย่างในเว็บไซต์
ทุกสิ่งที่อยู่ในฐานข้อมูล
และสิ่งที่ผู้คนใช้นี้สำหรับ - ดังนั้น ฉันจะแสดงให้พวกคุณ
ฉันปิดการใช้งานลดลงตาราง เพราะผมไม่ได้ต้องการให้คุณ
พวกที่จะลดตารางของฉัน
ลองมาดูที่นี้
ดังนั้นนี้เป็นเพียงดึงข้อมูล สำหรับคนบาง
ดังนั้นทำอย่างไรเราทราบว่านี้เป็น รับผลกระทบจากการฉีด
เราจะตรวจสอบจริงอย่างรวดเร็ว ถ้าเราสามารถนำสิ่งที่ -
ให้ฉันคัดลอกโค้ดนี้
ฉันจะไปกว่านั้นในครั้งที่สอง
ฉันจะใส่รากและ 1 เท่ากับ 1
>> นี้ที่นี่นี้ เครื่องหมายเปอร์เซ็นต์ 23 -
สิ่งที่มันจริงๆคือถ้าผม ดูที่นี่ที่ -
HTML วิธีที่จะใช้เวลาในตัวเลขถ้าคุณ ดูที่เมื่อฉันใส่ในพื้นที่
ที่นี่ - ถ้าผมกับสิ่งที่พื้นที่ ที่นี่มันก็เปลี่ยนแปลงไปร้อยละ 2
ที่พวกคุณเห็นที่นี่ เมื่อฉันใส่ในพื้นที่หรือไม่
วิธีการทำงานคือการที่คุณสามารถเพียง ส่งค่า ASCII ผ่าน HTML
ดังนั้นแทนที่ตัวอย่างเช่น พื้นที่ที่มี 20 เปอร์เซ็นต์
ผมไม่ทราบว่าถ้าพวกคุณ ได้เห็นว่าก่อนที่จะ
>> จะแทนที่ hashtag ที่มีร้อยละ 23
เราจำเป็นต้องมี hashtag ปลายหรือ คำสั่งเพื่อที่เราจะสามารถบอกได้
ฐานข้อมูลที่จะลืมที่จะแสดงความคิดเห็นออก อัฒภาคสุดท้ายนี้ในตอนท้าย
ที่เราต้องการให้ได้คิดเกี่ยวกับที่
เราเพียงแค่ต้องการให้ทำงานทุกอย่าง ที่เรามีก่อนและ
แสดงความคิดเห็นที่ออกมา
ลองมาดูที่มัน
>> ดังนั้นถ้าผมจะนำสิ่งที่ผิด - สมมติว่าตัวอย่างเช่นผมใส่ 2 เท่ากับ
1 ก็ไม่ให้ฉันอะไร
เมื่อฉันใส่ใน 1 เท่ากับ 1 และมันไม่ กลับสิ่งนี้บอกผมว่า
นี้เป็นความเสี่ยงที่จะ การฉีด
ฉันรู้ว่าตอนนี้สิ่งที่ ฉันใส่หลังจากนี้ -
และตัวอย่างเช่น DROP ตาราง หรือสิ่งที่ต้องการ
แน่นอนจะทำงาน
ฉันรู้ว่ามันเป็นความเสี่ยงที่จะฉีด เพราะฉันรู้ว่า
ภายใต้ฝากระโปรงก็ปล่อยให้ ฉันทำ 1 เท่ากับ 1 สิ่งที่
OK?
>> และถ้าเรามองไปที่คนอื่น ๆ เหล่านี้ จำนวนสองและสามก็
จะทำนิด ๆ หน่อย ๆ ภายใต้การตรวจสอบของ
เครื่องดูดควันของมันคืออะไร
เพื่อให้ทุกคนช่วยให้ลดลง อะไรหรือยังพยายาม?
ที่พวกคุณได้รับการจัดเรียงของ SQL หรือยัง
เพราะผมรู้ว่าพวกคุณไม่ได้ เห็นมันยังดังนั้นมันเป็นชนิดของ
สับสนสำหรับคุณผู้ชาย
ลองมาดู
ดังนั้นสิ่งที่เป็นวิธีที่จะป้องกันไม่ให้ SQLI?
ตกลง
ดังนั้นนี่คือสิ่งที่สำคัญมากเพราะคุณ พวกมั่นเหมาะต้องการเพื่อป้องกันไม่ให้
นี้ในเว็บไซต์ของคุณ
>> ถ้าไม่ได้เพื่อนของคุณกำลังจะ ทำให้ความสนุกของคุณเมื่อพวกเขาวางทั้งหมด
ตารางของคุณ
ดังนั้นความคิดคือการที่คุณซ่อมแซม SQL ในทางหนึ่งในขณะที่คุณตรงกับ
สิ่งที่ปัจจัยการผลิตกับผู้ใช้ สตริงบาง
ดังนั้นวิธีการทำงานนี้ก็คือค​​ุณ เตรียมฐานข้อมูล
คุณเลือกชื่อสีและแคลอรี่ จากผลไม้ที่เรียกว่าฐานข้อมูล
แล้วที่แคลอรี่น้อยกว่า และเราใส่เครื่องหมายคำถามมี
บอกว่าเรากำลังจะเข้า บางสิ่งบางอย่างในที่สอง
>> และสีเท่ากับและเราจะนำคำถาม เครื่องหมายบอกว่าเรากำลังจะ
บางสิ่งบางอย่างที่นำเข้าในครั้งที่สองเช่นกัน
OK?
แล้วเราจะดำเนินการวาง 150 และสีแดง
และจะตรวจสอบเพื่อให้ แน่ใจว่าทั้งสองเหล่านี้ -
อาร์เรย์นี้จะตรวจสอบว่าสิ่งเหล่านี้ สองเป็นจำนวนเต็มและ
ว่าเรื่องนี้เป็นสตริง
แล้วเราไปและเราเรียก ทั้งหมดที่เราวางไว้ในสีแดง
นั่นหมายความว่าเราเรียกทั้งหมด
มันหมายความว่าเราจริงรัน SQL คำชี้แจงและนำกลับเป็นสีแดง
ที่นี่เราทำเช่นเดียวกัน แต่เรา ทำเช่นเดียวกันสำหรับสีเหลือง
และเราเรียกทั้งหมด
>> และด้วยวิธีนี้เราป้องกันไม่ให้ผู้ใช้ จากความสามารถในสิ่งที่ท่าน
ที่ไม่ได้เป็นสิ่งที่เราระบุสตริง หรือจำนวนเต็มเช่น
ผมพูดก่อนหน้านี้เกี่ยวกับ อาศัยอยู่กับผู้อื่น
เมื่อพวกคุณเริ่มต้นโครงการของคุณคุณ แน่นอนที่สุดจะใช้
บูตหรือสิ่งที่คล้ายกัน
ได้พวกคุณเคยใช้ Wordpress?
พวกคุณอาจจะได้ใช้ Wordpress มีโอกาสมากที่สุด
ดังนั้นปัญหาที่เกิดขึ้นกับการใช้ สิ่งที่คนอื่น ๆ -
ฉันแค่จะไป Google อย่างรวดเร็วจริง ช่องโหว่ Wordpress
>> ถ้าผมดึงนี้ขึ้นตอนนี้ -
แท้จริงฉันได้สองวินาที Google
เราจะเห็นว่า Wordpress -
นี้เป็นวันที่เป็นกันยายน '12
26 ได้รับการปรับปรุง
กำหนดค่าเริ่มต้นของ Wordpress 3.6 ก่อนที่จะไม่ได้ป้องกันการเหล่านี้
ภาพบางอย่างที่อาจจะ ทำให้มันง่ายสำหรับ
ข้ามไซต์โจมตีการเขียนสคริปต์
ดังนั้นเป็นเรื่องที่รวดเร็วเมื่อเรากำลังทำงาน ด้วย - ดังนั้นฉันได้ในช่วงฤดู​​ร้อนที่ทำงาน
การฝึกงาน
และเรากำลังทำงานอยู่กับประเภทของ เช่น บริษัท บัตรเครดิตใหญ่
>> และพวกเขาต้องพึ่งพาสิ่งที่เรียกว่า -
ผมไม่ทราบว่าถ้าพวกคุณเคยเล่น ด้วยผลิตภัณฑ์ที่เรียกว่า Joomla
Joomla เป็นผลิตภัณฑ์ที่ใช้ในการ ควบคุม - การจัดเรียงของที่คล้ายกับ
Wordpress, ใช้ในการสร้างเว็บไซต์
ดังนั้นพวกเขาจึงมีเว็บไซต์ของพวกเขา ทำงานใน Joomla
นี้เป็นจริงบัตรเครดิต บริษัท ในโคลัมเบีย
ผมจะพาคุณไปของพวกเขา เว็บไซต์จริงอย่างรวดเร็ว
>> ดังนั้นพวกเขาจึงใช้ Joomla
และพวกเขาก็ไม่ได้ปรับปรุง Joomla ไปนอกจากนี้ล่าสุด
และดังนั้นเมื่อเราได้รับการดูที่ รหัสของพวกเขาเราก็สามารถที่จะเป็นจริง
ไปภายในรหัสของพวกเขาและขโมยทั้งหมด ข้อมูลบัตรเครดิตที่พวกเขาได้
ทั้งหมดหมายเลขบัตรเครดิต ชื่อที่อยู่
และนี่ก็เป็นเพียง -
และรหัสของพวกเขาได้ดีอย่างสมบูรณ์แบบ
พวกเขามีรหัสที่ดี
มันเป็นความปลอดภัยทั้งหมด
พวกเขามีการตรวจสอบฐานข้อมูลทั้งหมด
พวกเขาทำให้แน่ใจว่าข้ามไซต์ สคริปต์ได้ดี
>> แต่พวกเขาจะใช้สิ่งที่ไม่ การปรับปรุงที่ไม่ปลอดภัย
และอื่น ๆ ที่นำพวกเขาไป - เพื่อให้พวกคุณ แน่นอนจะใช้อื่น ๆ
รหัสกรอบของคนอื่นของผู้คน ในการสร้างเว็บไซต์ของคุณ
ตรวจสอบให้แน่ใจว่าพวกเขากำลังมีความปลอดภัยเพราะ บางครั้งก็ไม่ได้เป็นคุณหนึ่งที่
ทำผิดพลาด
แต่คนอื่นทำผิดพลาดและ แล้วคุณล้มลงเนื่องจากการที่
>> รหัสผ่านและ PII
รหัสผ่านเพื่อ
ตกลง
ลองมาดูที่รหัสผ่าน จริงอย่างรวดเร็ว
ตกลง
กรุณาช่วยบอกฉันว่าทุกคน ใช้ที่มีความปลอดภัย -
ฉันหวังว่าทุกคนที่นี่ ใช้รหัสผ่านที่ปลอดภัย
ฉันแค่ให้ที่ ในขณะที่สมมติฐาน
ดังนั้นพวกคุณแน่นอนจะ รหัสผ่านที่จัดเก็บสำหรับเว็บไซต์ของคุณ
คุณกำลังจะทำสิ่งที่ต้องการ เข้าสู่ระบบหรือสิ่งที่ต้องการ
สิ่งที่สำคัญคือการไม่เก็บ รหัสผ่านในข้อความธรรมดา
นี้เป็นสิ่งสำคัญมาก
คุณไม่ต้องการที่จะเก็บ รหัสผ่านในข้อความธรรมดา
>> และแน่นอนคุณไม่ต้องการจริงๆ ที่จะเก็บไว้ในความยุ่งเหยิงวิธีหนึ่ง
ดังนั้นสิ่งที่กัญชาวิธีหนึ่งก็คือเมื่อคุณ สร้างคำที่เมื่อคุณใส่นี้
คำในการทำงานกัญชาก็จะ กลับสร้างการเรียงลำดับของความลับบางอย่าง
ข้อความหรือชุดความลับของคีย์
ผมจะแสดงตัวอย่าง
ฉันจะสับ password1 คำที่พวกเขา
แฮดังนั้น md5 จะกลับฉัน การจัดเรียงของข้อมูลบางลาง
>> ปัญหาคือว่าคนที่ออกมี ที่อยากจะไปลงในเว็บไซต์ได้
คิดแล้วออกเรียงลำดับ ของทุก hashes md5
สิ่งที่พวกเขาเป็นพวกเขานั่งลงบนพวกเขา คอมพิวเตอร์และพวกเขาทุก hashed
คำที่เป็นไปได้ออกซิงเกิ้ลที่นั่นจนกระทั่ง พวกเขาได้รับการจัดเรียงของสิ่งนี้เป็น
ถ้าฉันจะมีลักษณะนี้ขึ้น -
ฉันเพิ่งคว้ากัญชานี้
ถ้าฉันได้รับกัญชาจากนี้ -
ถ้าฉันไปลงในเว็บไซต์และฉันพบ กัญชานี้เพราะผมจะได้รับการ
ฐานข้อมูลและฉันมองมันได้คนที่ แล้วคิดว่ามันออกมาให้ฉัน
>> ใช่
ดังนั้นคนนั่งลงและสิ่ง md5 กัญชาที่คุณใส่ในพวกเขากำลังจะไป
กลับไปที่สิ่งที่คุณ ที่เป็นคำ
ถ้าผมสับคำอื่นเช่น -
ผมไม่ทราบว่า -
trees2
ฉันไม่ต้องการที่จะผิดหวัง โดยการค้นหา Google ของฉัน
มีมันเป็น trees2
ดังนั้นจำนวนมากของเว็บไซต์ ยังคงใช้ md5 กัญชา
พวกเขากล่าวว่าโอ้มันปลอดภัย
เราไม่ได้จัดเก็บในข้อความธรรมดา
เรามีกัญชา md5 นี้
และทั้งหมดที่ฉันต้องทำคือเพียงแค่ google จำนวน
>> ฉันไม่ได้มีการคำนวณตัวเอง
ผมก็สามารถ Google มันและใครบางคน แล้วมันสำหรับฉัน
ที่นี่พวงของพวกเขาเป็น
ที่นี่พวงของรหัสผ่านที่เป็น
ดังนั้นแน่นอนไม่ได้ใช้ md5 กัญชา เพราะสิ่งที่คุณต้อง
ทำคือ Google มัน
ดังนั้นสิ่งที่คุณต้องการที่จะใช้แทน
ตกลง
สิ่งที่เรียกว่าเกลือ
ดังนั้นสิ่งที่เป็นเกลือ -
ที่พวกคุณจำตอนที่เราอยู่ พูดคุยเกี่ยวกับการสุ่มใน -
ผมไม่แน่ใจว่าสิ่งที่มันเป็น pset -
มันก็มี pset หรือสี่?
>> เราได้พูดคุยเกี่ยวกับการหา เข็มในกองหญ้า
และใน pset ก็กล่าวว่าที่คุณสามารถทำได้ จริงคิดออกว่าสุ่ม
สร้างเพราะใครบางคนวิ่งไปแล้ว สุ่มล้านครั้งและเพียงแค่
การเรียงลำดับของสิ่งที่เกิดขึ้นพวกเขาสร้าง
สิ่งที่คุณต้องการจะทำคือ ใส่ในการป้อนข้อมูล
ดังนั้นนั่นคือสิ่งที่จัดเรียงของเกลือเป็น
พวกเขาอยู่แล้วคิดออกว่าเกลือ ผลตอบแทนสำหรับการทำงานแต่ละ
>> ดังนั้นสิ่งที่จะเป็นเกลือ ที่คุณใส่ในเกลือ
ที่คุณใส่ในบางคำ
และก็จะสับคำที่ขึ้นอยู่ กับสิ่งที่คุณใส่ในที่นี่
ดังนั้นถ้าผมสับรหัสผ่านอย่างใดอย่างหนึ่งกับเรื่องนี้ ประโยคก็จะสับ
ที่แตกต่างกันถ้าผมสับ password1 ด้วยประโยคที่แตกต่างกัน
มันเรียงลำดับของให้มันอยู่ที่ไหนสักแห่งที่จะ เริ่มต้น hashing ที่จะเริ่มต้น
ดังนั้นจึงเป็นเรื่องยากมากที่จะคำนวณ แต่คุณ ยังคงสามารถคำนวณได้โดยเฉพาะอย่างยิ่ง
ถ้าคุณใช้เก​​ลือไม่ดี
>> คนมีอยู่แล้วยังคิดออก เกลือที่พบบ่อยและคิดออก
สิ่งที่ว่ามันเป็น
เกลือสุ่มจะดีกว่ามาก แต่วิธีที่ดีที่สุดคือการใช้
สิ่งที่เรียกว่าห้องใต้ดิน
และสิ่งที่ฝังศพใต้ถุนโบสถ์ช่วยให้คุณสามารถ ไม่ - เพื่อให้ฟังก์ชั่นเหล่านี้
สร้างขึ้นแล้วสำหรับคุณ
หลายคนลืมว่าหรือ พวกเขาลืมที่จะใช้มัน
แต่ถ้าผมมองขึ้นไปฝังศพใต้ถุนโบสถ์ PHP ฝังศพใต้ถุนโบสถ์ แล้วส่งกลับสตริงกัญชาสำหรับฉัน
และเป็นจริงเกลือมาหลายครั้ง และ hashes ได้หลายครั้ง
>> ดังนั้นเราจึงไม่จำเป็นต้องทำเช่นนี้
ดังนั้นสิ่งที่คุณต้องทำคือ ส่งมันลงไปในห้องใต้ดิน
และมันจะสร้างความยุ่งเหยิงที่ดีโดยไม่ต้อง คุณไม่ต้องกังวลเกี่ยวกับเกลือ
หรืออะไร
เพราะถ้าคุณจะเกลือมันคุณมี จะจำสิ่งที่คุณใช้เก​​ลือ
เพราะถ้าไม่ได้คุณไม่สามารถได้รับของคุณ รหัสผ่านโดยไม่ต้องกลับ
เกลือที่คุณใช้
ตกลง
>> และยังสามารถระบุตัวบุคคล ข้อมูล
การรักษาความปลอดภัยทางสังคมเพื่อให้บัตรเครดิต - ที่เห็นได้ชัดสวย
แต่บางครั้งคนลืมวิธีการที่จะ งานคือวิธีข้อมูลมากคุณ
จริงต้องพบบางคน?
คนที่ได้ศึกษาเกี่ยวกับ นี้ทางกลับ
และมันก็เป็นเช่นถ้าคุณมี ชื่อเต็มของคุณจะไม่สามารถหา
ใครบางคนที่ได้อย่างง่ายดาย
แต่สิ่งที่ถ้าคุณมีชื่อเต็ม และวันเดือนปีเกิดของพวกเขา?
คือพอที่จะระบุ ใครบางคนโดยเฉพาะ?
>> สิ่งที่ถ้าคุณมีชื่อของพวกเขาและ ที่อยู่ถนนที่พวกเขาอาศัยอยู่หรือไม่
คือพอที่จะหาใครสักคน
และที่ว่าเมื่อพวกเขาตั้งคำถามกับสิ่งที่เป็น ข้อมูลส่วนบุคคลและ
สิ่งที่คุณควรกังวลเกี่ยวกับ ไม่ให้ไปหรือไม่
หากคุณให้ไปที่สามารถระบุตัวบุคคล ข้อมูลที่มีคนให้คุณ
คุณอาจได้รับฟ้อง
และแน่นอนเราไม่ต้องการที่
>> ดังนั้นเมื่อคุณใส่ในเว็บไซต์ของคุณ ออกและคุณได้เย็นจริงๆ
ออกแบบหวังว่าคุณทำ โครงการสุดท้ายที่น่ากลัว
ใด ๆ ที่คุณเรียงลำดับของความต้องการที่จะ ใส่มันออกมี
คุณต้องการที่จะทำให้แน่ใจว่าสิ่งที่ คุณกำลังการจากผู้ใช้ว่าเป็น
ข้อมูลส่วนบุคคลของคุณ ต้องการที่จะให้แน่ใจว่าคุณเป็นจริง
ระมัดระวังกับมัน
>> ฉีดเชลล์
ตกลง
ฉีดเปลือกช่วยให้ผู้บุกรุกที่ ได้รับการเข้าถึงบรรทัดคำสั่งที่แท้จริงของคุณ
ในเซิร์ฟเวอร์ของคุณ
และเพื่อให้เขาสามารถที่จะเรียกใช้รหัส ที่คุณไม่สามารถควบคุม
ลองมาตัวอย่างนี้ สตริงที่สวยงามที่นี่
ถ้าเราไปลงในเว็บไซต์อีกครั้งฉัน จะไปลงในการฉีดรหัส
ดังนั้นสิ่งนี้จะเป็น -
ก็ยังเป็นสิ่งที่เราเป็น ก่อนที่จะมองไปที่
เรากำลังให้ผู้ใช้ใส่ในสิ่งที่ ที่เขาต้องการและจะพิมพ์ออกมา
สิ่งที่คุณต้องการ
>> ดังนั้นฉันจะวางสาย
สิ่งนี้จะเป็น -
มันจะเริ่มต้นด้วยการเชื่อมโยง
ดังนั้นมันจะช่วยให้ผมทำงานอะไรก็ตาม คำสั่งในการทำงานของบุคคล
ก่อนและคำสั่งของฉัน
และฉันใช้คำสั่งระบบ
และสตริงล่าสุดเหล่านี้ - จำ สิ่งที่ฉันพูดคุยกับพวกคุณเกี่ยวกับ
ในขณะที่คุณมีการเข้ารหัส ในวิธี URL
หากฉันใช้ตอนนี้ -
ฉันจะแสดงให้คุณเห็นที่นี่ -
คุณจะเห็นว่าฉันสิ้นสุด ขึ้นใช้คำสั่ง
>> นี้เป็นจริงที่เกิดขึ้นจริงของเซิร์ฟเวอร์ ว่าเว็บไซต์ของฉันทำงานอยู่ใน
ดังนั้นเราจึงไม่ต้องการที่ เพราะผมสามารถทำงาน -
เซิร์ฟเวอร์นี้ไม่ได้เป็นเหมือง
ดังนั้นผมจึงไม่ต้องการที่จะเลอะของเขา น้องสาวของเซิร์ฟเวอร์มาร์คัส
แต่คุณสามารถเรียกใช้คำสั่งเพิ่มเติม ที่เป็นอันตราย
และอาจคุณสามารถลบ ไฟล์, ลบไดเรกทอรี
ฉันจะลบไดเรกทอรีถ้า ผมอยากจะ แต่ฉันไม่ต้องการ
จะทำอย่างไรที่จะมาร์คัส
เขาเป็นคนดี
เขาให้ฉันยืมเซิร์ฟเวอร์ของเขา
ดังนั้นฉันจะปล่อยให้เขา ปิดในวันหนึ่งที่ดี
>> ดังนั้นสิ่งที่เราไม่ต้องการที่จะใช้ - ที่เราทำไม่ได้ ต้องการที่จะใช้ประเมินผลหรือระบบ
Eval หรือระบบช่วยให้เราสามารถ เหล่านี้ทำให้สายระบบ
วิธี Eval ประเมิน
ระบบหมายถึงสิ่งที่ฉันวิ่ง
มันทำงานบางอย่างในระบบ
แต่เราสามารถประกาศสิ่งเหล่านี้ใน PHP เพื่อที่เราจะไม่ใช้พวกเขา
และอัพโหลดไฟล์
ฉันกำลังจะทำอะไรที่น่ากลัว สิ่งที่มีการอัปโหลดไฟล์
แต่เหมือนที่ผมบอกพวกคุณไฟล์ของฉัน สิ่งที่อัปโหลดไม่ได้ทำงาน
ถ้าฉันจะอัปโหลดไฟล์ตอนนี้ -
ถ้าผมจะอัปโหลดไฟล์ และเป็นภาพ -
คุณมีสิ่งที่อัปโหลด ที่ภาพ
ที่ปรับได้
ไม่มีอะไรเกิดขึ้น
>> แต่ถ้าคุณมีการอัปโหลดไฟล์สำหรับ ตัวอย่างเช่นผู้ใช้และภาพที่ส่งจริง
ไฟล์ PHP หรือไฟล์ exe หรือสิ่งที่ เช่นนั้นแล้วคุณอาจจะทำได้
มีปัญหา
นี้เป็นคนที่ทำงานก่อน
แต่โชคร้ายสำหรับผมมัน ไม่ได้ทำงานอีกต่อไป
ถ้าผมยกตัวอย่างเช่นการอัปโหลดไฟล์นี้ผม ไม่ได้รับสิทธิ์ในการอัปโหลด
ไฟล์เนื่องจากเซิร์ฟเวอร์ ไม่ได้เป็นเหมือง
ดังนั้นคนที่เป็นสมาร์ทจริงๆ
>> ดังนั้นเราจึงไม่ต้องการที่จะ -
ฉันจะแสดงให้พวกคุณ -
ตกลงเหล่านี้เป็นเครื่องมือที่เย็นจริงๆ
ดังนั้นเหล่านี้ -
ไป - ถ้าพวกคุณมี Firefox - หวังว่าคุณจะทำอย่างไร
มีสองส่วนเพิ่มที่เรียกว่า SQL ฉีดเป็น ฉันและข้ามเว็บไซต์สคริปต์ฉัน
พวกเขาเปิดขึ้นด้านข้างน้อย แถบด้านข้าง
และถ้าผมจะไป CS60 เช่น -
ดังนั้นสิ่งที่มันไม่เป็นมันก็ดู ในรูปแบบทั้งหมดที่ -
หวังว่าผมจะไม่ได้รับ ในปัญหานี้
>> แต่ตกลง
ที่นี่ระบบพินเป็น
ดังนั้นเมื่อผมเริ่มมองหาหลุมใน ระบบสิ่งแรกที่ผมทำคือ
เปิดขึ้นเล็กน้อยที่สวยงามนี้ เครื่องมือด้านข้าง
และฉันจะทดสอบรูปแบบ กับการโจมตีอัตโนมัติ
และเพื่อให้สิ่งนี้ไม่ได้เป็นจะค่อยๆ เปิดพวงของเบราว์เซอร์
ที่นี่พวงของเบราว์เซอร์เป็น
และจะพยายามทุกชุดเดียว ของสคริปต์ข้ามไซต์
ที่มีอาจคือถ้า ที่คุณเห็นอยู่ด้านข้าง
>> และมันจะให้ฉันผล การเรียงลำดับของสิ่งที่คำตอบคือ
ผ่านทั้งหมด
เห็นได้ชัดว่าพวกเขาทั้งหมดผ่าน
ผมหมายถึงพวกเขากำลังสมาร์ทจริงๆ คนขึ้นไปมี
แต่ถ้าผมรัน -
ฉันเคยครั้งก่อนเมื่อฉันใช้นี้ ในโครงการสุดท้ายของนักเรียน
ผมก็ทำงาน SQL ฉีดฉันด้วย การโจมตีที่แตกต่างกันทั้งหมด
และก็พยายามที่จะฉีด SQL เซิร์ฟเวอร์ขานี้
ดังนั้นหากเราเลื่อนลงสำหรับ ตัวอย่างเช่นมันบอกว่า -
นี้เป็นสิ่งที่ดีถ้ามันกลับ
>> ดังนั้นจึงมีการทดสอบค่าบางอย่างบาง
และเซิร์ฟเวอร์ส่งคืน รหัสที่เป็นลบ
ลบชั่วคราว
นี้เป็นสิ่งที่ดี
มันพยายามทดสอบเหล่านี้ทั้งหมด
ดังนั้นคุณก็สามารถเรียกใช้ -
ฉันหวังว่าฉันสามารถหาเว็บไซต์จริง รวดเร็วที่จะให้ฉัน -
อาจจะเก็บ CS50
>> ว้าวนี้เป็นไป ใช้วิธีการนานเกินไป
ฉันจะให้การทดสอบครั้งแรก ไม่จบที่เหมาะสม
จึงบ่น
ดังนั้นเหล่านี้เป็นสามสิ่ง
เครื่องมือเหล่านี้จะฟรี
คุณสามารถดาวน์โหลดได้และใช้พวกเขาใน เว็บไซต์ของคุณและมันจะบอกคุณว่า
คุณมีสคริปต์ข้ามไซต์ ถ้าคุณมี SQL ถ้าคุณมี
บางสิ่งบางอย่างเช่น
ผมเรียงลำดับของความวุ่นวาย
>> สิ่งที่สำคัญ -
OK เพื่อให้ผู้ใช้ไม่เคยไว้วางใจ
สิ่งที่ปัจจัยการผลิตของผู้ใช้ให้คุณทำ แน่ใจว่าคุณ sanitize มันคุณทำความสะอาดมัน
คุณตรวจสอบสิ่งที่ถูกต้อง ที่จะให้สิ่งที่คุณ
ต้องการให้เขาเพื่อให้คุณ
มักจะมีการปรับปรุงในสิ่งที่กรอบ ว่าคุณกำลังใช้จริง
ถ้าคุณใช้สิ่งที่ต้องการบูต -
ฉันรู้ว่าพวกคุณจะใช้ บูตเพราะเขาจะไป
ในช่วงนี้เร็ว ๆ นี้ในชั้นเรียน -
และ Wordpress หรือสิ่งที่ต้องการที่ ปกตินี้อาจจะ hacked
>> แล้วคุณไม่ได้รู้ว่า
คุณเพียงแค่ใช้เว็บไซต์ของคุณ
และมันเป็นเรื่องที่มีความปลอดภัยโดยสิ้นเชิง
และคุณจะไปลง
ดังนั้นฉันประมงจริงๆต้น
แต่ฉันต้องการที่จะขอบคุณ Pentest Labs
ฉันจะแสดงให้พวกคุณบางสิ่งบางอย่าง เรียกว่า Pentest Labs
ถ้าพวกคุณมีความสนใจจริงๆใน สิ่งที่การรักษาความปลอดภัยจริงๆคือมี
เว็บไซต์ที่เรียกว่า Pentest Labs ถ้า พวกคุณไปได้ในขณะนี้
โอ้ดีที่ไม่มัน
ฉันแค่จะทำงานเช่นนี้
Google บอกฉันคำตอบ
>> ตกลง
และมันสอนให้คุณใช้ - ดังนั้นจึง กล่าวว่าการเรียนรู้การเจาะเว็บ
การทดสอบวิธีการที่เหมาะสม
มันสอนให้คุณ -
หวังว่าคุณจะเป็นคนที่มีจริยธรรม
แต่มันสอนวิธีที่คุณสามารถมองไปที่ วิธีที่คุณสามารถได้รับภายในเว็บไซต์
และถ้าคุณเรียนรู้วิธีที่คุณสามารถได้รับภายใน เว็บไซต์ที่คุณสามารถเรียนรู้วิธีการ
ป้องกันตัวเองจากการได้รับ เว็บไซต์ภายใน
ผมขอขยายเพราะบางทีพวกคุณ ไม่ได้มองที่ด้านขวานี้
>> จากการฉีดเปลือกดังนั้น การเรียงลำดับของวิธีการที่ฉันจะได้รับจาก SQL
ฉีดเปลือก
และคุณดาวน์โหลดเครื่องเสมือนนี้
และเครื่องเสมือนที่มีอยู่แล้วมา กับเว็บไซต์ที่คุณ
ไปลองใน
ที่คุณดาวน์โหลดไฟล์ PDF นี้
และมันจะแสดงให้คุณทีละบรรทัดสิ่งที่ คุณต้องทำสิ่งที่คุณตรวจสอบ
นี่คือสิ่งที่โจมตีจริง ไม่ให้ได้รับภายในเว็บไซต์
>> และบางส่วนของสิ่งนี้มีความซับซ้อน
ฉันหวังว่าฉันจะไปเกิน สิ่งที่มีพวกคุณ
แต่ผมกังวลว่าพวกคุณ ไม่ได้จริงๆ -
นี้คือสิ่งที่ผมเดินไปด้วย พวกคุณทดสอบเว็บ
สำหรับการทดสอบการเจาะ
ไม่ทราบจริงๆสิ่งที่ SQL เป็นและสิ่งที่ -
สัมมนาคาร์ลแจ็คสัน เป็นที่น่ากลัวเช่นกัน
พวกคุณไม่ทราบว่าการจัดเรียง ของสิ่งนี้เป็น
แต่ถ้าคุณไปที่เว็บไซต์นี้และคุณ ดาวน์โหลดบทเรียนเหล่านี้และสิ่งเหล่านี้
ไฟล์ PDF, คุณสามารถดูที่การเรียงลำดับของ สิ่งที่พื้นที่ของการรักษาความปลอดภัยจริงๆ
ในการทดสอบการเจาะให้ดูวิธีที่คุณสามารถ ได้รับเว็บไซต์ภายในและป้องกัน
ตัวเองจากมัน
>> ดังนั้นถ้าผมทำให้ภาพรวมซุปเปอร์รวดเร็ว มันจะป้องกันสคริปต์ข้ามไซต์
คุณต้องการที่จะใช้ htmlspecialchars ทุก ครั้งที่ผู้ใช้ปัจจัยการผลิตบางสิ่งบางอย่าง
ป้องกันการฉีด
ถ้าคุณทำอย่างนั้นอยู่แล้ว ดีกว่าฮาร์วาร์เป็น
เมื่อพวกเขาได้ละเมิด
และให้แน่ใจว่ารหัสผ่านของคุณ ไม่ได้อยู่ในข้อความธรรมดา
ตรวจสอบให้แน่ใจว่าคุณทำไม่ได้ทางเดียวเท่านั้นกัญชา พวกเขา แต่ที่คุณใช้ฝังศพใต้ถุนโบสถ์, PHP
ฟังก์ชั่นที่ผมแสดงให้เห็นว่าพวกคุณ
วิธีการที่คุณควรจะดี
>> นอกจากนี้ถ้าเพื่อนของคุณช่วยให้คุณสามารถเรียกใช้ SQL ฉีดฉันบนเว็บไซต์ของตน
เรียกใช้สคริปต์ข้ามไซต์ บนเว็บไซต์ของตน
และคุณจะเห็นจำนวนมากของเว็บไซต์เหล่านี้ มีตันของช่องโหว่
มันไม่น่าเชื่อว่าคนมากลืม เพื่อ sanitize ฐานข้อมูลของตนหรือเพื่อให้
แน่ใจว่าสิ่งที่ป้อนของบุคคลนั้น ไม่ได้เป็นรหัสสคริปต์
ตกลง
จัดเรียงของฉันสิ้นสุดลงในช่วงต้นจริงๆ
แต่ถ้าใครมีข้อสงสัยเกี่ยวกับ อะไรที่คุณสามารถยิงคำถาม
ใช่
ไปไป
>> ผู้ชม: ผมแค่อยากจะถามว่า คุณสามารถอธิบายวิธีการแฟ้ม
อัปโหลดผลงานว่า
>> LUCIANO Arango: ใช่
ดังนั้นให้ฉันแสดงไฟล์ อัปโหลดจริงอย่างรวดเร็ว
ดังนั้นการอัปโหลดไฟล์ -
ปัญหาปัญญาอัปโหลดไฟล์ ตอนนี้คือ -
ฉันจะเปิดรหัสเพื่อพวกคุณ เห็นรหัสเบื้องหลัง
และก็จะมีการอัปโหลด
นี่คือรหัสในการอัปโหลดไฟล์
>> เรากำลังพยายามที่จะเข้าไปนี้ ไดเรกทอรีกว่าที่นี่
และเรากำลังพยายามที่จะเมื่อเราใส่ ไฟล์ไฟล์ isset - ดังนั้นเมื่อมีการ
ยื่นในไฟล์ภาพที่แล้ว เราพยายามที่จะย้ายไปที่นี่
เราคว้าแฟ้มที่นี่
วิธีการโพสต์ประเภทภาพไฟล์
และเราจะส่งไฟล์นี้
และจากนั้นเมื่อเราได้รับมันดังนั้นเมื่อไฟล์ มีภาพที่เรากำลังพยายามที่จะส่งไป
ไปยังไดเรกทอรีนี้
>> ปัญหาคือว่าเว็บไซต์ที่ไม่ได้เป็น ขอให้ฉันไปที่ไดเรกทอรีนี้
เพราะไม่ต้องการให้ฉันกลับไป
มันไม่ได้ต้องการให้ฉันไป -
ฉันต้องไป - ดังนั้นนี่คือการอัปโหลด
นี่คือภาพ
ฉันต้องไปตลอดทางกลับไปที่ จุดเริ่มต้นและวางไว้ในที่นั่นและจากนั้น
ไปและใส่ลงในไดเรกทอรี
ดังนั้นถ้าผมทำงานหน้าต่าง terminal, และฉันต้องการที่จะย้ายไฟล์ -
[ไม่ได้ยิน]
สามารถมองเห็นได้
ถ้าผมอยากจะย้ายไฟล์ที่ผมมี ที่จะใส่ชื่อไฟล์แล้ว
เส้นทางที่สมบูรณ์ฉันต้องการจะส่งไปยัง
>> แล้วเซิร์ฟเวอร์ไม่ ขอให้ฉันกลับไป
และดังนั้นจึงไม่ได้ให้ ฉันได้รับไปยังไฟล์ที่
แต่ตามปกติ -
จึงมีสำหรับ การอัปโหลดไฟล์
ดังนั้นโดยปกติแล้วสิ่งที่จะเกิดขึ้นคือ ผู้ที่ไม่ได้ตรวจสอบว่าไฟล์ของฉัน
จบลงด้วย. jpeg, ดังนั้นฉัน ต้องการที่จะตรวจสอบ
ผมขอเปิดตัวอย่างเกินไปจริงอย่างรวดเร็ว
>> ตกลง
บุคคลนี้ขวา -
ดังนั้นตัวอย่างที่สองคือการตรวจสอบ ถ้า preg_match -
ที่นี่มันเป็นมากกว่าที่นี่ -
เพื่อให้แน่ใจว่าจบลงด้วยการ PHP ซึ่งเป็นสิ่งที่ดี
นี้เป็นสิ่งที่ดี
แต่มีขนาดใหญ่จริง ปัญหานี้
นี้เป็นสิ่งที่ดี
แต่ถ้าผมจะใส่ไฟล์ที่เรียกว่า myfavoritepicture.php.jpeg, ที่ฉันสามารถ
ยังอาจได้รับการกำจัด jpeg และเรียกใช้ it.k ของ PHP ที่เป็นอันตราย
คุณไม่ต้องการคนที่จะสามารถ เรียกใช้รหัสบนเว็บไซต์ของคุณ
>> แต่แล้ว. jpeg ปล่อยให้มันผ่านไป
ความคิดคือสิ่งที่คุณต้องการจริงๆที่จะทำ ไม่ได้ใช้ไฟล์, A. แต่ตกลงสิ่งที่
คุณต้องการที่จะทำคือการให้แน่ใจว่า คุณอ่านทั่วโลกทั้ง
และไม่มีอะไร. php ในนั้น
ไม่มี php การใน. เป็น ชื่อไฟล์ทั้งหมด
>> ผู้ชม: แต่คุณสามารถทำได้ ใส่. jpeg ที่สิ้นสุด
เซิร์ฟเวอร์ยังคงเรียกใช้รหัส
>> LUCIANO Arango: ไม่มีก็จะไม่ได้ ทำงานที่จุดเริ่มต้น
คุณต้องกลับไปและพยายาม เพื่อดูว่าคุณสามารถ -
>> ผู้ชม: ดังนั้นเราจะต้อง -
OK เพียงแค่ชุดที่เกี่ยวข้องกับการอื่น -
>> LUCIANO Arango: ใช่
>> ผู้ชม: ตกลง
>> LUCIANO Arango: ใช่
ตกลง
คำถามใด ๆ อื่น ๆ
ตกลง
ฉันจะออกจากนี้ขึ้นและเรียงลำดับ ของพยายามที่จะดูว่าพวกคุณสามารถ -
คนอื่น ๆ ที่มีนิด ๆ หน่อย ๆ ซับซ้อนเพราะพวกเขาต้องการมาก
ความรู้เพิ่มเติมของ SQL มากกว่าเพียงแค่ ความรู้เกี่ยวกับจุดเริ่มต้นของเว็บ SQL และ
JavaScript เป็นสิ่งที่
แต่ฉันจะพยายามที่จะเก็บเรื่องนี้ขึ้น และหวังว่าพวกคุณจะได้เรียนรู้
เกี่ยวกับเรื่องนี้และพยายามที่จะใช้เวลามองที่ สิ่งที่คุณสามารถทำและวิธีการหลายตัวอย่าง
คุณจะได้รับผ่าน
>> ใครมีที่อื่น ๆ คำถามเกี่ยวกับมันได้หรือไม่
เอาเลย
ใช่ยิงยิง
ใช่ไปข้างหน้า
เอาเลย
>> ผู้ชม: ตกลง
ดังนั้นผมได้ยินเกี่ยวกับวิธีการคำคมเวทมนตร์ จะไม่ปลอดภัยพอ
>> LUCIANO Arango: อะไร -
คำคม Magic?
>> ผู้ชม: ใช่
ดังนั้นจึงเพิ่ม - ดังนั้นเมื่อใดก็ตามที่คุณป้อน บางสิ่งบางอย่างมันก็จะเพิ่มราคา
>> LUCIANO Arango: ใช่
ใช่
ตกลง
>> ผู้ชม: แล้วฉันว่าที่ทำงาน แต่แล้วผมค้นหามันได้
และก็กล่าวว่ามันไม่ดี
แต่ฉันไม่แน่ใจว่าทำไม
>> LUCIANO Arango: ใช่
>> ผู้ชม: อย่าใช้คำพูดเวทมนตร์ เพราะไม่ปลอดภัย
>> LUCIANO Arango: OK
คำคมเวทมนตร์ดังนั้นเมื่อคุณใส่ SQL และมันอยู่แล้วเพิ่มราคาสำหรับคุณ
>> ผู้ชม: มันก็จะเพิ่มราคา รอบสิ่งที่คุณใส่เข้ามา
>> LUCIANO Arango: ใช่
ดังนั้นปัญหากับที่เป็นที่ -
ฉันจะใช้เวลาดูที่ -
>> ผู้ชม: มันจะได้รับวิธี คำสั่ง SQL หรือไม่
หรือผมคิดว่ามันอาจจะเป็น เช่นคำพูดที่เลือก
>> LUCIANO Arango: ใช่คุณต้อง คำพูดที่ดีสำหรับ SQL
>> ผู้ชม: ไม่มี แต่เซิร์ฟเวอร์ ไม่ได้สำหรับคุณ
>> LUCIANO Arango: คำพูดเล็ก ๆ เหล่านี้ ที่นี่คำพูดเล็ก ๆ น้อย ๆ เหล่านี้หรือไม่
>> ผู้ชม: ใช่
>> LUCIANO Arango: ใช่
ปัญหาคือว่าคุณสามารถ แสดงความคิดเห็นออกล่าสุด -
ตกลงดังนั้นสิ่งที่ฉันสามารถทำได้คือฉันสามารถแสดงความคิดเห็น ออก - ดังนั้นลองมาดูที่ - ให้ฉัน
เปิดไฟล์แก้ไขข้อความ
ผมขอเพียงแค่แก้ไขนี้ ที่นี่โดยตรง
ตกลง
พวกคุณจะเห็นว่าอย่างชัดเจน
สิ่งที่ฉันสามารถทำได้คือฉันสามารถแสดงความคิดเห็น ออกคนสุดท้าย
นี้จะแสดงความคิดเห็นออกมาอย่างใดอย่างหนึ่งที่ผ่านมา
แล้วฉันจะใส่ที่นี่ใส่ สิ่งที่เป็นอันตรายทั้งหมดที่นี่
>> เพื่อให้ผู้ใช้จริง ป้อนใช่ไหม
ผู้ใช้ไม่ได้ป้อน สิ่งที่ใช่มั้ย
นี่คือสิ่งที่ผมจะใส่เป็น ผู้ที่พยายามที่จะได้รับภายใน
ฉันจะใส่ใน -
ที่เครื่องหมายคำพูดหนึ่ง
มันเป็นเพียงไก่เขี่ยโดยไม่ได้ตั้งใจ
และแล้วสิ่งที่รหัส คือจะทำ -
ขอโทษที่ฉันจะใช้เวลานี้ออก
รหัสอะไรที่เป็นไปที่จะทำคือ มันจะเพิ่มเป็นครั้งแรก
เครื่องหมายคำพูดที่นี่
และมันจะเพิ่มที่ผ่านมา เครื่องหมายคำพูดเช่นกัน
>> และก็ยังจะเพิ่ม ที่ผ่านมาเครื่องหมายคำพูดสุดท้าย
แต่ฉันแสดงความคิดเห็นคำพูดเหล่านี้ เครื่องหมายออกเพื่อให้พวกเขาไม่ได้ทำงาน
และฉันจบคำพูดนี้ ทำเครื่องหมายที่นี่
คุณเข้าใจไหม
คุณหายไป
ฉันสามารถแสดงความคิดเห็นคำพูดสุดท้าย เครื่องหมายและดูแล
เครื่องหมายใบเสนอราคาครั้งแรก
>> ผู้ชม: และจบเพียงแค่ คนแรก
>> LUCIANO Arango: ใช่
และเพิ่งเสร็จสิ้นเป็นคนแรก
ใช่ที่เหมาะสม
นั่นคือสิ่งที่ฉันจะทำ
ใช่
คำถามอื่น ๆ ที่ต้องการที่
นั่นเป็นคำถามที่ดี
ไม่ใช่อาจจะ
หวังว่าพวกคุณจะเรียงลำดับของการให้ ความรู้สึกมากขึ้นเมื่อคุณศึกษา SQL และ
สิ่งที่ต้องการที่
แต่ให้แน่ใจว่าคุณ -
ให้เครื่องมือเหล่านี้ในนาฬิกา
ขออภัยเครื่องมือเหล่านี้ที่นี่
เครื่องมือเหล่านี้จะดี
ถ้าใครมีข้อสงสัยใด ๆ คุณยังสามารถส่งอีเมลฉัน
นี่คืออีเมล์ปกติของฉัน
และนี่คืออีเมลที่ทำงานของฉันที่ คือเมื่อผมทำงานที่ SEAS
>> ตกลงขอบคุณ
ขอบคุณครับ
คุณจะดีไป
คุณไม่จำเป็นต้องอยู่ที่นี่
อย่าตบมือ
ที่แปลก
ตกลงขอบคุณครับ