โจรที่กล่าวถึงในที่นี้หมายถึงการใช้ฟังก์ชันอันทรงพลังที่มีให้โดยส่วนประกอบ xmlhttp ใน xml ใน asp เพื่อเก็บข้อมูล (รูปภาพ หน้าเว็บ และไฟล์อื่น ๆ ) บนเว็บไซต์ระยะไกลไปยังท้องถิ่น และแสดงบนเพจหลังจากการประมวลผลต่างๆ หรือ ประเภทของโปรแกรมที่เก็บอยู่ในฐานข้อมูล คุณสามารถใช้โปรแกรมขโมยประเภทนี้เพื่อทำงานบางอย่างที่ดูเหมือนเป็นไปไม่ได้เลยในอดีต เช่น การเปลี่ยนหน้าของเว็บไซต์บางแห่งและเปลี่ยนเป็นหน้าของคุณเอง หรือบันทึกข้อมูลบางส่วน (บทความ รูปภาพ) ของเว็บไซต์บางแห่ง เพื่อนำไปใช้ในฐานข้อมูลท้องถิ่น ข้อดีของ Thief คือ ไม่จำเป็นต้องดูแลรักษาเว็บไซต์ เนื่องจากข้อมูลในโปรแกรม Thief มาจากเว็บไซต์อื่น และจะมีการอัปเดตเมื่อมีการอัปเดตเว็บไซต์ ซึ่งโดยทั่วไปแล้วจะช่วยประหยัดทรัพยากรเซิร์ฟเวอร์ได้มาก โปรแกรม Thief มีเพียงไม่กี่ไฟล์และเนื้อหาเว็บทั้งหมดมาจากเว็บไซต์อื่น ข้อเสียคือ: ความไม่เสถียร หากเว็บไซต์เป้าหมายผิดพลาด โปรแกรมก็จะผิดพลาดไปด้วย และหากเว็บไซต์เป้าหมายได้รับการอัพเกรดและดูแลรักษา โปรแกรมโจรก็จะต้องแก้ไขความเร็วตามไปด้วย เนื่องจากเป็นการโทรระยะไกล ความเร็วจะเร็วเท่ากับการอ่านข้อมูลบนเซิร์ฟเวอร์ภายในเครื่อง ซึ่งช้ากว่านั้นแน่นอน ฟังดูน่าทึ่งใช่ไหม? มาเริ่มเรียนรู้ความรู้เบื้องต้นเกี่ยวกับโปรแกรมโจรกันตอนนี้เลย!
มาศึกษาสิ่งที่ง่ายกว่านี้กันดีกว่า โปรแกรมพยากรณ์อากาศ บนเว็บไซต์ QQ
รหัสมีดังนี้:
1<%2เมื่อเกิดข้อผิดพลาดดำเนินการต่อถัดไป
3Server.Scripttimeout=9999999
4FunctionGethttppage(เส้นทาง)
5T=รับร่างกาย(เส้นทาง)
6Gethttppage=Bytestobstr(T,Gb2312)
7สิ้นสุดฟังก์ชัน
8
9' ขั้นแรก ทำการตั้งค่าเริ่มต้นสำหรับโปรแกรมขโมย หน้าที่ของโค้ดข้างต้นคือการละเว้นข้อผิดพลาดที่ไม่ร้ายแรงทั้งหมด ตั้งค่าการหมดเวลาการทำงานของโปรแกรมขโมยให้นานมาก (เพื่อไม่ให้เกิดข้อผิดพลาดในการหมดเวลาทำงาน ) และแปลงต้นฉบับ การเข้ารหัส utf-8 เริ่มต้นจะถูกแปลงเป็นการเข้ารหัส gb2312 มิฉะนั้นการใช้คอมโพเนนต์ xmlhttp โดยตรงเพื่อเรียกหน้าเว็บที่มีตัวอักษรจีนจะส่งผลให้รหัสที่อ่านไม่ออก
10
11ฟังก์ชั่นGetbody(Url)
12เมื่อข้อผิดพลาดดำเนินการต่อถัดไป
13SetRetrieval=สร้างอ็อบเจ็กต์(Microsoft.Xmlhttp)
14ด้วยการดึงข้อมูล
15.OpenGet, URL,เท็จ,,
16.ส่ง
17Getbody=.การตอบสนองร่างกาย
18จบด้วย
19SetRetriever=ไม่มีอะไรเลย
20สิ้นสุดฟังก์ชัน
ยี่สิบเอ็ด
22'จากนั้นเรียกคอมโพเนนต์ xmlhttp เพื่อสร้างออบเจ็กต์และดำเนินการตั้งค่าเริ่มต้น
ยี่สิบสาม
24FunctionBytestobstr(Body,Cset)
25DimObjstream
26SetObjstream=Server.Createobject(Adodb.Stream)
27Objstream.Type=1
28Objstream.Mode=3
29Objstream.เปิด
30Objstream.WriteBody
31Objstream.Position=0
32Objstream.Type=2
33Objstream.Charset=Cset
34Bytestobstr=Objstream.Readtext
35Objstream.ปิด
36SetObjstream=ไม่มีอะไร
37สิ้นสุดฟังก์ชัน
38
39ฟังก์ชันนิวสตริง(Wstr,Strng)
40Newstring=Instr(Lcase(Wstr),Lcase(Strng))
41IfNewstring<=0แล้วNewstring=เลน(Wstr)
42สิ้นสุดฟังก์ชัน
43
44' ในการประมวลผลข้อมูลที่บันทึกไว้ คุณต้องเรียกใช้คอมโพเนนต์ adodb.Stream และดำเนินการตั้งค่าเริ่มต้น -