แนะนำ: ตีความโค้ดโจมตี anti-SQL ทั่วไปในโปรแกรม ASP คำขอ http ทั่วไปของการแทรก SQL ไม่มีอะไรมากไปกว่าการรับและโพสต์ ตราบใดที่เรากรองอักขระที่ผิดกฎหมายทั้งหมดในข้อมูลพารามิเตอร์ของการโพสต์หรือรับคำขอในไฟล์ เราก็สามารถป้องกันการโจมตีการแทรก SQL ได้ คำร้องขอรับที่ส่งผ่านโดย IIS ไปยัง asp.dll จะอยู่ในรูปแบบของสตริง เมื่อข้อมูลถูกส่งผ่านไปยัง Request.QueryString ตัวแยกวิเคราะห์ asp จะวิเคราะห์ Request.QueryString
ขั้นแรก เราจะแนะนำคุณลักษณะเริ่มต้นบางอย่างของตัวแก้ไข:ล็อกอินเริ่มต้น admin_login.asp
ฐานข้อมูลเริ่มต้น db/ewebeditor.mdb
รหัสผ่านผู้ดูแลระบบบัญชีเริ่มต้น ผู้ดูแลระบบ หรือ admin888
ค้นหา inurl:ewebeditor บน baidu/google
มีเว็บไซต์อย่างน้อยสองสามพันเว็บไซต์ที่มีคุณสมบัติเริ่มต้น ดังนั้นลองใช้แบ็กเอนด์เริ่มต้น
http://www.xxx.com.cn/admin/ewebeditor/admin_login.asp
ลองเข้าสู่ระบบด้วยบัญชีและรหัสผ่านเริ่มต้น
ขั้นตอนในการรับ WebShell โดยใช้ eWebEditor มีดังต่อไปนี้:
1. ตรวจสอบให้แน่ใจว่าเว็บไซต์ใช้ eWebEditor โดยทั่วไปแล้ว เราเพียงแต่ต้องใส่ใจว่าหน้าที่เผยแพร่โพสต์ (บทความ) มีไอคอนที่มีเครื่องหมายคล้ายกันหรือไม่ และเราสามารถตัดสินคร่าวๆ ได้
2. ดูซอร์สโค้ดและค้นหาเส้นทางของ eWebEditor คลิกเพื่อดูซอร์สโค้ดเพื่อดูว่ามีคำสั่งที่คล้ายกับ <iframesrc='/edit/ewebeditor.asp?id=content&style=web'frameborder=0scrolling=nowidth='550'HEIGHT='350'></iframe> หรือไม่ ในซอร์สโค้ด ในความเป็นจริง มีเพียงการค้นพบการมีอยู่ของข้อความดังกล่าวเท่านั้นที่เราจะสามารถแน่ใจได้อย่างแท้จริงว่าเว็บไซต์นี้ใช้ eWebEditor จากนั้นจด *** ใน src='***' นี่คือเส้นทาง eWebEditor
3. ไปที่หน้าเข้าสู่ระบบการจัดการของ eWebEditor หน้าการจัดการเริ่มต้นของ eWebEditor คือ admin_login.asp ซึ่งอยู่ในไดเร็กทอรีเดียวกันกับ ewebeditor.asp จากตัวอย่างข้างต้น ที่อยู่ที่เราเยี่ยมชมคือ: http://www.***.net/edit/admin_login.asp เพื่อดูว่าหน้าเข้าสู่ระบบปรากฏขึ้นหรือไม่
หากคุณไม่เห็นหน้าดังกล่าว แสดงว่าผู้ดูแลระบบได้ลบหน้าเข้าสู่ระบบการจัดการแล้ว ฮ่าๆ คุณจะรออะไรอีกล่ะ? แต่โดยทั่วไปแล้ว ฉันไม่ค่อยเห็นผู้ดูแลระบบลบหน้านี้เลย ลองใช้ชื่อผู้ใช้เริ่มต้น: ผู้ดูแลระบบ, รหัสผ่าน: admin888 แล้วไงล่ะ? สำเร็จหรือไม่ (โปรดดูบทความต่อไปนี้หากไม่ใช่บัญชีเริ่มต้น)!
4. เพิ่มประเภทไฟล์อัพโหลด คลิกการจัดการสไตล์และเลือกการตั้งค่าสไตล์ที่ด้านล่างของรายการ เหตุใดคุณจึงควรเลือกสไตล์ที่ด้านล่างของรายการ เนื่องจากไม่อนุญาตให้แก้ไขสไตล์ที่มาพร้อมกับ eWebEditor แน่นอนคุณจึงสามารถคัดลอกสไตล์ใหม่และตั้งค่าได้
จากนั้นเพิ่มประเภท asa ให้กับประเภทไฟล์ที่อัพโหลด
5. อัปโหลด ASP Trojan และรับ WebShell ถัดไป เปลี่ยนนามสกุลของ ASP Trojan เป็น asa และคุณก็สามารถอัปโหลด ASP Trojan ของคุณได้ อย่าถามว่าจะอัพโหลดยังไง? เพียงคลิกดูตัวอย่างแล้วเลือกปุ่มเพื่อแทรกไฟล์อื่นๆ
หลักการของช่องโหว่
หลักการหาประโยชน์จากช่องโหว่นั้นง่ายมาก โปรดดูไฟล์ Upload.asp:
ไม่อนุญาตให้อัปโหลดไฟล์สคริปต์ asp ไม่ว่าในกรณีใด ๆ
sAllowExt=แทนที่(UCase(sAllowExt),ASP,)
เนื่องจาก eWebEditor กรองเฉพาะไฟล์ ASP เท่านั้น ฉันจำได้ว่าเมื่อฉันใช้ eWebEditor ครั้งแรก ฉันสงสัยว่า: เนื่องจากผู้เขียนรู้อยู่แล้วว่าจำเป็นต้องกรองไฟล์ asp ทำไมไม่กรอง asa, cer และไฟล์อื่น ๆ พร้อมกันล่ะ? บางทีนี่อาจเป็นสัญญาณของความไม่รับผิดชอบต่อผู้ใช้ฟรี!
แอปพลิเคชั่นขั้นสูง
นอกจากนี้ยังมีเคล็ดลับบางประการในการใช้ประโยชน์จากช่องโหว่ของ eWebEditor:
1. ไม่สามารถเข้าสู่ระบบโดยใช้ชื่อผู้ใช้และรหัสผ่านเริ่มต้นได้
โปรดลองดาวน์โหลดไฟล์ ewebeditor.mdb โดยตรงในไดเร็กทอรี db ชื่อผู้ใช้และรหัสผ่านอยู่ในตาราง eWebEditor_System และมีการเข้ารหัส md5 หากคุณไม่สามารถดาวน์โหลดหรือถอดรหัสได้ โปรดถือว่าคุณโชคไม่ดี
2. หลังจากเพิ่มประเภท asa แล้ว ฉันยังพบว่าไม่สามารถอัปโหลดได้
ควรจะเป็นได้ว่าเว็บมาสเตอร์รู้โค้ดบางส่วนและแก้ไขไฟล์ Upload.asp ด้วยตัวเอง แต่ก็ไม่สำคัญ ตามนิสัยการคิดของคนทั่วไป พวกเขามักจะแก้ไขมันโดยตรงในประโยค sAllowExt=Replace(UCase(sAllowExt),ASP ,) เคยเห็นแล้ว เว็บมาสเตอร์ท่านหนึ่งได้แก้ไขดังนี้:
sAllowExt=แทนที่(แทนที่(แทนที่(แทนที่(แทนที่(UCase(sAllowExt),ASP,),CER,),ASA,),CDX,),HTR,)
เมื่อมองแวบแรก ทุกอย่างจะถูกกรอง แต่ตราบใดที่เราเพิ่ม aaspsp ให้กับประเภทการอัปโหลด เราก็สามารถอัปโหลดไฟล์ asp ได้โดยตรง ฮ่าๆ มันเป็นความคิดอัจฉริยะไม่ใช่เหรอ? หลังจากที่ aaspsp กรองอักขระ asp มันก็กลายเป็น asp! ยังไงก็ตาม ให้ฉันบอกความลับแก่คุณ อันที่จริง วิธีการที่คล้ายกันสามารถใช้เพื่อข้ามการกรองส่วนขยายใน Dongwang Forum 7.0sp2
3. หลังจากอัปโหลดไฟล์ asp ฉันพบว่าไดเรกทอรีไม่ได้รับอนุญาตให้เรียกใช้สคริปต์
ฮ่าๆ ฉันนี่มันโง่จริงๆ นะ ประเภทการอัพโหลดก็เปลี่ยนได้ แต่เปลี่ยนเส้นทางการอัพโหลดไม่ได้ด้วยเหรอ?
4. ใช้วิธีการในจุดที่ 2 แล้ว แต่ยังไม่สามารถอัพโหลดประเภท asp ได้
ดูเหมือนว่าผู้ดูแลเว็บจะต้องเชี่ยวชาญในการเขียน asp แต่เรามีเคล็ดลับสุดท้ายที่จะจัดการกับเขา: eWebEditor สามารถตั้งค่าประเภทการบันทึกไฟล์ระยะไกลอัตโนมัติ และเราสามารถเพิ่มประเภท asp ได้ แต่เราจะเปิดใช้งานการเข้าถึงไฟล์ asp จากระยะไกลเพื่อบันทึกในรูปแบบซอร์สโค้ดได้อย่างไร มีหลายวิธี วิธีที่ง่ายที่สุดคือการลบ asp ในการแมปไฟล์แอปพลิเคชันใน IIS
แบ่งปัน: แสดงคีย์เวิร์ดบันทึกที่ได้รับเป็นสีแดงเมื่อ ASP สืบค้นข้อมูล % การตอบกลับเขียนแทนที่ (rs (ฟิลด์ com/]