เชื่อมต่อแพลตฟอร์มการกรองสำหรับกิจกรรมมากมาย Windows Firewall พร้อมความปลอดภัยขั้นสูง - วินิจฉัยและแก้ไขปัญหา รหัสของฟังก์ชันจำแนกประเภทของเรา

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

มีสองวิธีในการลบแอปพลิเคชันบนสมาร์ทโฟน Lenovo: ผ่านเมนู "แอปพลิเคชัน" และจากเดสก์ท็อปโดยตรง ทั้งสองวิธีนี้นำไปสู่ผลลัพธ์เดียวกัน - แอปพลิเคชันจะถูกลบออกจากโทรศัพท์อย่างถาวร

การถอนการติดตั้งแอปพลิเคชันผ่านเมนู

  1. เปิดเมนู "การตั้งค่า" -> “แอพพลิเคชั่น”.
  2. ไปที่แท็บ "บุคคลที่สาม"และค้นหาแอปพลิเคชันที่ต้องการ
  3. คลิกที่ไอคอนกราฟิกของแอปพลิเคชันที่จะลบ และคลิก “ลบ” ในเมนูด้านบน ยืนยันการลบโดยคลิก "ตกลง".
*เฉพาะแอปพลิเคชันของบริษัทอื่นเท่านั้นที่สามารถถอนการติดตั้งได้ คุณไม่สามารถลบแอปพลิเคชันและโปรแกรมของระบบ (ที่ติดตั้งไว้ล่วงหน้า) ได้

ถอนการติดตั้งแอพโดยตรงบนเดสก์ท็อปของคุณ

  1. ปลดล็อกหน้าจอและไปที่เดสก์ท็อปซึ่งมีไอคอนของแอปพลิเคชันที่จะลบอยู่
  2. คลิกที่มันค้างไว้แล้วย้ายไปที่ไอคอนถังขยะจนกระทั่งไอคอนเปลี่ยนเป็นสีแดง
  3. ปล่อยและยืนยันขั้นตอนการลบโดยกด "ตกลง".
*โปรดจำไว้ว่าเนื่องจากลักษณะเฉพาะของเชลล์ที่เป็นกรรมสิทธิ์ในสมาร์ทโฟน Lenovo แอปพลิเคชันทั้งหมดที่ถูกลบโดยใช้วิธีการข้างต้นจะถูกลบออกจากหน่วยความจำของสมาร์ทโฟนตลอดไป นั่นคือไม่เพียง แต่ไอคอนจะถูกลบเช่นเดียวกับในโทรศัพท์จาก บริษัท อื่น แต่รวมถึงแอปพลิเคชันทั้งหมดด้วย สามารถกู้คืนได้โดยการติดตั้งอีกครั้งเท่านั้น

ปัจจุบัน Lenovo อยู่ในอันดับที่สี่ในบรรดาผู้ผลิตพีซีห้าอันดับแรกของโลก คลังแสงของบริษัทประกอบด้วยเดสก์ท็อปพีซี แล็ปท็อป โทรศัพท์มือถือ สมาร์ทโฟน เน็ตบุ๊ก และแม้แต่เซิร์ฟเวอร์ จอภาพ แท็บเล็ต และการ์ดวิดีโอ และแม้จะมีการเพิ่มเติมสิ่งที่กล่าวมาทั้งหมด เช่น เมาส์ คีย์บอร์ด โมดูลหน่วยความจำ ออปติคัลไดรฟ์ อุปกรณ์จ่ายไฟ ซอฟต์แวร์และอุปกรณ์เสริม รวมถึงเคสและกระเป๋าสำหรับแล็ปท็อป ความกว้างของกลุ่มผลิตภัณฑ์ของบริษัทนั้นน่าประทับใจ และการเติมเต็มตลาดผู้บริโภคด้วยอุปกรณ์อิเล็กทรอนิกส์ของ Lenovo ต้องการการสนับสนุนอย่างจริงจัง ศูนย์บริการเฉพาะทางของ Lenovo ดำเนินการนี้ในหลายเมืองโดยเฉพาะในใจกลางเมืองใหญ่ของประเทศ

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

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

1. มีเพียงผู้เชี่ยวชาญเท่านั้นที่สามารถรับประกันคุณภาพของงานที่ทำ พร้อมการวินิจฉัยและระบุสาเหตุที่แท้จริงของปัญหาอย่างครบถ้วน

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

3. ศูนย์บริการ Lenovo ให้บริการบำรุงรักษาอุปกรณ์ทั้งหมดของบริษัท เนื่องจากมีผู้เชี่ยวชาญคัดเลือกและฝึกอบรมโดยตรงกับบริการ Lenovo

4. หลังจากซื้ออุปกรณ์ Lenovo อย่างใดอย่างหนึ่งผู้ซื้อจะซื้อบัตรรับประกันหรือเช็คซึ่งคุณสามารถรับบริการฟรีได้ บริการนี้มีให้เฉพาะที่ศูนย์บริการ Lenovo เท่านั้น สิทธิ์นี้จะหายไปหากมีการเปิดอุปกรณ์ต่อหน้าผู้เชี่ยวชาญด้านบริการ

5. การบำรุงรักษาผลิตภัณฑ์ของผู้ผลิต Lenovo สามารถเกิดขึ้นในบริการใดๆ หลังจากสิ้นสุดระยะเวลาการรับประกัน

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

ที่ศูนย์บริการ Lenovo คุณจะได้รับบริการซ่อมที่หลากหลายและระบุสาเหตุของการเสีย:

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

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

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

กล้องจุลทรรศน์ดิจิตอลแบบพิเศษที่ให้การวินิจฉัยที่แม่นยำ
สถานีบัดกรีคลาส BGA;

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

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

เริ่มต้นด้วย Server 2008 และ Vista กลไก WFP ถูกสร้างขึ้นใน Windows
ซึ่งเป็นชุดของ API และบริการของระบบ ด้วยความช่วยเหลือมันจึงเป็นไปได้
ปฏิเสธและอนุญาตการเชื่อมต่อ จัดการแต่ละแพ็กเก็ต เหล่านี้
นวัตกรรมมีจุดมุ่งหมายเพื่อทำให้ชีวิตของนักพัฒนาต่างๆง่ายขึ้น
การป้องกัน การเปลี่ยนแปลงสถาปัตยกรรมเครือข่ายส่งผลต่อทั้งโหมดเคอร์เนลและ
และส่วนโหมดผู้ใช้ของระบบ ในกรณีแรก ฟังก์ชันที่จำเป็นจะถูกส่งออก
fwpkclnt.sys ในวินาที - fwpuclnt.dll (ตัวอักษร "k" และ "u" ในชื่อไลบรารี
ย่อมาจากเคอร์เนลและผู้ใช้ตามลำดับ) ในบทความนี้เราจะพูดถึงแอปพลิเคชัน
WFP สำหรับการสกัดกั้นและกรองการรับส่งข้อมูล และหลังจากทำความคุ้นเคยกับพื้นฐานแล้ว
เมื่อใช้คำจำกัดความและความสามารถของ WFP เราจะเขียนตัวกรองแบบง่ายของเราเอง

แนวคิดพื้นฐาน

ก่อนที่เราจะเริ่มเขียนโค้ด จำเป็นอย่างยิ่งที่เราจะต้องทำความคุ้นเคยกับคำศัพท์เหล่านี้ก่อน
Microsoft - และวรรณกรรมเพิ่มเติมจะเป็นประโยชน์ในการทำความเข้าใจบทความ
จะได้อ่านง่ายขึ้น :) ไปกันเลย

การจำแนกประเภท- กระบวนการกำหนดว่าจะทำอย่างไรกับแพ็คเกจ
การดำเนินการที่เป็นไปได้: อนุญาต บล็อก หรือไฮไลต์

คำบรรยายภาพคือชุดฟังก์ชันในไดรเวอร์ที่ทำการตรวจสอบ
แพคเกจ พวกเขามีฟังก์ชั่นพิเศษที่ทำการจำแนกแพ็คเก็ต นี้
ฟังก์ชันสามารถตัดสินใจได้ดังต่อไปนี้:

  • อนุญาต (FWP_ACTION_PERMIT);
  • บล็อก (FWP_ACTION_BLOCK);
  • ดำเนินการประมวลผลต่อไป
  • ขอข้อมูลเพิ่มเติม
  • ยุติการเชื่อมต่อ

ตัวกรอง- กฎที่ระบุในกรณีที่เรียกว่า
ข้อความนี้หรือข้อความเสริมนั้น ไดรเวอร์หนึ่งตัวสามารถมีคำบรรยายได้หลายรายการ และ
เราจะพัฒนาไดรเวอร์พร้อมคำบรรยายในบทความนี้ ยังไงก็ตาม โคลอสตัส
นอกจากนี้ยังมีตัวเลือกในตัวเช่น NAT-callout

ชั้น- นี่เป็นสัญญาณว่ามีการรวมตัวกรองต่างๆ เข้าด้วยกัน (หรือ
อย่างที่พวกเขาพูดใน MSDN ว่า "คอนเทนเนอร์")

เพื่อบอกความจริง เอกสารจาก Microsoft ยังดูไม่ชัดเจนจนถึงตอนนี้
คุณไม่สามารถดูตัวอย่างใน WDK ได้ ดังนั้นหากคุณตัดสินใจพัฒนาอะไรบางอย่างกะทันหัน
จริงจัง คุณต้องทำความคุ้นเคยกับพวกเขาอย่างแน่นอน ตอนนี้ก็ราบรื่นแล้ว
เรามาฝึกกันต่อ เพื่อการรวบรวมและการทดสอบที่ประสบความสำเร็จ คุณจะต้องมี WDK (Windows
ชุดไดรเวอร์), VmWare, เครื่องเสมือนที่ติดตั้ง Vista และดีบักเกอร์ WinDbg
สำหรับ WDK ฉันติดตั้งเวอร์ชัน 7600.16385.0 เป็นการส่วนตัวแล้ว - ทุกอย่างอยู่ที่นั่น
libs ที่จำเป็น (เนื่องจากเราจะพัฒนาไดรเวอร์เราจึงต้องการเพียง
fwpkclnt.lib และ ntoskrnl.lib) และตัวอย่างการใช้ WFP ลิงค์ไปทั้งหมด
มีการนำเสนอเครื่องมือมาแล้วหลายครั้ง ดังนั้นเราจะไม่ทำซ้ำ

การเข้ารหัส

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

  1. FWPMENGINEเปิด0เปิดเซสชัน
  2. FWPMธุรกรรมเริ่มต้น0- เริ่มดำเนินการกับ WFP
  3. FWPSCALLOUTREGISTER0- การสร้างคำบรรยายภาพใหม่
  4. FWPMCALLOUTADD0- การเพิ่มออบเจ็กต์คำบรรยายภาพให้กับระบบ
  5. FWPMFILTERAD0- เพิ่มตัวกรองใหม่
  6. FWPMธุรกรรมCOMMIT0- บันทึกการเปลี่ยนแปลง (เพิ่ม
    ตัวกรอง)

โปรดทราบว่าฟังก์ชันต่างๆ จะลงท้ายด้วย 0 ใน Windows 7 ฟังก์ชันเหล่านี้บางส่วน
ฟังก์ชั่นมีการเปลี่ยนแปลง เช่น FwpsCalloutRegister1 ปรากฏขึ้น (ด้วย
บันทึกโดย FwpsCalloutRegister0) พวกเขาต่างกันในการโต้แย้งและด้วยเหตุนี้
ต้นแบบของการจำแนกฟังก์ชัน แต่สำหรับเราสิ่งนี้ไม่สำคัญในตอนนี้ - ฟังก์ชัน 0
สากล.

FwpmEngineOpen0 และ FwpmTransactionBegin0 ไม่น่าสนใจสำหรับเรามากนัก - สิ่งเหล่านี้คือ
ขั้นตอนการเตรียมการ ความสนุกเริ่มต้นด้วยฟังก์ชั่น
FwpsCalloutลงทะเบียน0:

ต้นแบบ FwpsCalloutRegister0

NTSTATUS NTAPI FwpsCalloutRegister0
__inout เป็นโมฆะ *deviceObject,
__ใน const FWPS_CALLOUT0 *คำบรรยายภาพ
__out_opt UINT32 *รหัสหมายเลขประจำตัว
);

ฉันบอกไปแล้วว่าคำบรรยายภาพเป็นชุดของฟังก์ชัน ถึงเวลาแล้ว
บอกเราเพิ่มเติมเกี่ยวกับเรื่องนี้ โครงสร้าง FWPS_CALLOUT0 ประกอบด้วยตัวชี้ถึงสาม
ฟังก์ชั่น - การจัดประเภท (classifyFn) และการแจ้งเตือนสองรายการ (ประมาณ
การเพิ่ม/การลบตัวกรอง (notifyFn) และการปิดโฟลว์ที่ประมวลผล (flowDeleteFn))
สองฟังก์ชันแรกเป็นฟังก์ชันบังคับ ส่วนฟังก์ชันสุดท้ายจำเป็นต่อเมื่อเท่านั้น
คุณต้องการตรวจสอบแพ็กเก็ตด้วยตนเอง ไม่ใช่แค่การเชื่อมต่อ อยู่ในโครงสร้างด้วย
มีตัวระบุที่ไม่ซ้ำกัน GUID คำบรรยายภาพ (calloutKey)

รหัสลงทะเบียนคำบรรยายภาพ

FWPS_CALLOUT s Callout = (0);
sCallout.calloutKey = *calloutKey;
sCallout.classifyFn = BlClassify;
// ฟังก์ชั่นการจัดหมวดหมู่
sCallout.notifyFn = (FWPS_CALLOUT_NOTIFY_FN0)Blแจ้งเตือน;
// ฟังก์ชั่นแจ้งเตือนการเพิ่ม/ลบตัวกรอง
// สร้างคำบรรยายภาพใหม่
สถานะ = FwpsCalloutRegister(deviceObject, &sCallout, calloutId);

DWORD WINAPI FwpmCalloutAdd0 (
__ใน HANDLE แฮนเดิลเครื่องยนต์
__ใน const FWPM_CALLOUT0 *คำบรรยายภาพ
__in_opt PSECURITY_DESCRIPTOR SD,
__out_opt UINT32 *รหัส
);
typedef โครงสร้าง FWPM_CALLOUT0_ (
GUID คีย์คำบรรยาย;
FWPM_DISPLAY_DATA0 แสดงข้อมูล; // คำอธิบายคำบรรยายภาพ
ธง UINT32;
GUID *ผู้ให้บริการคีย์;
ข้อมูลผู้ให้บริการ FWP_BYTE_BLOB;
GUID ที่ใช้งานได้เลเยอร์;
รหัสคำบรรยายภาพ UINT32;
) FWPM_CALLOUT0;

ในโครงสร้าง FWPM_CALLOUT0 เราสนใจฟิลด์ AppliedLayer - เฉพาะ
รหัสของระดับที่มีการเพิ่มคำบรรยายภาพ ในกรณีของเรามันเป็น
FWPM_LAYER_ALE_AUTH_CONNECT_V4. "v4" ในชื่อตัวระบุหมายถึงเวอร์ชัน
โปรโตคอล Ipv4 นอกจากนี้ยังมี FWPM_LAYER_ALE_AUTH_CONNECT_V6 สำหรับ Ipv6 กำลังพิจารณา
ความชุกของ IPv6 ต่ำในขณะนี้ เราจะใช้ได้เฉพาะกับเท่านั้น
IPv4 CONNECT ในชื่อหมายความว่าเราควบคุมการติดตั้งเท่านั้น
การเชื่อมต่อไม่มีการพูดถึงแพ็กเก็ตขาเข้าหรือขาออกไปยังที่อยู่นี้! เลย
มีหลายระดับนอกเหนือจากที่เราใช้ - มีการประกาศไว้ในไฟล์ส่วนหัว
fwpmk.h จาก WDK

การเพิ่มออบเจ็กต์คำบรรยายภาพให้กับระบบ

// ชื่อคำบรรยายภาพ
displayData.name = L "คำอธิบายภาพ Blocker";
displayData.description = L"คำอธิบายภาพ Blocker";
mCallout.calloutKey = *calloutKey;
mCallout.displayData = ข้อมูลการแสดงผล;
// คำอธิบายคำบรรยายภาพ
//FWPM_LAYER_ALE_AUTH_CONNECT_V4
mCallout.applicableLayer = *layerKey;
สถานะ = FwpmCalloutAdd(gEngineHandle, &mCallout, NULL, NULL);

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

FWPM_FILTER0 มีโครงสร้าง FWPM_FILTER_CONDITION0 หนึ่งโครงสร้างขึ้นไป (
หมายเลขจะถูกกำหนดโดยฟิลด์ numFilterConditions) ฟิลด์ layerKey เต็มไปด้วย GUID
เลเยอร์ที่เราต้องการเข้าร่วม ในกรณีนี้เราระบุ
FWPM_LAYER_ALE_AUTH_CONNECT_V4.

ตอนนี้เรามาดูการเติม FWPM_FILTER_CONDITION0 กันดีกว่า ประการแรกใน
fieldKey จะต้องระบุอย่างชัดเจนถึงสิ่งที่เราต้องการควบคุม - พอร์ต, ที่อยู่,
แอพหรืออย่างอื่น ในกรณีนี้ WPM_CONDITION_IP_REMOTE_ADDRESS
บ่งชี้ให้ระบบทราบว่าเราสนใจที่อยู่ IP ค่า fieldKey เป็นตัวกำหนดว่า
ค่าประเภทใดที่จะรวมอยู่ในโครงสร้าง FWP_CONDITION_VALUE
FWPM_FILTER_CONDITION0. ในกรณีนี้จะมีที่อยู่ ipv4 ไปกันเลย
ไกลออกไป. ช่อง matchType จะกำหนดวิธีการเปรียบเทียบ
ค่าใน FWP_CONDITION_VALUE กับสิ่งที่มาผ่านเครือข่าย มีตัวเลือกมากมายที่นี่:
คุณสามารถระบุ FWP_MATCH_EQUAL ซึ่งจะหมายถึงการปฏิบัติตามเงื่อนไขโดยสมบูรณ์ และ
คุณสามารถ - FWP_MATCH_NOT_EQUAL นั่นคือในความเป็นจริงเราสามารถเพิ่มสิ่งนี้ได้
จึงไม่รวมการกรอง (ที่อยู่ การเชื่อมต่อที่ไม่ได้รับการตรวจสอบ)
นอกจากนี้ยังมีตัวเลือก FWP_MATCH_GREATER, FWP_MATCH_LESS และอื่นๆ (ดูแจงนับ
FWP_MATCH_TYPE) ในกรณีนี้ เรามี FWP_MATCH_EQUAL

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

การเพิ่มตัวกรองให้กับระบบ

filter.flags = FWPM_FILTER_FLAG_NONE;
filter.layerKey = *เลเยอร์คีย์;
filter.displayData.name = L"คำอธิบายภาพ Blocker";
filter.displayData.description = L"คำบรรยายภาพแบบบล็อคเกอร์";
filter.action.type = FWP_ACTION_CALLOUT_UNKNOWN;
filter.action.calloutKey = *calloutKey;
filter.filterCondition = เงื่อนไขตัวกรอง;
// เงื่อนไขตัวกรองหนึ่งรายการ
filter.numFilterConditions = 1;
//filter.subLayerKey = FWPM_SUBLAYER_UNIVERSAL;
filter.weight.type = FWP_EMPTY; // น้ำหนักอัตโนมัติ
// เพิ่มตัวกรองไปยังที่อยู่ระยะไกล
filterConditions.fieldKey = FWPM_CONDITION_IP_REMOTE_ADDRESS;
filterConditions.matchType = FWP_MATCH_EQUAL;
filterConditions.conditionValue.type = FWP_UINT32;
filterConditions.conditionValue.uint32 = ntohl (BLOCKED_IP_ADDRESS);
// เพิ่มตัวกรอง
สถานะ = FwpmFilterAdd(gEngineHandle, &ตัวกรอง, NULL, NULL);

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

อย่างไรก็ตาม กลับไปที่ตัวกรองกันดีกว่า ฟังก์ชันการจำแนกประเภทในกรณีของเราก็คือ
บล็อกการเชื่อมต่อกับที่อยู่ที่ระบุ (BLOCKED_IP_ADDRESS) กลับมา
FWP_ACTION_BLOCK:

รหัสของฟังก์ชันจำแนกประเภทของเรา

ถือเป็นโมฆะ BlClassify(
const FWPS_INCOMING_VALUES* ในค่าคงที่
const FWPS_INCOMING_METADATA_VALUES* ใน MetaValues
แพ็คเก็ต VOID*, ในตัวกรอง const FWPS_FILTER*,
UINT64 flowContext, FWPS_CLASSIFY_OUT* แยกประเภทออก)
{
// กรอกโครงสร้าง FWPS_CLASSIFY_OUT0
if(classifyOut)( // บล็อกแพ็กเก็ต
classifyOut->ประเภทการกระทำ =
FWP_ACTION_BLOCK;
// เมื่อบล็อกแพ็คเกจที่คุณต้องการ
รีเซ็ต FWPS_RIGHT_ACTION_WRITE
classifyOut->สิทธิ&=~FWPS_RIGHT_ACTION_WRITE;
}
}

ในทางปฏิบัติ ฟังก์ชันการจำแนกประเภทอาจตั้งค่า FWP_ACTION_PERMIT ด้วยเช่นกัน
FWP_ACTION_CONTINUE ฯลฯ

และสุดท้ายเมื่อทำการขนถ่ายไดรเวอร์คุณจะต้องลบการติดตั้งทั้งหมดออก
คำบรรยายภาพ (เดาว่าจะเกิดอะไรขึ้นหากระบบพยายามโทรหาคำบรรยายภาพ
ไดรเวอร์ที่ไม่ได้โหลด? ถูกต้อง BSOD) มีฟังก์ชั่นสำหรับสิ่งนี้
FwpsCalloutUnregisterById. เป็นพารามิเตอร์ที่ถูกส่งผ่านแบบ 32 บิต
ตัวระบุคำบรรยายภาพที่ส่งคืนโดยฟังก์ชัน FwpsCalloutRegister

กำลังยุติคำบรรยายภาพ

NTSTATUS BlUninitialize())(
NTSTATUS ns;
ถ้า(gEngineHandle)(
FwpmEngineClose(gEngineHandle);

}
ถ้า(gBlCalloutIdV4)(
ns = FwpsCalloutUnregisterById(gBlCalloutIdV4);
}
กลับ ns;
}

อย่างที่คุณเห็น การเขียนโปรแกรมตัวกรอง WFP ไม่ใช่เรื่องยากตั้งแต่นั้นมา
MS ให้ API ที่สะดวกสบายแก่เรา ในกรณีของเราเราติดตั้งแล้ว
กรองในไดรเวอร์ แต่สามารถทำได้จาก usermod! เช่น ตัวอย่างจาก wdk
msnmntr (ตัวตรวจสอบปริมาณการใช้ MSN Messenger) ทำเช่นนั้น - สิ่งนี้ช่วยให้คุณไม่ทำเช่นนั้น
โอเวอร์โหลดส่วนโหมดเคอร์เนลของตัวกรอง

GUID ของคุณ

หากต้องการลงทะเบียนข้อความเสริม จำเป็นต้องมีตัวระบุที่ไม่ซ้ำกัน เพื่อ
รับ GUID ของคุณ (ตัวระบุที่ไม่ซ้ำทั่วโลก) ใช้ guidgen.exe รวมอยู่ด้วย
ในวิชวลสตูดิโอ เครื่องมือนี้อยู่ใน (VS_Path)\Common7\Tools ความน่าจะเป็นของการชนกัน
มีขนาดเล็กมากเนื่องจากความยาวของ GUID คือ 128 บิต และมีทั้งหมด 2^128 บิต
ตัวระบุ

การดีบักตัวกรอง

หากต้องการตรวจแก้จุดบกพร่องฟืน จะสะดวกในการใช้ชุด Windbg+VmWare สำหรับสิ่งนี้คุณต้องการ
กำหนดค่าทั้งระบบเกสต์ (ซึ่งก็คือ Vista) และดีบักเกอร์
WinDbg. หากใน WinXP คุณต้องแก้ไข boot.ini สำหรับการดีบักแบบระยะไกล
สำหรับ Vista+ จะมีคอนโซลยูทิลิตี้ชื่อ bcdedit ตามปกติ คุณจะต้องเปิดใช้งานการแก้ไขข้อบกพร่อง:

BCDedit /dbgsettings SERIAL DEBUGPORT:1 BAUDRATE:115200 BCDedit /debug
เปิด (หรือ BCDedit /set debug ON)

ตอนนี้ทุกอย่างพร้อมแล้ว! เราเปิดไฟล์แบตช์พร้อมข้อความด้านล่าง:

เริ่ม windbg -b -k com:pipe,port=\\.\pipe\com_1,resets=0

และดูผลลัพธ์การดีบักในหน้าต่าง windbg (ดูรูป)

บทสรุป

อย่างที่คุณเห็น ขอบเขตของ WFP ค่อนข้างกว้าง ขึ้นอยู่กับคุณที่จะตัดสินใจว่าอย่างไร
ใช้ความรู้นี้ - เพื่อความชั่วหรือความดี :)

ไฟร์วอลล์ Windows (ไฟร์วอลล์หรือไฟร์วอลล์) ไม่ได้สร้างแรงบันดาลใจให้เกิดความเคารพ เปลี่ยนจาก XP เป็น Vista เล็กน้อย มันทำงานได้ดี แต่ก็ขาดความทะเยอทะยานที่จะเป็นไฟร์วอลล์ส่วนบุคคลที่ดีที่สุด อย่างไรก็ตาม แม้ว่าไฟร์วอลล์ Windows 7 จะได้รับคุณสมบัติใหม่หลายประการ แต่ก็ยังไม่ได้รับสิ่งที่ฉันคาดหวังที่จะเห็น

ออกไปเที่ยวกับโฮมกรุ๊ป

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

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

ในเครือข่ายในบ้าน ผู้ใช้สามารถแบ่งปันเนื้อหาของเขาไปยังคอมพิวเตอร์และอุปกรณ์อื่นๆ และแม้กระทั่งกับคอมพิวเตอร์ที่ไม่ได้ใช้ Windows 7 และแม้กระทั่งกับคอมพิวเตอร์ที่ไม่ใช่คอมพิวเตอร์เลย โดยเฉพาะอย่างยิ่ง Microsoft ได้แสดงตัวอย่างวิธีที่คุณสามารถแบ่งปันเนื้อหาบน Xbox 360 ได้ อย่างไรก็ตาม บริษัท ไม่ได้เสนอให้เชื่อมต่อ Wii กับเครือข่าย อนิจจา บริษัทไม่มีคุณสมบัติให้ Wii เป็นอุปกรณ์สื่อสตรีมมิ่ง

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

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

ไฟร์วอลล์โหมดคู่

ใน Vista และ XP การจัดการไฟร์วอลล์ทำได้ง่ายเพียงแค่เปิดและปิดไฟร์วอลล์ ในเวลาเดียวกัน Windows 7 ให้การตั้งค่าต่างๆแก่ผู้ใช้สำหรับเครือข่ายส่วนตัว (ที่บ้านและที่ทำงาน) และสาธารณะ ในเวลาเดียวกันผู้ใช้ไม่จำเป็นต้องเข้าสู่การตั้งค่าไฟร์วอลล์เพื่อที่จะทำงานในร้านกาแฟท้องถิ่น สิ่งที่เขาต้องทำคือเลือกเครือข่ายสาธารณะ และไฟร์วอลล์เองก็จะใช้พารามิเตอร์จำกัดทั้งชุด เป็นไปได้มากว่าผู้ใช้จะกำหนดค่าเครือข่ายสาธารณะเพื่อบล็อกการเชื่อมต่อขาเข้าทั้งหมด ใน Vista สิ่งนี้ไม่สามารถทำได้หากไม่ตัดการรับส่งข้อมูลขาเข้าทั้งหมดบนเครือข่ายของผู้ใช้เอง

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

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

เป็นเวลาสิบปีแล้วที่ ZoneLabs เผยแพร่ไฟร์วอลล์ส่วนบุคคลแบบสองทางให้แพร่หลาย โปรแกรม ZoneAlarm ของเธอซ่อนพอร์ตทั้งหมดของคอมพิวเตอร์ (ซึ่ง Windows Firewall สามารถทำได้) และยังช่วยให้คุณสามารถควบคุมการเข้าถึงอินเทอร์เน็ตของโปรแกรมได้ (ซึ่ง Windows Firewall ยังทำไม่ได้) ฉันไม่ต้องการการตรวจสอบพฤติกรรมของโปรแกรมอย่างชาญฉลาด เช่น ใน Norton Internet Security 2010 และแพ็คเกจอื่นๆ แต่ฉันหวังว่าเมื่อเปิดตัว Windows 8 Microsoft จะนำชุดความสามารถของ ZoneAlarm อายุสิบปีมาไว้ในไฟร์วอลล์

Microsoft ทราบดีว่าผู้ใช้จำนวนมากติดตั้งไฟร์วอลล์และแพ็คเกจความปลอดภัยของบริษัทอื่น และเพียงแค่ปิดการใช้งาน Windows Firewall ในอดีต โปรแกรมรักษาความปลอดภัยของบริษัทอื่นจำนวนมากจะปิดใช้งาน Windows Firewall โดยอัตโนมัติเพื่อหลีกเลี่ยงความขัดแย้ง ใน Windows 7 Microsoft ทำสิ่งนี้ด้วยตัวเอง เมื่อติดตั้งไฟร์วอลล์ที่รู้จัก ระบบปฏิบัติการจะปิดการใช้งานไฟร์วอลล์ในตัวและรายงานว่า “การตั้งค่าไฟร์วอลล์ถูกควบคุมโดยโปรแกรมดังกล่าวและจากผู้ผลิตดังกล่าว”

ไม่ว่าคุณจะใช้งานหรือไม่ก็ตาม Windows Firewall ก็มีอยู่ใน Windows 7 ทุกเครื่อง พร้อมด้วยการผสานรวมที่แข็งแกร่งกับระบบปฏิบัติการ จะดีกว่าไหมหากแอปพลิเคชันความปลอดภัยของบุคคลที่สามสามารถใช้ไฟล์วอลล์ Windows เพื่อวัตถุประสงค์ของตนเองได้ นี่คือแนวคิดเบื้องหลังอินเทอร์เฟซการเขียนโปรแกรมที่เรียกว่า Windows Filtering Platform แต่นักพัฒนาจะใช้มันหรือไม่? ข้อมูลเพิ่มเติมเกี่ยวกับเรื่องนี้ในส่วนถัดไป

ความปลอดภัยของ Windows 7: แพลตฟอร์มการกรอง Windows

ไฟร์วอลล์ต้องทำงานร่วมกับ Windows 7 ในระดับที่ต่ำมากซึ่งโปรแกรมเมอร์ของ Microsoft เกลียดอย่างยิ่ง เทคโนโลยีบางอย่างของ Microsoft เช่น PatchGuard มีอยู่ใน Windows 7 รุ่น 64 บิต (Windows 7 แบบ 64 บิตมีข้อดีด้านความปลอดภัยหลายประการมากกว่า Windows 7 แบบ 32 บิต) ปิดกั้นผู้โจมตีและปกป้องเคอร์เนลจากการเข้าถึง อย่างไรก็ตาม Microsoft ไม่ได้ให้การรักษาความปลอดภัยในระดับเดียวกับโปรแกรมของบริษัทอื่น แล้วต้องทำอย่างไร?

วิธีแก้ไขปัญหานี้คือ Windows Filtering Platform (WFP) ตามข้อมูลของ Microsoft เวอร์ชันหลังอนุญาตให้ไฟร์วอลล์ของบริษัทอื่นใช้คุณสมบัติหลักของ Windows Firewall ซึ่งช่วยให้เพิ่มความสามารถที่กำหนดเองและเลือกเปิดหรือปิดใช้งานบางส่วนของ Windows Firewall ได้ เป็นผลให้ผู้ใช้สามารถเลือกไฟร์วอลล์ที่จะอยู่ร่วมกับ Windows Firewall ได้

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

BitDefender LLC

ผู้จัดการฝ่ายพัฒนาผลิตภัณฑ์ Iulian Costache กล่าวว่าบริษัทของเขากำลังใช้แพลตฟอร์มนี้ใน Windows 7 อย่างไรก็ตาม พวกเขาพบปัญหาหน่วยความจำรั่วอย่างมีนัยสำคัญ ข้อผิดพลาดนี้อยู่ฝั่ง Microsoft ซึ่งบริษัทซอฟต์แวร์ยักษ์ใหญ่รายใหญ่ที่สุดได้ยืนยันแล้ว อย่างไรก็ตาม จูเลียนไม่รู้ว่าจะได้รับการแก้ไขเมื่อใด ในระหว่างนี้ พวกเขาได้เปลี่ยนไดรเวอร์ WFP ใหม่เป็น TDI เก่าชั่วคราว

เช็ค พอยท์ ซอฟต์แวร์ เทคโนโลยีส์ จำกัด

Mirka Janus ผู้จัดการฝ่ายประชาสัมพันธ์ของ Check Point Software Technologies Ltd กล่าวว่าบริษัทของเขาใช้ WFP มาตั้งแต่ Vista พวกเขายังใช้แพลตฟอร์มนี้ภายใต้ Windows 7 อีกด้วย มันเป็นอินเทอร์เฟซที่ดีและรองรับ แต่มัลแวร์หรือไดรเวอร์ที่เข้ากันไม่ได้อาจเป็นอันตรายต่อผลิตภัณฑ์รักษาความปลอดภัยที่ต้องอาศัยแพลตฟอร์มนั้น ZoneAlarm อาศัยสองชั้นมาโดยตลอด - เลเยอร์การเชื่อมต่อเครือข่ายและเลเยอร์แพ็กเก็ต เริ่มต้นด้วย Vista Microsoft เสนอ WFP เป็นวิธีที่รองรับในการกรองการเชื่อมต่อเครือข่าย เริ่มต้นด้วย Windows 7 SP1 Microsoft จะต้องสอน WFP เพื่อเปิดใช้งานการกรองแพ็กเก็ต

“การใช้ API ที่รองรับหมายถึงความเสถียรที่ดีขึ้นและ BSOD ที่น้อยลง สามารถลงทะเบียนไดรเวอร์ได้หลายตัว และผู้พัฒนาไดรเวอร์แต่ละรายไม่ต้องกังวลเรื่องความเข้ากันได้กับไดรเวอร์อื่น ๆ หากคนขับรถคนใดถูกบล็อค ก็ไม่มีคนขับที่ลงทะเบียนรายอื่นสามารถข้ามการบล็อคนั้นได้ ในทางกลับกัน ไดรเวอร์ที่เข้ากันไม่ได้อาจกลายเป็นปัญหาได้ โดยข้ามไดรเวอร์อื่นๆ ที่ลงทะเบียนไว้ทั้งหมด เราไม่พึ่งพา WFP เพียงอย่างเดียวเพื่อความปลอดภัยของเครือข่าย”

เอฟ-ซีเคียว คอร์ปอเรชั่น

นักวิจัยอาวุโสของ F-Secure Corporation Mikko Hypponen กล่าวว่า WFP ไม่เคยได้รับความนิยมในหมู่นักพัฒนาซอฟต์แวร์รักษาความปลอดภัยด้วยเหตุผลบางประการ ในเวลาเดียวกัน บริษัทของเขาใช้ WFP มาเป็นเวลานานและพอใจกับมัน

แมคอาฟี อิงค์

ในทางกลับกัน Ahmed Sallam หัวหน้าสถาปนิกของ McAfee กล่าวว่า WFP เป็นอินเทอร์เฟซการกรองเครือข่ายที่ทรงพลังและยืดหยุ่นมากกว่าอินเทอร์เฟซที่ใช้ NDIS รุ่นก่อน McAfee ใช้ WFP ในผลิตภัณฑ์รักษาความปลอดภัยอย่างจริงจัง

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

ใช่ ตามทฤษฎีแล้ว ลายเซ็นดิจิทัลเป็นกลไกการรักษาความปลอดภัยที่สมเหตุสมผล แต่ในความเป็นจริงแล้ว ผู้เขียนมัลแวร์ยังสามารถรับลายเซ็นดิจิทัลได้ด้วยตนเอง

ความปลอดภัยของแพนด้า

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

ไซแมนเทค คอร์ปอเรชั่น

Dan Nadir ผู้อำนวยการฝ่ายจัดการผลิตภัณฑ์อุปโภคบริโภคของ Symantec กล่าวว่า WFP ยังไม่ได้ถูกนำมาใช้ในผลิตภัณฑ์ของตนเนื่องจากมีความแปลกใหม่ อย่างไรก็ตาม เมื่อเวลาผ่านไป บริษัทวางแผนที่จะย้ายไปเพราะ... อินเทอร์เฟซเก่าที่พวกเขาใช้อยู่ในปัจจุบันจะไม่สามารถให้ฟังก์ชันการทำงานเต็มรูปแบบที่ต้องการได้ พวกเขาถือว่า WFP เป็นแพลตฟอร์มที่ดีเพราะ... มันได้รับการออกแบบมาโดยเฉพาะเพื่อให้การทำงานร่วมกันระหว่างโปรแกรมบุคคลที่สามที่หลากหลาย โดยหลักการแล้ว แพลตฟอร์มควรมีปัญหาความเข้ากันได้น้อยลงอีกในอนาคต WFP นั้นยอดเยี่ยมเช่นกันเพราะมันรวมเข้ากับ Microsoft Network Diagnostic Framework สิ่งนี้มีประโยชน์อย่างยิ่งเพราะ... อำนวยความสะดวกอย่างมากในการค้นหาโปรแกรมเฉพาะที่เป็นอุปสรรคต่อการรับส่งข้อมูลเครือข่าย สุดท้ายนี้ WFP ควรนำไปสู่การปรับปรุงประสิทธิภาพและความเสถียรของระบบปฏิบัติการเพราะ... แพลตฟอร์มนี้หลีกเลี่ยงการจำลองและปัญหาเกี่ยวกับความขัดแย้งหรือความเสถียรของไดรเวอร์

อย่างไรก็ตาม ในทางกลับกัน ตามข้อมูลของ Nadir WFP สามารถสร้างปัญหาบางอย่างที่มีอยู่ในโครงสร้างใดๆ ได้ นักพัฒนาที่ใช้ WFP ไม่สามารถปิดช่องโหว่ภายใน WFP เองได้ และไม่สามารถขยายขีดความสามารถเฉพาะที่นำเสนอโดย WFP ได้ นอกจากนี้ หากหลายโปรแกรมพึ่งพา WFP ผู้สร้างมัลแวร์ก็สามารถพยายามโจมตี WFP ได้ในทางทฤษฎี

เทรนด์ไมโคร อิงค์

ผู้อำนวยการฝ่ายวิจัยของ Trend Micro Inc. Dale Liao กล่าวว่าข้อได้เปรียบที่ใหญ่ที่สุดของแพลตฟอร์มนี้คือความเข้ากันได้กับระบบปฏิบัติการ นอกจากนี้ ไฟร์วอลล์มาตรฐานยังมีประโยชน์อีกด้วย ตอนนี้พวกเขาสามารถมุ่งเน้นไปที่สิ่งที่สำคัญต่อผู้ใช้ได้จริงๆ สิ่งที่ไม่ดีเกี่ยวกับ WFP คือเมื่อพบข้อผิดพลาดในแพลตฟอร์ม บริษัทต้องรอให้ Microsoft ได้รับการแก้ไข

WFP: บทสรุป

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

ข้อเสียใหญ่อีกประการหนึ่งของ WFP คือไม่มีใน Windows XP ดังนั้นนักพัฒนาที่ต้องการสนับสนุน XP จะต้องดำเนินโครงการคู่ขนานสองโครงการ อย่างไรก็ตาม เมื่อ XP ออกจากตลาด ฉันคิดว่า WFP จะได้รับความนิยมมากขึ้นในหมู่นักพัฒนา



มีคำถามอะไรไหม?

แจ้งการพิมพ์ผิด

ข้อความที่จะส่งถึงบรรณาธิการของเรา: