เหตุใดระบบจึงฟังบนพอร์ต 8000


13

ฉันสังเกตเห็นโดยบังเอิญวันนี้ว่าฉันมีเว็บเซิร์ฟเวอร์ที่ไม่รู้จักฟังบนพอร์ต 8000 การเปิดhttp: // localhost: 8000เพิ่งกลับ 404 ดังนั้นฉันจึงไม่ได้รับคำใบ้ว่าฟังอะไรอยู่ที่นั่น

ฉันเคยnetstat -anoรู้แล้วว่ากระบวนการที่มี PID 4 กำลังฟังอยู่บนพอร์ตนั้น PID 4 เป็นกระบวนการของระบบ ทำไมระบบของฉันฟังพอร์ตนั้นโดยที่ฉันไม่ได้เริ่มเซิร์ฟเวอร์ หรือฉันจะทราบได้อย่างไรว่ากำลังฟังอยู่ที่นั่น?

ฉันได้อ่านคำถามที่เกี่ยวข้องเกี่ยวกับพอร์ต 80และพอร์ต 443แต่ไม่มีบริการใด ๆ ที่กล่าวถึงว่าทำงานในระบบของฉัน และคำแนะนำอื่น ๆ ก็ไม่ได้ผลเช่นกัน

แก้ไข:

การตอบสนอง HTTP ของเซิร์ฟเวอร์แสดงรายการMicrosoft-HTTPAPI/2.0เป็นเซิร์ฟเวอร์

edit2:

ตามที่ Shadok ร้องขอนี่คือรายการของ TCPView ที่มี 8000 เป็นพอร์ต แต่ฉันสงสัยว่ามันมีประโยชน์เลย ...

ผลลัพธ์ TCPView

คำตอบ:


17

IIRC โปรแกรมใด ๆ ที่ใช้HTTP Server APIเพื่อเรียกใช้เซิร์ฟเวอร์ HTTP บน Windows จะมีบริการที่เรียกเก็บจากกระบวนการของระบบเพราะทำงานผ่านhttp.sysเซิร์ฟเวอร์ของเคอร์เนล

ท่านสามารถเข้าดู URL netsh http show servicestateที่ลงทะเบียนโดยใช้คำสั่งต่อไปนี้: ซึ่งจะรวมถึงหมายเลขพอร์ตด้วย

netstat -ab ยังสามารถเปิดเผยว่าบริการใดบ้างที่เริ่มฟังบนพอร์ตที่กำหนด


ขอขอบคุณ! ฉันควรนึกถึงตัวเองจริงๆ…ฉันคิดว่ามันเป็น VAIO Care (ยูทิลิตี้ของ Sony) ที่เริ่มให้บริการ (VCAgent.exe) แต่เห็นได้ชัดว่าบริการไม่จำเป็นจริงๆ ฉันเปิดเครือข่ายดมกลิ่นไว้เพื่อตรวจสอบว่ามีคำขอใด ๆ ไปยังเซิร์ฟเวอร์เมื่อคลิกไปรอบ ๆ ในโปรแกรม แต่ไม่มีอะไรเกิดขึ้นจริง (คำขอปกติในเว็บเบราว์เซอร์ปรากฏขึ้น) อย่างไรก็ตามฉันลบออกจาก autostart ดังนั้นควรแก้ไขได้ทันที แม้ว่าจะค่อนข้างโง่ที่ API เซิร์ฟเวอร์ทั้งหมดใช้กระบวนการของระบบเสมอ
โผล่

+1 สำหรับnetstat -ab
Kevin Kibler

เสียดายที่ฉันnetstat -abพูดว่า "ไม่สามารถได้รับข้อมูลที่เป็นเจ้าของ" ดังนั้นฉันติด แต่อย่างอื่นยังคงเป็นคำสั่งที่มีประโยชน์
Tominator

1
สำหรับการอ้างอิงกรณีของฉันคือ Free Video Maker ใช้พอร์ต ฉันพบเซิร์ฟเวอร์การสอนของ Angular JS ขัดแย้งกันดังนั้นฉันต้องคัดออก
simongcc

1
(ในกรณีที่สิ่งนี้สูญหายฉันได้เพิ่มคำตอบด้วย) ลองดู: netsh http show servicestate view = requestq
Nick Westgate

4

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

คุณสามารถดู url ที่ลงทะเบียน (แบบไดนามิก) โดยเรียกใช้คำสั่งต่อไปนี้: netsh http show servicestate


1

googling นิดหน่อยแสดงแอปพลิเคชันตัวอย่าง WCF ที่ใช้ 8000 และ Intel Remote Desktop Interface ฉันไม่คาดหวังว่าสิ่งเหล่านี้จะทำงานเป็นระบบ

มีโทรจัน / แบ็คดอร์บางตัวที่ใช้ 8000 ดังนั้นอาจเป็นการบูทดิสก์ Antivirus และทำการสแกนแบบเต็มจะเป็นความคิดที่ดี


1

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


TCPView ไม่แสดงมากกว่า netstat (ซึ่งเป็นเหตุผลที่ฉันไม่ได้พูดถึงว่าฉันได้ลอง) แต่แน่นอนฉันเพิ่มสกรีนช็อตของพอร์ต 8000 บรรทัดลงในคำถามของฉัน
โผล่

1

ซ็อกเก็ตระบบ (PID 4) อาจเป็น http.sys ซึ่งในกรณีนี้คุณสามารถใช้คำสั่ง netsh ที่ได้รับจาก PiBa-NL

แต่ทราบว่ามีพารามิเตอร์ไม่กี่ ดูเหมือนว่าค่าเริ่มต้นจะเทียบเท่ากับ:

netsh http show servicestate view=session verbose=yes

มุมมองเซสชันไม่ได้ช่วยในกรณีของฉัน แต่นี่แสดงให้เห็นว่า PID:

netsh http show servicestate view=requestq

ขอบคุณ! PID เป็นกุญแจสำคัญสำหรับฉัน
duct_tape_coder

0

ในกรณีของฉันพอร์ต 8000 ถูกนำขึ้นโดยไดรเวอร์สำหรับเสียง BlasterX AE-5การ์ดเสียง กระบวนการที่Creative.AudPosServiceอยู่ในC:\Program Files (x86)\Creative\Connection Serviceได้ใช้พอร์ตนี้

โชคดีที่มันเป็นไปได้ที่จะเปลี่ยนพอร์ตนี้ เปิดCreative.AudPosService.exe.configและการเปลี่ยนแปลงบรรทัดที่หมายเลขพอร์ตตั้งอยู่<add baseAddress="http://localhost:8000/"/>ไป<add baseAddress="http://localhost:9999/"/>หรือสิ่งอื่นที่ไม่ได้ยุ่งเกี่ยวกับการทำงานของคุณ รีสตาร์ทคอมพิวเตอร์และควรจะดี

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.