ปลั๊กอินสำหรับตะขอ cs 1.6 Hook–คำถามที่พบบ่อย: เราเข้าใจวิธีการติดตั้ง hooks ระบบทั้งเก่าและใหม่ การเตะด้านซ้ายประเภทต่างๆ

เนื่องจากหลายคนเขียนถึงฉันและถามว่าเมื่อใดที่ Hook เป็นเวอร์ชันสุดท้าย ฉันจึงตัดสินใจเขียน hook แต่ไม่ใช่ Ar4Mode
ฉันตัดสินใจที่จะไม่อัปเดต hook เก่าของฉัน (เพราะโค้ดมันแย่มาก) ดังนั้นฉันจึงตัดสินใจเขียนอันใหม่ ด้วยการเปลี่ยนแปลงบางอย่าง

ไฟล์เก็บถาวรประกอบด้วย hook สำหรับ: Ar4Mode, JBE, UJBL, JBM รวมถึง mod อื่น ๆ (แต่ไม่มีการใช้เนทีฟ)
นอกจากนี้ยังมีเบ็ดโดยไม่ต้องบันทึก (คุณต้องเปลี่ยนใน Plugins-iHOOK.ini)

ความแตกต่างจากตะขอแบบเก่า:
[-] การตั้งค่าสีตะขอ
[+] บันทึกตามฐานข้อมูล (MsQl)
[+] ผ่านการตั้งค่าไฟล์: ความเร็ว, ประเภท ขนาด ปลายสไปรท์
[+] คุณสามารถกำหนดค่าเบ็ดเฉพาะสำหรับธงเฉพาะได้
[+] กำหนดค่าแฟล็กผ่านไฟล์: web/menu/control/shutdown
[+|-] การเปลี่ยนแปลงทางสายตา
[+] เพิ่มสไปรท์/เสียงใหม่ (แม้ว่าคุณจะทำเองได้ก็ตาม)
[+] คุณสามารถกำหนดค่าประเภทของ hook end ผ่านไฟล์ได้ (กระจายหรือสไปรต์เดี่ยว)
[+] (JBE) ในระหว่างการค้นหา คุณสามารถเลือกได้ว่าใครจะขอเบ็ด (จากทุกคนหรือเฉพาะจากบุคคลที่อยู่ในรายการที่ต้องการ)
[+] รหัสที่ดี

คำสั่งคอนโซล:
1) พูด /hook - เมนูเว็บ
2) +hook / +rope - การเปิดใช้งานเว็บ

ชาวพื้นเมือง:
Native_iHOOK_menu(id) - เปิดเมนู
Native_iHOOK_get_hook_sett(id, iType) - รับการตั้งค่า hook [ iType: 1 - Sprite of the web / 2 - sound / 3 - sprite of the end of the web / 4 - size / 5 - view / 6 - speed ]
bool:native_iHOOK_get_hook_player_have(id) - การมีอยู่ของ hook
================================================================

เว็บใน cs1.6 หรือขอ cs 1.6 เรียกมันว่าสิ่งที่คุณต้องการ - แต่นี่เป็นปลั๊กอินทั่วไปในระบบของคุณอยู่แล้ว เว็บปลั๊กอินใน cs เปิดโอกาสให้คุณเคลื่อนที่ไปรอบๆ แผนที่ราวกับว่าคุณเป็นแมงมุมและกำลังบินเว็บ นั่นคือคุณเคลื่อนที่ไปตามเว็บ การตั้งค่าเว็บปลั๊กอินใน cs1.6 ช่วยให้คุณไม่เพียง แต่สำหรับผู้ดูแลระบบหรือบุคคลอื่นเท่านั้น แต่ยังสำหรับผู้เล่นทุกคนด้วย แน่นอน หากคุณเป็นผู้ดูแลระบบที่เป็นอันตราย คุณสามารถกำหนดค่าเว็บปลั๊กอินใน cs สำหรับตัวคุณเองเท่านั้น เพื่อป้องกันไม่ให้ noobs บินไปรอบ ๆ แผนที่เหมือนเนื้อสด ตามแนวคิดนี้ เว็บปลั๊กอินใน cs นี้ถูกใช้มาเป็นเวลานานใน quake2 ย้อนกลับไปในปี 2544 และนี่คือ hook - ปลั๊กอิน hook สำหรับ cs 1.6 ได้รับการแนะนำในภายหลัง แต่นี่ไม่ได้เปลี่ยนอารมณ์ของตัวเอง

วิธีใช้เว็บใน cs:
หากต้องการยิงเว็บใน cs1.6 คุณต้องลงทะเบียนการเชื่อมโยงคีย์ในคอนโซล ลองใช้ "r" เป็นตัวอย่าง

ผูก "r" "+เชือก"

หลังจากนั้นกด “r” แล้วเราจะบินได้เหมือนแมงมุมบนเว็บ

Cvars สำหรับปลั๊กอินเว็บใน cs:

amx_rope — เปิด/ปิดปลั๊กอินเว็บ
amx_rope_count — คุณสามารถใช้เว็บได้กี่ครั้งต่อรอบ

ตามที่ระบุไว้ข้างต้น มีปลั๊กอินอื่นสำหรับเซิร์ฟเวอร์ CS ของคุณ นี่คือปลั๊กอิน hook สำหรับ cs
ส่วนใหญ่จะใช้สำหรับ prokreedz mod เพื่อเรียนรู้วิธีการกระโดดอย่างถูกต้อง

วิธีติดตั้งปลั๊กอิน hook สำหรับ cs:
1) คัดลอกไฟล์ปลั๊กอิน prokreedz_hook.amxxไปที่หมวดหมู่ ปลั๊กอิน cstrike/addons/amxmodx/.
2) จากนั้นเปิดไฟล์ปลั๊กอิน ( Plugins.ini cstrike/addons/amxmodx/configs/) และเขียนมันตรงนั้น prokreedz_hook.amxxเพื่อให้มันทำงานได้

วิธีใช้ hook ใน cs:
เราผูกปุ่มเข้ากับตะขอแล้วบิน

ผูก "r" "+hook"

นั่นคือทั้งหมดที่ คุณสามารถเลือกปลั๊กอินใดก็ได้จากทั้งสองปลั๊กอินและใช้เพื่อนำทางแผนที่

ไฟล์เก็บถาวรประกอบด้วยไฟล์ของปลั๊กอินเว็บสำหรับ cs1.6 และไฟล์ของปลั๊กอิน hook สำหรับ cs

เรามีความยินดีที่จะต้อนรับคุณสู่เว็บไซต์ซึ่งอุทิศให้กับหนึ่งในที่สุด เกมยอดนิยมในโลก - Counter Strike เว็บไซต์ของเรามีมากมาย ไฟล์ที่แตกต่างกันสำหรับเกมนี้ ม็อดต่างๆ แพตช์ใหม่ ปลั๊กอิน
เว็บใน Counter Strike 1.6 เป็นปลั๊กอินยอดนิยม เว็บปลั๊กอินช่วยให้คุณสามารถเคลื่อนที่ไปรอบๆ แผนที่ได้ราวกับว่าคุณเป็นแมงมุมและเคลื่อนที่ผ่านเว็บ เว็บปลั๊กอินสำหรับ cs 1.6 สามารถใช้งานได้ไม่เพียงแต่สำหรับผู้ดูแลระบบเท่านั้น แต่ยังรวมถึงผู้เล่นทั่วไปด้วย การตั้งค่าที่ถูกต้อง- โดยปกติแล้ว หากคุณเป็นผู้ดูแลระบบที่ประสงค์ร้าย คุณจะต้องกำหนดค่าปลั๊กอินของเว็บสำหรับตัวคุณเองเท่านั้น เพื่อป้องกันไม่ให้ noobs บินไปรอบๆ แผนที่เหมือนเนื้อสัตว์ แนวคิดของปลั๊กอินนี้ถูกใช้มานานแล้ว ย้อนกลับไปใน Quake 2 (2001) ปลั๊กอิน hook สำหรับ cs 1.6 ได้รับการแนะนำในภายหลังเล็กน้อย แต่อารมณ์ของตัวเองไม่เปลี่ยนแปลง
จะใช้เว็บอย่างถูกต้องใน cs ได้อย่างไร? ในเรื่องราวของเราเราจะพยายามให้คำตอบที่ถูกต้องสำหรับคำถามนี้
หากต้องการถ่ายเว็บใน cs 1.6 คุณต้องลงทะเบียนการเชื่อมโยงกับคีย์เฉพาะในคอนโซล ตัวอย่างเช่น ลองใช้ปุ่ม "A"
ผูก "A" + เชือก
หลังจากนี้โดยการกดปุ่ม "A" คุณสามารถบินได้เหมือนแมงมุม
เราขอนำเสนอ cvars สำหรับปลั๊กอินเว็บใน cs:
amx_rope – เปิดและปิดปลั๊กอิน
amx_rope_count - แสดงจำนวนครั้งที่คุณสามารถใช้เว็บได้ในหนึ่งรอบ
มีปลั๊กอินอื่นสำหรับ CS – hook ของคุณ ตามกฎแล้วใช้สำหรับ prokreedz mod เพื่อเรียนรู้วิธีการกระโดดอย่างถูกต้อง (ตามมาตรฐานเกม)
ในการติดตั้ง hook สำหรับ CS คุณจะต้อง:
1) คัดลอก prokreedz_hook.amxx ไปยังปลั๊กอิน cstrike/addons/amxmodx/
2) เปิด (plugins.ini cstrike/addons/amxmodx/configs/) และเพื่อให้ใช้งานได้ ให้เพิ่ม prokreedz_hook.amxx ที่นั่น
ไม่รู้ว่าจะใช้ตะขออย่างไร? ง่ายมาก เราผูกกระดุมเข้ากับตะขอแล้วบินได้เหมือนแมงมุม – ผูก “A” “+hook”
เราหวังว่าเราจะให้คำตอบที่ชัดเจนแก่เว็บไซต์และผู้ถือครองทั้งหมด เซิร์ฟเวอร์เกมสำหรับคำถามที่ได้รับความนิยมและมักถูกถามบ่อยๆ เกี่ยวกับวิธีใช้เว็บสำหรับ CS อย่างเหมาะสม และวิธีบินบนนั้น ปลั๊กอินนี้เปิดโอกาสใหม่ๆ ให้กับเกมและทำให้มันน่าสนใจยิ่งขึ้น โดยเฉพาะอย่างยิ่งเนื่องจากมันใช้งานง่ายมาก! ค้นพบโอกาสใหม่ๆ ติดตามผลิตภัณฑ์ล่าสุดของ Counter Strike และเรียนรู้สิ่งใหม่ๆ ที่น่าสนใจมากมาย

ต่อหน้าคุณ - คู่มือฉบับสมบูรณ์ในการใช้โบลว์ด้านซ้าย (ขอเกี่ยวซ้าย) อย่างถูกต้อง บทความนี้จะช่วยนักมวยมือใหม่ที่ไม่ชอบหมัดฮุกซ้าย และแม้กระทั่งผู้เชี่ยวชาญที่ต้องการเพิ่มความแข็งแกร่งและปรับแต่งหมัดที่มีอยู่ เรียนรู้ 4 ประเภทต่างๆฮุกซ้ายแล้วฝึกเลือกช่วงเวลาที่เหมาะสมในการขว้าง

ฉันเคยร่วมงานกับนักมวยมากพอที่จะรู้ว่าสำหรับบางคน การเตะด้วยเท้าซ้ายนั้นไม่ใช่ปัญหา แต่สำหรับคนอื่นๆ มันยากมาก มันเหมือนกับการวิ่งหรือการเต้นรำ บางคนมีพรสวรรค์โดยกำเนิดและร่างกายมีกลไกที่ยอดเยี่ยมและเคลื่อนไหวได้อย่างสวยงาม ในขณะที่บางคนมี "ไม้" โดยธรรมชาติ ข่าวดีก็คือสามารถโยนฮุกซ้ายได้

ประเภทต่างๆแรงกระแทกด้านซ้าย

อาจเป็นเรื่องที่น่าแปลกใจสำหรับหลายๆ คนที่มีการเตะทางด้านซ้ายหลายประเภท บางประเภทติดตั้งง่ายกว่าในขณะที่บางประเภทก็ยากกว่า แนะนำให้ฝึกฝนและเรียนรู้ทุกประเภทเพื่อประโยชน์ของตนเอง

  1. ฮุกซ้ายไฟฟ้า– คุณเอนตัว (วางลำตัว) ไว้ในการชก ศีรษะของคุณเคลื่อนไปด้านหลังเล็กน้อยและไปทางขวา ร่างกายของคุณเคลื่อนไหว และน้ำหนักของมันจะถูกส่งไปยังขาหลัง นี่คือสิ่งที่ฉันเรียกว่าตะขอไฟ
  2. เจาะฮุกซ้าย- ในระหว่างการโจมตี ศีรษะจะเคลื่อนที่ไปข้างหน้า แต่ยังคงอยู่ใกล้กับคู่ต่อสู้ ร่างกายหมุน (บิด) โดยทั่วไปแล้ว การโจมตีนี้จะถูกส่งไปยังลำตัวของคู่ต่อสู้ในการต่อสู้ระยะประชิด (หัวของคุณอยู่ใกล้กับคู่ต่อสู้ ดังนั้นจึงเป็นเรื่องยากสำหรับเขาที่จะตอบโต้หมัด) ข้อดีของตะขอเจาะทะลุคือสามารถทำซ้ำได้ซ้ำแล้วซ้ำเล่า เพราะร่างกายของคุณแทบไม่เคยสูญเสียตำแหน่งเดิมในการโจมตีครั้งที่สองเลย (นักมวยบางคนชกหมัดนี้เป็นหมัดฮุคเกอร์ ซึ่งเป็นลูกผสมระหว่างฮุกซ้ายกับหมัดตัวพิมพ์ใหญ่ซ้าย)
  3. ตะขอหมุน– เมื่อทำการชกนี้ นักมวยจะหมุนตัวรอบเท้าซ้าย – กล่าวคือ เคลื่อนที่ตามเข็มนาฬิกา ออกจากแนวการโจมตีตอบโต้ของศัตรู การโจมตีครั้งนี้รุนแรงมากและในขณะเดียวกันก็ช่วยให้คุณหลีกเลี่ยงการตอบโต้ได้ นี่คือหมัดตอบโต้ที่ยอดเยี่ยมที่จะช่วยให้คุณหมุนคู่ต่อสู้ในสังเวียนได้
  4. แทงเบ็ด– เมื่อทำการโจมตีนี้ คุณจะพุ่งไปข้างหน้าและยืดตัวออกไปในทิศทางของศัตรู และมือซ้ายของคุณจะลอยไปตามขอบของห่วง มือซ้ายเริ่มออกจากใบหน้าของคุณ จากนั้นเคลื่อนไปทางซ้ายอย่างรวดเร็วแล้วยิงออกไปที่หน้าของคู่ต่อสู้ ลักษณะเฉพาะของการโจมตีนี้คือแขนซ้ายของคุณเหยียดตรงให้มากที่สุดเพื่อเข้าถึงคู่ต่อสู้ ฮุคซ้ายนี้เหมือนไม้กางเขนซ้ายมากกว่า นักมวยบางคนโน้มตัวไปข้างหน้าเล็กน้อยเมื่อชกและใช้หลังเป็นสปริงดันแขนซ้าย การนัดหยุดงานครั้งนี้ไม่ใช่การนัดหยุดงานแบบหนึ่งที่สอนกันในยิม แต่ด้วยจังหวะเวลาที่ดี จะเป็นอันตรายและมีประสิทธิภาพมาก

ตัวอย่างที่ดีของฮุกซ้ายที่ทรงพลังคือการต่อยของ Mike Tyson หรือ Arturo Gatti ดูว่าพวกเขาเอาทั้งตัวใส่ตะขอซ้ายอย่างไร

ตัวอย่างที่ดีของฮุกซ้ายเจาะทะลุเห็นได้ในมาร์โก อันโตนิโอ บาร์เรรา, มิกกี้ วอร์ด หรือริกกี้ ฮัตตัน โปรดทราบว่าศีรษะยังคงอยู่กับที่ในขณะที่ร่างกายหมุนในขณะที่เกิดการกระแทก

ตัวอย่างที่ดีของฮุกซ้ายที่หมุนได้คือการต่อยของ Miguel Cotto (จริงๆ แล้วเขาถนัดฮุกสามประเภท), Wladimir Klitschko และ Floyd Mayweather Jr.

ตัวอย่างที่ดีของฮุกซ้ายพร้อมแทงสามารถเห็นได้ใน Ricky Hatton, Roy Jones Jr. , Prince Nassim

สำหรับผู้ที่รู้สึกว่ายากหรือเจ็บปวดในการเหวี่ยงเบ็ดซ้ายเข้าลำตัว

สาเหตุที่ทำให้คุณเจ็บหรือไม่สบายใจที่ต้องโดนตะขอซ้ายเข้าลำตัวก็เพราะว่ามือซ้ายของคุณไม่ได้รูปร่างตามที่ต้องการ

ลองดังต่อไปนี้:

  • อย่าเหวี่ยงเบ็ดในแนวนอนอย่างเคร่งครัด ลองขว้างตะขอครึ่งตัวและตัวพิมพ์ใหญ่ครึ่งหนึ่ง ปล่อยให้มีการเคลื่อนไหวขึ้นบ้างระหว่างการกระแทก (“hookercut”)
  • ผ่อนคลายและลดไหล่และข้อศอกลงขณะกระแทกร่างกาย
  • เท้าทั้งสองข้างควรหันและหันไปทางขวาเมื่อถูกกระแทก
  • มือของคุณเคลื่อนไหวมากเกินไป เคลื่อนไหวร่างกาย (บิดตัว) ให้มากขึ้น แทนที่จะใช้แขน
  • ในช่วงเริ่มต้นของการโจมตี อย่าขยับมือไปด้านหลัง แต่ให้วางมือลงต่อหน้าคุณแล้วโจมตีจากตำแหน่งนี้

ลำดับฮุกซ้าย (เพื่อหมัดตัวที่ทรงพลัง)

  1. เข้าสู่ท่าทางปกติของคุณ
  2. งอเข่าเล็กน้อย ศีรษะและแขนซ้ายเคลื่อนไปทางซ้ายเล็กน้อยและลง
  3. หมุนตัวไปทางขวาอย่างรวดเร็วพร้อมกับเหวี่ยงแขนซ้ายออกไป
  4. ร่างกายของคุณจะหมุนไปทางขวาพร้อมกับตะขอ
  5. ส้นเท้าขวาของคุณควรอยู่บนพื้นและส้นเท้าซ้ายจะยกขึ้นจากพื้นโดยดันแขนออก
  6. หมัดปิดเกือบจะในขณะที่สัมผัสกับศัตรูและหยุดทันทีหลังจากการปะทะ
  7. หยุดหมัดก่อนที่ร่างกายจะบิดตัว ไม่เช่นนั้น คุณจะโดนหมัดสวนกลับ ไม่จำเป็นต้องตีด้วยแอมพลิจูดสูงสุด
  8. เมื่อสิ้นสุดหมัด หัว หมัดซ้าย และขาของคุณควรชี้ไปทางขวา

หมายเหตุ: การเป่าเกิดขึ้นขณะหายใจออก บิดเท้าไปทางขวาให้มากที่สุด และอย่าลืมกลับท่าทาง

หากคุณโยนตะขอเจาะ ให้หมุนลำตัว แต่ให้ศีรษะอยู่นิ่ง ในกรณีส่วนใหญ่ วิธีที่ดีที่สุดคือก้มหัวให้ใกล้กับข้อศอกของคู่ต่อสู้ เพื่อที่คุณจะได้เจาะหมัดเข้าไปได้จริงๆ และไม่ต้องกังวลกับหมัดสวนกลับของคู่ต่อสู้จากมือขวามากเกินไป คุณสามารถลองโยนตะขอนี้เป็นตะขอเกี่ยวเพื่อให้ได้เอฟเฟกต์ที่เจาะทะลุได้อย่างแท้จริง ลองมัน!

หากคุณเหวี่ยงเบ็ด ให้แขนของคุณเหยียดตรงขึ้นเล็กน้อย นั่นคือมันจะเป็นกากบาทซ้ายมากกว่าตะขอ หากต้องการรุนแรงยิ่งขึ้นจะต้องเหวี่ยงมือซ้ายออกจากหน้า เวลาเหวี่ยงเบ็ดนี้ ร่างกายของคุณจะหมุนทั้งตัว โดยเหวี่ยงแขนซ้ายออกไปข้างหน้า ในขณะที่ขาขวาหันไปทางซ้ายและขวา วิธีนี้จะทำให้คุณหลุดพ้นจากแนวตอบโต้ ร่างกายของคุณจะหมุนรอบเท้าซ้าย 60-80 องศาตามเข็มนาฬิกา

เมื่อเหวี่ยงเบ็ดซ้ายด้วยการแทง ให้เหวี่ยงแขนไปข้างหน้าอย่างรวดเร็วแล้วกลับเข้าที่ทันที การนัดหยุดงานนี้คล้ายกับหนังสติ๊ก ขอย้ำอีกครั้งว่าตะขอนี้คล้ายกับไม้กางเขนด้านซ้ายมาก ในขณะที่โจมตี คุณจะกระโดดไปข้างหน้า (หรือเพียงแค่ยืดตัวไปข้างหน้า) และศีรษะของคุณเคลื่อนเข้าหาศัตรูโดยตรง ซึ่งเป็นเป้าหมายที่ดีสำหรับการโจมตีตอบโต้ที่ทรงพลัง ขว้างมือเป็นเส้นตรงระหว่างการฟาด - สิ่งนี้จะเพิ่มระยะการตี

ตะขอซ้ำ

หากคุณได้ทดลองใช้คำแนะนำข้างต้นแล้ว คุณคงทราบแล้วว่าการขว้างตะขอซ้ายอันทรงพลังสองตัวติดต่อกันเป็นเรื่องยากมาก วิธีที่พบบ่อยที่สุดในการโยนตะขอสองตัวติดต่อกันคือการโยนตะขอที่เจาะทะลุก่อนแล้วจึงใช้ตะขอไฟฟ้า

ดังนั้นคุณจึงขยับศีรษะไปทางซ้ายและไปข้างหน้าแล้วเหวี่ยงตะขอเจาะโดยปล่อยให้ศีรษะอยู่กับที่จากนั้นจึงขยับศีรษะและลำตัวไปทางขวาอย่างแหลมคมแล้วโยนตะขอทรงพลัง คุณสามารถโยนตะขอเจาะไปที่ลำตัวแล้วตามด้วยตะขอหมุนไปที่ศีรษะ ดูกล่องเชน มอสลีย์ เขาชอบที่จะโยนตะขอซ้ายเจาะทะลุสามอันติดต่อกัน

เคล็ดลับในการขว้างตะขอซ้าย:

  • อ่อนแอและแข็งแกร่ง- ปล่อยให้ตะขออันหนึ่งของคุณอ่อนแอและอันที่สองก็แข็งแกร่ง จุดประสงค์ของตะขอแรกคือการบังคับให้ศัตรูวางบล็อกป้องกันและเคลื่อนย้ายเสื้อกั๊กในช่วงเวลาที่ไม่เหมาะสม คุณยังสามารถเหวี่ยงเบ็ดที่แข็งแรงก่อนแล้วค่อยใช้ตะขออ่อนก็ได้
  • ช้าและเร็ว- เหวี่ยงเบ็ดช้าๆ แล้วเบ็ดเร็วมากทันที มันอาจจะเป็นวิธีอื่น
  • ต่ำและสูง- โยนตะขอไปที่ลำตัวและอันที่สองไปที่หัว มันอาจจะเป็นวิธีอื่น

เมื่อจะโยนฮุกซ้าย

นักมวยหลายคนมีฮุกซ้ายอยู่ในตำแหน่งที่ดี แต่ไม่เคยเรียนรู้ที่จะจับเวลาให้เหมาะสม พวกเขายินดีที่จะรอทั้งวันเพื่อหาโอกาสที่จะโยนฮุกซ้าย แต่มันอาจจะมาไม่ถึง ฮุกซ้ายเป็นมากกว่าอาวุธ สามารถใช้เพื่อสร้างความเสียหาย เปิดการป้องกันของคู่ต่อสู้ (สำหรับการโจมตีด้วยมือขวาอย่างรุนแรงในภายหลัง) และเพื่อเบี่ยงเบนความสนใจของคู่ต่อสู้ สิ่งสำคัญคือต้องมีความมั่นใจและโยนเบ็ดโดยไม่ต้องกลัวเคาน์เตอร์

การผสมผสานที่ยอดเยี่ยมกับฮุกซ้าย:

  • หลังจากครอสขวา - การรวมกันนี้ชัดเจน นักมวยเกือบทุกคนจะเหวี่ยงฮุกซ้ายหลังจากปักหมัดขวา
  • หลังฮุกซ้าย - นี่เป็นสิ่งที่ชัดเจนเช่นกัน ทุกคนถูกสอนให้ตั้งรับโดยใช้หลักซ้าย-ขวา ดังนั้น ฮุกซ้ายคู่จึงประสบความสำเร็จได้
  • ตะขอหมุนและครอสขวาอันทรงพลังทันที หลังจากเกี่ยวเบ็ดแล้ว ต้องแน่ใจว่าได้วางส้นเท้าทั้งสองข้างลงบนพื้นเพื่อเพิ่มผลกระทบของการครอสขวาอันทรงพลัง
  • เกี่ยวอย่างรวดเร็วเข้ากับลำตัวเพื่อลดการป้องกันของคู่ต่อสู้และกระทุ้งที่ศีรษะทันที
  • ตะขออันทรงพลังที่ลำตัวเพื่อลดการป้องกันของคู่ต่อสู้ (มือขวา) และขอเกี่ยวที่พุ่งไปที่ศีรษะทันที หลังจากนั้น - ขึ้นอยู่กับดุลยพินิจของคุณ
  • หากคู่ต่อสู้ของคุณมีถุงมือขวาอยู่ใกล้ใบหน้า ให้เหวี่ยงตะขอไปที่ถุงมือ ความเสียหายจะยังคงเห็นได้ชัดเจน
  • ก้าวเท้าไปทางขวาแล้วเหวี่ยงฮุกซ้ายหมุนเร็ว วิธีนี้จะได้ผลเมื่อคู่ต่อสู้ของคุณไล่คุณโดยเอามือลง คุณยังสามารถลดการป้องกันของคู่ต่อสู้ได้โดยการลดการป้องกันของคุณเอง แต่เพียงเสี้ยววินาที
  • ฮุกซ้ายเบา ๆ ไปที่ศีรษะแล้วกระทุ้งอย่างรวดเร็วตามด้วยการกากบาทขวา
  • เมื่อคู่ต่อสู้ไล่ตามคุณหรือเมื่อคุณถูกกดทับกับเชือก ให้ก้มตัวลงแล้วเหวี่ยงตะขอขวาเข้าหาตัวแล้วเหวี่ยงตะขอซ้ายไปที่หัว

ทันทีที่ฉันจำเคล็ดลับเพิ่มเติมได้ ฉันจะเขียนอย่างแน่นอน แม้ว่าคุณจะมีอะไรให้ฝึกฝนมากมายบนสังเวียนอยู่แล้วก็ตาม ตอนนี้คุณควรมีความเข้าใจที่ดีขึ้นเกี่ยวกับหมัดน็อกเอาต์ที่ดีที่สุดในการชกมวยแล้ว การฝึกฝนเทคนิคฮุกซ้ายจะทำให้คุณเป็นนักสู้ "สองมือ" และเป็นนักสู้ที่มีประสิทธิภาพมากขึ้น ฝึกฝนและรายงานผลลัพธ์ของคุณ

คุณต้องการที่จะเป็น Black Lord ของคอมพิวเตอร์ของคุณหรือไม่? คุณต้องการทราบความลับทั้งหมดของนักพัฒนามัลแวร์และแอนตี้ไวรัสหรือไม่? อ่านบทความ นั่งสมาธิ เข้าใจพื้นฐานของเซนแล้วอาจหยั่งรู้ลงมาสู่ตัวคุณ (ทุกท่าน ใจเย็นๆ ความรู้เรื่องเต๋าและการแทรกซึมของชัมบาลาอันเป็นผลมาจากการอ่านบทความนี้ บรรณาธิการไม่รับประกัน - หมายเหตุบรรณาธิการ) !

RTFM

ตะขอคืออะไร? นี่เป็นกลไกที่ช่วยให้คุณติดตามเหตุการณ์ในระบบปฏิบัติการได้ ได้รับการพัฒนาโดยทีมงานจาก Microsoft ด้วยความตั้งใจที่ดีที่สุด - เพื่อให้โปรแกรมเมอร์สามารถแก้ไขปัญหาได้อย่างมีประสิทธิภาพมากขึ้นโดยสร้างการควบคุมเหตุการณ์ของแป้นพิมพ์ เมาส์ และอื่นๆ อีกมากมาย มันถูกนำไปใช้โดยใช้ฟังก์ชันที่รู้จักกันดี: SetWindowsHook(Ex), UnhookWindowsHook(Ex) และ CallNextHook(Ex)

ฮุคใช้เพื่อสกัดกั้นเหตุการณ์บางอย่างก่อนที่จะถึงแอปพลิเคชัน ฟังก์ชันนี้สามารถตอบสนองต่อเหตุการณ์และในบางกรณีสามารถแก้ไขหรือยกเลิกได้ ฟังก์ชันที่รับการแจ้งเตือนเหตุการณ์เรียกว่า "ฟังก์ชันตัวกรอง" และจะแยกตามประเภทของเหตุการณ์ที่ดักฟัง ตัวอย่างคือฟังก์ชันตัวกรองเพื่อสกัดกั้นเหตุการณ์ของเมาส์หรือคีย์บอร์ดทั้งหมด เพื่อให้ Windows เรียกใช้ฟังก์ชันตัวกรองได้ จะต้องติดตั้งฟังก์ชันดังกล่าว ซึ่งก็คือ ต่อเข้ากับ hook (เช่น hook ของแป้นพิมพ์) การติดตั้งฟังก์ชันตัวกรองตั้งแต่หนึ่งรายการขึ้นไปเข้ากับตะขอเรียกว่าการติดตั้งตะขอ หากมีการแนบฟังก์ชันตัวกรองหลายรายการเข้ากับ hook เดียว Windows จะใช้คิวของฟังก์ชันต่างๆ โดยมีฟังก์ชันสุดท้ายติดอยู่ที่ส่วนหัวของคิวและฟังก์ชันแรกสุดอยู่ที่ส่วนท้าย

เมื่อเวลาผ่านไป แนวคิดอันสูงส่งของ hook เสียหาย เนื่องจากการกระทำของผู้เขียนไวรัสและนักพัฒนามัลแวร์ ไวรัสตัวแรกคือ ฉันจะพูดยังไงดี... ไร้เดียงสา ฉันคิดว่านะ เป็นไฟล์ exe แยกต่างหากที่เรียกใช้ฟังก์ชันระบบที่จำเป็นโดยตรง เมื่อเวลาผ่านไป โปรแกรมป้องกันไวรัสซึ่งปรากฏตัวช้ากว่าเล็กน้อยและจู่ๆ ก็กลายเป็นเชิงพาณิชย์ เรียนรู้อย่างรวดเร็วในการจับไวรัสด้วยลายเซ็นโดยการสแกนแบบง่ายๆ แรมหรือพื้นที่ดิสก์

และที่นี่ท่ามกลางการต่อสู้อันดุเดือดระหว่างผู้เขียนไวรัสและ "ผู้จับ" ของพวกเขา มีคำถามเดียวที่ยังคงอยู่ในวาระการประชุมและจะอยู่ในอนาคตอันใกล้นี้ - นี่คือคำถามของการอยู่รอดในระบบปฏิบัติการ นอกจากนี้ยังเกี่ยวข้องกับโปรแกรมป้องกันไวรัสด้วยเพราะสำหรับโปรแกรมเมอร์ระบบที่ดี นักเขียนไวรัส/ rootkits การลบกระบวนการป้องกันไวรัสออกจากระบบไม่ใช่เรื่องยากมาก

ดังนั้นเราจึงสามารถพูดได้อย่างปลอดภัยว่าหนึ่งในงานของโปรแกรมป้องกันไวรัสคือความสามารถในการรักษากระบวนการของคุณให้สมบูรณ์และปลอดภัยจากการกระทำที่เป็นอันตรายของไวรัส โดยทั่วไปแล้ว hooks ในปัจจุบันควรเข้าใจว่าเป็นการสร้างการควบคุมหลัก ฟังก์ชั่นระบบระบบปฏิบัติการซึ่งขึ้นอยู่กับความมีชีวิตของโปรแกรมใด ๆ - ตามกฎแล้วเรากำลังพูดถึงฟังก์ชันสำหรับการทำงานกับกระบวนการเธรดเครือข่ายและอินเทอร์เน็ต ฯลฯ

“แล้ว SetWindowsHook ล่ะ?” - คุณถามฉัน “ ศตวรรษที่ผ่านมา” ฉันจะตอบ มันไม่โคเชอร์อีกต่อไปที่จะใช้มัน

เรามีอะไร?

วิธีที่ง่ายที่สุดในการติดตั้ง hook บนระบบคือการสร้างสิ่งที่เรียกว่าฟังก์ชันพร็อกซี กล่าวอีกนัยหนึ่ง คุณต้องตัดสินใจว่าคุณกำลังดักฟังฟังก์ชันใดและค้นหาที่อยู่ของการโทร เมื่อต้องการทำเช่นนี้ ฟังก์ชันGetProcAddressมักจะใช้บางอย่างเช่นนี้: GetProcAddress(GetModuleHandle("ntdll.dll"), "CsrNewThread")

อย่างไรก็ตาม ผู้รู้แจ้งรู้ว่าเซิร์ฟเวอร์มักถูกดักฟังเกือบทุกครั้ง และเพื่อค้นหาที่อยู่ของฟังก์ชันที่พวกเขาใช้ในการแยกวิเคราะห์ตารางนำเข้าของไลบรารีเฉพาะ ซึ่งมักจะเป็น ntdll.dll, kernel32.dll (kernelbase.dll ใน Windows7) หรือ advapi32 .dll

int MyNewFunction(เป็นโมฆะ *param1,
int param2, บูล param3)
{
ส่งคืนฟังก์ชันดั้งเดิม (param1,
พารามิเตอร์2, พารามิเตอร์3);
}

หลังจากนี้ คุณควรเขียนที่อยู่ของการเรียก OriginalFunction ใหม่เป็นของคุณเอง - นั่นคือไปที่ MyNewFunction

ตอนนี้ หากมีใครต้องการเรียกใช้ OriginalFunction เพื่อดำเนินการ ฟังก์ชันพร็อกซีของคุณ MyNewFunction จะถูกเรียกก่อน ซึ่งจะถ่ายโอนการควบคุมไปยังที่อยู่เดิม นี่เป็นวิธีง่ายๆ ที่ตะขอ 8 ใน 10 ใช้งานได้ วิธีนี้สะดวกเพียงเพราะความเรียบง่าย แต่ในขณะเดียวกันก็เป็นข้อผิดพลาดร้ายแรงสำหรับผู้คลุม ยังไง? ลองคิดดูด้วยตัวคุณเอง - ความต้องการทั้งหมดของ aver คือการเปรียบเทียบที่อยู่ "ทางกฎหมาย" ก่อนหน้าของฟังก์ชันกับสิ่งที่เป็นจริง หากไม่ตรงกัน เราจะส่งเสียงเตือน ยังไงก็ตามคำถามต่อไปนี้เกิดขึ้น: เราจะหาที่อยู่ของฟังก์ชันดั้งเดิมได้ที่ไหน? ไม่จำเป็นต้องเดามากเกินไปที่นี่ - อ่านได้จาก ไฟล์ที่ต้องการบนดิสก์ วิธีการนี้ตั้งอยู่บนสมมติฐานที่ว่าไวรัสจะไม่แพตช์ตารางการส่งออกของไฟล์ที่อยู่ในดิสก์ โดยจำกัดตัวเองไว้ที่แพตช์หน่วยความจำเสมือน

เอาล่ะ เรามาต่อกันดีกว่า ดังที่ฉันได้กล่าวไปแล้ว การใช้ hook ในรูปแบบของฟังก์ชันพร็อกซี แม้ว่าจะเป็นวิธีที่สะดวก ประการแรกมีข้อบกพร่อง และประการที่สอง เหมาะสำหรับผู้เริ่มต้นเท่านั้น นั่นไม่ใช่สำหรับคุณ :) ตะขอประเภทที่พบบ่อยที่สุดคือการประกบ ฉันแน่ใจว่าคุณเคยได้ยินคำนี้มากกว่าหนึ่งครั้ง ในกรณีของเรา นี่คือรายการที่จุดเริ่มต้นของฟังก์ชันของลำดับห้าไบต์ ซึ่งเป็นคำสั่ง jmp ที่ที่อยู่ของตัวจัดการการสกัดกั้น ที่นี่ไบต์แรกคือ jmp opcode ส่วนสี่ไบต์ที่เหลือคือที่อยู่ของฟังก์ชันของคุณ

หากคุณต้องการเรียกใช้ฟังก์ชันที่ถูกสกัดกั้น ก่อนที่จะแทนที่คุณจะต้องบันทึกไบต์เริ่มต้นและกู้คืนก่อนที่จะเรียกใช้ ตำหนิ วิธีนี้เป็นดังนี้: หากหลังจากคืนค่าการเริ่มต้นฟังก์ชันแล้ว มีการสลับบริบทกับเธรดแอปพลิเคชันอื่น จะสามารถเรียกใช้ฟังก์ชันได้โดยไม่ต้องข้ามตัวดัก ข้อบกพร่องนี้สามารถกำจัดได้โดยการหยุดเธรดด้านแอปพลิเคชันทั้งหมดก่อนการโทร และเริ่มทำงานหลังจากการเรียก และแน่นอนว่าการประกบกัน เช่นเดียวกับฟังก์ชันพร็อกซี ก็ตรวจพบได้ง่ายด้วยการสแกนหน่วยความจำ เนื่องจากจะชัดเจนทันทีว่าการเรียกใช้ฟังก์ชันไปที่อื่น

โดยทั่วไป เมื่อมองไปข้างหน้า ฉันต้องแจ้งให้สาธารณชนทราบว่าวิธีการสกัดกั้นการเรียกใช้ฟังก์ชันเกือบทั้งหมดนั้นตรวจพบโดยการสแกนหน่วยความจำ ยกเว้นสองวิธี แต่อ่านรายละเอียดด้านล่าง

IAT, EAT และสัตว์ร้ายอื่นๆ

คำถามเกิดขึ้น: อะไรและที่สำคัญที่สุดคือคุณสามารถใส่ตะขอได้ที่ไหน? แน่นอนว่าสิ่งแรกที่นึกถึงคือการสกัดกั้นตารางที่อยู่การนำเข้า (IAT) เมื่อแอปพลิเคชันใช้ฟังก์ชันจากไลบรารี แอปพลิเคชันจะต้องนำเข้าที่อยู่ของฟังก์ชัน DLL แต่ละตัวที่ใช้โดยแอปพลิเคชันมีการอธิบายไว้ในโครงสร้างที่เรียกว่า IMAGE_IMPORT_DESCRIPTOR โครงสร้างนี้ประกอบด้วยชื่อของ DLL ที่แอปพลิเคชันนำเข้าฟังก์ชันและตัวชี้สองตัวไปยังอาร์เรย์สองตัวของโครงสร้าง IMAGE_IMPORT_BY_NAME โครงสร้าง IMAGE_IMPORT_BY_NAME ประกอบด้วยชื่อของฟังก์ชันที่นำเข้าซึ่งใช้โดยแอปพลิเคชัน

เมื่อไร ระบบปฏิบัติการโหลดแอปพลิเคชันลงในหน่วยความจำ อ่านโครงสร้าง IMAGE_IMPORT_DESCRIPTOR และโหลด DLL ที่จำเป็นแต่ละรายการลงในหน่วยความจำแอปพลิเคชัน
เมื่อแมป DLL แล้ว ระบบปฏิบัติการจะวางแต่ละฟังก์ชันที่นำเข้าไว้ในหน่วยความจำ และเขียนทับอาร์เรย์ IMAGE_IMPORT_BY_NAME ตัวใดตัวหนึ่งด้วยที่อยู่การดำเนินการของฟังก์ชัน

เมื่อฟังก์ชัน hook ปรากฏในพื้นที่ที่อยู่ของแอปพลิเคชัน ไวรัสของคุณจะสามารถอ่านรูปแบบ PE ของแอปพลิเคชันเป้าหมายในหน่วยความจำ และแทนที่ที่อยู่เป้าหมายของฟังก์ชันใน IAT ด้วยที่อยู่ของฟังก์ชัน hook จากนั้นเมื่อมีการเรียกใช้ฟังก์ชันดักฟัง ฟังก์ชัน hook ของคุณจะถูกดำเนินการแทนฟังก์ชันดั้งเดิม ตัวเลือกที่หายากกว่าเล็กน้อยซึ่งพบได้ในธรรมชาติ นำไปใช้ตามหลักการ "ถ้าภูเขาไม่มาที่ Magomed ... " - สกัดกั้นตารางที่อยู่การส่งออก (EAT) เมื่อในทางกลับกัน ตารางส่งออก Dll ได้รับการแก้ไข ซึ่งส่งออกฟังก์ชันเป้าหมาย

STELTH Hooks: จับฉันให้ได้ถ้าคุณทำได้

ตามที่ฉันเขียนไว้ข้างต้น ข้อเสียเปรียบหลักของวิธีการสกัดกั้นข้างต้นคือการบังคับแก้ไขหน่วยความจำ ซึ่งนำไปสู่การตรวจจับโดยผู้ตรวจสอบอย่างหลีกเลี่ยงไม่ได้ มีทางออกไหม? น่าแปลกที่ก็มี แม้แต่สองคน ขั้นแรกคือการลงทะเบียนตัวจัดการข้อยกเว้นของคุณ จากนั้นให้เข้าควบคุม ซึ่งสามารถทำได้ เช่น ด้วยการล้างหน่วยความจำบางส่วน วิธีที่สองคือปรับเปลี่ยนเล็กน้อยก่อน นั่นคือคุณเหมือนเมื่อก่อนลงทะเบียนตัวจัดการข้อยกเว้น แต่เพื่อสร้างสิ่งเหล่านั้นคุณใช้เทคนิคที่รู้จักในหมู่ผู้ดีบักเกอร์ ดังที่คุณทราบ การลงทะเบียนการแก้ไขข้อบกพร่องของโปรเซสเซอร์นั้นใช้สำหรับการดีบักแอปพลิเคชัน และโดยปกติจะสามารถเข้าถึงได้จาก kernelmod อย่างไรก็ตาม สามารถติดตั้งจากแอปพลิเคชันโหมดผู้ใช้ได้โดยใช้ฟังก์ชัน GetThreadContext/SetThreadContext การลงทะเบียนการแก้ไขจุดบกพร่องใช้เพื่อตั้งค่าเบรกพอยต์ในการเข้าถึงหน่วยความจำหรือการดำเนินการ

มีการลงทะเบียนทั้งหมดแปดรายการโดยมีวัตถุประสงค์ดังนี้:

  • DR0 - DR3 - แต่ละรีจิสเตอร์เหล่านี้มีที่อยู่เชิงเส้นของจุดควบคุมหนึ่งในสี่จุด หากเปิดใช้งานการสลับหน้า ค่าจะถูกแปลเป็นที่อยู่จริงโดยใช้อัลกอริทึมทั่วไป
  • DR4 - DR5 - รีจิสเตอร์ถูกสงวนไว้และไม่ได้ใช้ในโปรเซสเซอร์ i486
  • DR6 - การลงทะเบียนสถานะการแก้ปัญหา รายงานเงื่อนไขที่พบเมื่อมีการส่งข้อยกเว้นการดีบัก (หมายเลข 1) บิตการลงทะเบียนถูกตั้งค่าโดยฮาร์ดแวร์และถูกล้างโดยซอฟต์แวร์
  • DR7 - รีจิสเตอร์ระบุประเภทของการเข้าถึงหน่วยความจำที่เกี่ยวข้องกับแต่ละจุดตรวจ

ดังนั้นสิ่งที่คุณต้องทำคือตั้งค่าเบรกพอยต์ฮาร์ดแวร์ (aka int 1) ที่จุดเริ่มต้นของฟังก์ชันเพื่อให้โปรเซสเซอร์สร้างสิ่งที่เรียกว่า "ข้อยกเว้นขั้นตอนเดียว" จากนั้นโดยการติดตั้งตัวจัดการข้อยกเว้น: AddVectoredExceptionHandler (0, (PVECTORED_EXCEPTION_HANDLER)DebugHookHandler) สกัดกั้น EXCEPTION_SINGLE_STEP เดียวกันนี้

เมื่อถูกสร้างขึ้นแล้ว ตัวจัดการของคุณจะได้รับการควบคุมฟังก์ชันที่ต้องการ ข้อได้เปรียบที่ไม่อาจปฏิเสธได้ของวิธีนี้ก็คือการสแกนหน่วยความจำตรวจไม่พบอย่างแน่นอน เนื่องจากไม่มีการแก้ไขหน่วยความจำที่นี่

int SetDebugBreak (ที่อยู่ FARPROC)
{
สถานะ int = -1;
จัดการ thSnap = CreateToolhelp32Snapshot(
TH32CS_SNAPTHREAD, โมฆะ);
เกลียว 32 te;
te.dwSize = ขนาดของ (THREADENTRY32);
Thread32First(thSnap, &te);
ทำ
{
ถ้า(te.th32OwnerProcessID != GetCurrentProcessId())
ดำเนินการต่อ;
จัดการ hThread = OpenThread(
THREAD_ALL_ACCESS, FALSE, te.th32ThreadID);
บริบท ctx;

GetThreadContext(hThread, &ctx);
ถ้า(!ctx.ดร.0)
{
ctx.Dr0 = MakePtr (ULONG, ที่อยู่, 0);
ctx.Dr7 |= 0x00000001;
สถานะ = 0;
}
อย่างอื่นถ้า(!ctx.Dr1)
{
ctx.Dr1 = MakePtr (ULONG, ที่อยู่, 0);
ctx.Dr7 |= 0x00000004;
สถานะ = 1;
}
อย่างอื่นถ้า(!ctx.Dr2)
{
ctx.Dr2 = MakePtr (ULONG, ที่อยู่, 0);
ctx.Dr7 |= 0x00000010;
สถานะ = 2;
}
อย่างอื่นถ้า(!ctx.Dr3)
{
ctx.Dr3 = MakePtr (ULONG, ที่อยู่, 0);
ctx.Dr7 |= 0x00000040;
สถานะ = 3;
}
อื่น
สถานะ = -1;
ctx.ContextFlags = CONTEXT_DEBUG_REGISTERS;
SetThreadContext(hThread, &ctx);
CloseHandle(hThread);
}
ในขณะที่(Thread32Next(thSnap, &te));
สถานะการคืน;
}

บทสรุป

อย่างที่คุณเห็น แม้ในสถานการณ์ที่ยากลำบากที่สุด คุณก็สามารถหาโอกาสในการรันโค้ดของคุณได้ ฉันมั่นใจว่าโค้ดของคุณมีจุดมุ่งหมายเพื่อแก้ไขปัญหาการปกป้องระบบของคุณเท่านั้น ขอให้โชคดีและมีความสุขในการรวบรวม!

ลิงค์

http://vx.netlux.org - พิพิธภัณฑ์ไวรัส เอ็นจิ้นไวรัส และเรื่องไร้สาระที่น่าสนใจอื่น ๆ ต้องไปเยี่ยมชมในคำ