conhost.exe คืออะไรและเหตุใดจึงทำงาน

คุณไม่ต้องสงสัยเลยว่าอ่านบทความนี้เพราะคุณได้สะดุดกับกระบวนการ Console Window Host (conhost.exe) ในตัวจัดการงานและสงสัยว่ามันคืออะไร เรามีคำตอบให้คุณ

ที่เกี่ยวข้อง: กระบวนการนี้คืออะไรและเหตุใดจึงทำงานบนพีซีของฉัน

บทความนี้เป็นส่วนหนึ่งของซีรี่ส์ต่อเนื่องของเราที่อธิบายกระบวนการต่างๆที่พบในตัวจัดการงานเช่น svchost.exe, dwm.exe, ctfmon.exe, mDNSResponder.exe, rundll32.exe, Adobe_Updater.exe และอื่น ๆ อีกมากมาย ไม่รู้ว่าบริการเหล่านั้นคืออะไร? เริ่มอ่านกันเลยดีกว่า!

กระบวนการโฮสต์หน้าต่างคอนโซลคืออะไร?

การทำความเข้าใจกระบวนการโฮสต์หน้าต่างคอนโซลต้องใช้ประวัติเล็กน้อย ในวันที่ Windows XP Command Prompt ได้รับการจัดการโดยกระบวนการที่ชื่อ ClientServer Runtime System Service (CSRSS) ตามความหมายของชื่อ CSRSS เป็นบริการระดับระบบ สิ่งนี้สร้างปัญหาสองสามประการ ประการแรกความผิดพลาดใน CSRSS อาจทำให้ระบบทั้งหมดล่มลงซึ่งไม่ใช่แค่ปัญหาด้านความน่าเชื่อถือเท่านั้น แต่ยังมีช่องโหว่ด้านความปลอดภัยที่เป็นไปได้อีกด้วย ปัญหาที่สองคือ CSRSS ไม่สามารถกำหนดธีมได้เนื่องจากนักพัฒนาไม่ต้องการเสี่ยงให้โค้ดธีมทำงานในกระบวนการของระบบ ดังนั้น Command Prompt จึงมีรูปลักษณ์แบบคลาสสิกแทนที่จะใช้องค์ประกอบอินเทอร์เฟซใหม่

สังเกตในภาพหน้าจอของ Windows XP ด้านล่างว่า Command Prompt ไม่ได้มีสไตล์เหมือนกับแอปอย่าง Notepad

ที่เกี่ยวข้อง: Desktop Window Manager (dwm.exe) คืออะไรและเหตุใดจึงทำงาน

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

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

เข้าสู่ Windows 7 และกระบวนการโฮสต์หน้าต่างคอนโซล ตามชื่อหมายความว่ากระบวนการโฮสต์สำหรับหน้าต่างคอนโซล กระบวนการจัดเรียงอยู่ตรงกลางระหว่าง CSRSS และ Command Prompt (cmd.exe) ทำให้ Windows สามารถแก้ไขปัญหาก่อนหน้านี้ทั้งสองอย่างองค์ประกอบอินเทอร์เฟซเช่นแถบเลื่อนวาดอย่างถูกต้องและคุณสามารถลากและวางลงใน Command Prompt ได้อีกครั้ง และนั่นเป็นวิธีที่ยังคงใช้ใน Windows 8 และ 10 ทำให้สามารถใช้องค์ประกอบอินเทอร์เฟซและสไตล์ใหม่ทั้งหมดที่มีมาตั้งแต่ Windows 7

แม้ว่า Task Manager จะนำเสนอ Console Window Host เป็นเอนทิตีแยกต่างหาก แต่ก็ยังคงเชื่อมโยงอย่างใกล้ชิดกับ CSRSS หากคุณตรวจสอบกระบวนการ conhost.exe ใน Process Explorer คุณจะเห็นว่ามันทำงานภายใต้กระบวนการ csrss.ese

ในท้ายที่สุด Console Window Host เป็นเหมือนเชลล์ที่รักษาพลังในการเรียกใช้บริการระดับระบบเช่น CSRSS ในขณะที่ยังคงให้ความสามารถในการรวมองค์ประกอบอินเทอร์เฟซที่ทันสมัยอย่างปลอดภัยและเชื่อถือได้

เหตุใดจึงมีหลายอินสแตนซ์ของกระบวนการทำงานอยู่

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

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

หากคุณสังเกตเห็นว่าอินสแตนซ์ของ Console Window Host หรือบริการที่เกี่ยวข้องกำลังก่อให้เกิดปัญหาเช่นการใช้งาน CPU หรือ RAM มากเกินไปอย่างต่อเนื่องคุณสามารถตรวจสอบแอปเฉพาะที่เกี่ยวข้องได้ อย่างน้อยก็อาจช่วยให้คุณทราบว่าจะเริ่มแก้ไขปัญหาได้ที่ไหน น่าเสียดายที่ตัวจัดการงานเองไม่ได้ให้ข้อมูลที่ดีเกี่ยวกับเรื่องนี้ ข่าวดีก็คือ Microsoft มีเครื่องมือขั้นสูงที่ยอดเยี่ยมสำหรับการทำงานกับกระบวนการซึ่งเป็นส่วนหนึ่งของกลุ่มผลิตภัณฑ์ Sysinternals เพียงดาวน์โหลด Process Explorer และเรียกใช้มันเป็นแอปแบบพกพาจึงไม่จำเป็นต้องติดตั้ง Process Explorer มีคุณสมบัติขั้นสูงทุกประเภทและเราขอแนะนำให้อ่านคู่มือเพื่อทำความเข้าใจ Process Explorer เพื่อเรียนรู้เพิ่มเติม

ที่เกี่ยวข้อง: แอป "พกพา" คืออะไรและทำไมจึงมีความสำคัญ

วิธีที่ง่ายที่สุดในการติดตามกระบวนการเหล่านี้ใน Process Explorer คือกด Ctrl + F ก่อนเพื่อเริ่มการค้นหา ค้นหา“ conhost” แล้วคลิกผ่านผลลัพธ์ ในขณะที่คุณทำคุณจะเห็นหน้าต่างหลักเปลี่ยนไปเพื่อแสดงแอพ (หรือบริการ) ที่เชื่อมโยงกับอินสแตนซ์ของ Console Window Host

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

กระบวนการนี้อาจเป็นไวรัสได้หรือไม่?

กระบวนการนี้เป็นส่วนประกอบของ Windows อย่างเป็นทางการ แม้ว่าจะเป็นไปได้ว่าไวรัสได้เข้ามาแทนที่ Console Window Host จริงด้วยปฏิบัติการของตัวเอง แต่ก็ไม่น่าเป็นไปได้ หากคุณต้องการความแน่ใจคุณสามารถตรวจสอบตำแหน่งไฟล์ที่อยู่ภายใต้กระบวนการ ในตัวจัดการงานคลิกขวาที่กระบวนการโฮสต์บริการและเลือกตัวเลือก“ เปิดตำแหน่งไฟล์”

หากไฟล์ถูกเก็บไว้ในWindows\System32โฟลเดอร์ของคุณคุณสามารถค่อนข้างมั่นใจได้ว่าคุณไม่ได้จัดการกับไวรัส

ในความเป็นจริงมีโทรจันชื่อ Conhost Miner ที่ปลอมตัวเป็นกระบวนการโฮสต์หน้าต่างคอนโซล ในตัวจัดการงานดูเหมือนว่ากระบวนการจริง แต่การขุดเพียงเล็กน้อยจะเผยให้เห็นว่ามันถูกเก็บไว้ใน%userprofile%\AppData\Roaming\Microsoftโฟลเดอร์แทนที่จะเป็นWindows\System32โฟลเดอร์ โทรจันถูกใช้เพื่อแย่งชิงพีซีของคุณเพื่อขุด Bitcoins ดังนั้นพฤติกรรมอื่น ๆ ที่คุณจะสังเกตเห็นได้ว่ามีการติดตั้งในระบบของคุณหรือไม่คือการใช้หน่วยความจำสูงกว่าที่คุณคาดไว้และการใช้งาน CPU จะอยู่ในระดับที่สูงมาก 80%)

ที่เกี่ยวข้อง: โปรแกรมป้องกันไวรัสที่ดีที่สุดสำหรับ Windows 10 คืออะไร (Windows Defender ดีเพียงพอหรือไม่)

แน่นอนว่าการใช้โปรแกรมสแกนไวรัสที่ดีเป็นวิธีที่ดีที่สุดในการป้องกัน (และลบ) มัลแวร์เช่น Conhost Miner และเป็นสิ่งที่คุณควรทำต่อไป ปลอดภัยดีกว่าเสียใจ!