บัญชี Windows ใดที่จะใช้เมื่อไม่มีใครลงชื่อเข้าใช้


25

เมื่อไม่มีใครล็อกอินเข้าสู่ Windows (หน้าจอเข้าสู่ระบบจะปรากฏขึ้น) ผู้ใช้ที่กระบวนการปัจจุบันทำงานเป็นใคร? (ไดรเวอร์วิดีโอ / เสียงเซสชันการเข้าสู่ระบบซอฟต์แวร์เซิร์ฟเวอร์ใด ๆ การควบคุมการเข้าถึง ฯลฯ พวกเขาไม่สามารถเป็นผู้ใช้หรือผู้ใช้ก่อนหน้านี้เพราะไม่มีใครเข้าสู่ระบบสิ่งที่เกี่ยวกับกระบวนการที่เริ่มต้นโดยผู้ใช้ ทำงานหลังจากออกจากระบบหรือไม่ (ตัวอย่างเช่น HTTP, เซิร์ฟเวอร์ FTP และระบบเครือข่ายอื่น ๆ ) พวกเขาเปลี่ยนเป็นบัญชีระบบหรือไม่หากกระบวนการที่ผู้ใช้เริ่มต้นเปลี่ยนเป็นระบบแสดงว่ามีช่องโหว่ร้ายแรงกระบวนการนี้ทำงานในฐานะผู้ใช้นั้นหรือไม่ ยังคงทำงานเป็นผู้ใช้รายนั้นหลังจากที่พวกเขาออกจากระบบ?

นี่คือสาเหตุที่การแฮ็ค SETHC อนุญาตให้คุณใช้ CMD เป็นระบบได้หรือไม่


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

3
Windows เป็นระบบปฏิบัติการที่ผู้ใช้หลายซึ่งหมายความว่ากระบวนการที่แตกต่างกันอาจเป็นกับผู้ใช้งานที่แตกต่างกันในเวลาเดียวกัน มันไม่เป็นเช่นนั้นเมื่อคุณลงชื่อเข้าใช้ทั้งคอมพิวเตอร์ "เปลี่ยน" ไปยังบัญชีของคุณ
el.pescado

คำตอบ:


40

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

ไดรเวอร์เกือบทั้งหมดทำงานในโหมดเคอร์เนล พวกเขาไม่จำเป็นต้องมีบัญชีเว้นแต่พวกเขาเริ่มกระบวนการ userspace ไดรเวอร์พื้นที่ผู้ใช้สองสามตัวทำงานภายใต้ SYSTEM

เซสชันการเข้าสู่ระบบฉันไม่สามารถตรวจสอบได้ในตอนนี้ แต่ฉันแน่ใจว่ามันใช้ระบบเช่นกัน ท่านสามารถเข้าดู logonui.exe ในHacker กระบวนการหรือSysInternals procexp ในความเป็นจริงคุณสามารถเห็นทุกอย่างในแบบนั้น

"ซอฟต์แวร์เซิร์ฟเวอร์" โปรดดูบริการ Windows ด้านล่าง

สิ่งที่เกี่ยวกับกระบวนการที่เริ่มต้นโดยผู้ใช้ แต่ยังคงทำงานหลังจากออกจากระบบ? (ตัวอย่างเช่น HTTP, FTP เซิร์ฟเวอร์และอื่น ๆ เครือข่าย) พวกเขาเปลี่ยนเป็นบัญชีระบบหรือไม่

มีสามชนิดที่นี่:

  1. กระบวนการ "พื้นหลัง" แบบเก่าธรรมดา ผู้ที่ทำงานภายใต้บัญชีเดียวกันกับผู้ที่เริ่มต้นใช้งานและจะไม่ทำงานหลังจากออกจากระบบ กระบวนการออกจากระบบฆ่าพวกเขาทั้งหมด

    "HTTP, FTP เซิร์ฟเวอร์และสิ่งอื่น ๆ เกี่ยวกับเครือข่าย" ไม่ทำงานตามกระบวนการพื้นหลังปกติ พวกเขาทำงานเป็นบริการ

  2. กระบวนการ Windows "บริการ" สิ่งเหล่านี้ไม่ได้เปิดตัวโดยตรง แต่ผ่านทางผู้จัดการบริการ โดยบริการเริ่มต้นทำงานเป็น LocalSystem (ซึ่ง isanae บอกว่าเท่ากับระบบ) แม้ว่าพวกเขาสามารถมีการกำหนดค่าบัญชีเฉพาะ

    (แน่นอนว่าไม่มีใครมารบกวนพวกเขาเพียงแค่ติดตั้ง XAMPP หรือ WampServer หรืออึอื่น ๆ และปล่อยให้มันทำงานเป็น SYSTEM โดยไม่มีการแก้ไขตลอดไป)

    ในระบบ Windows ล่าสุดฉันคิดว่าบริการยังสามารถมีSID ของตัวเองได้แต่ฉันยังไม่ได้ทำการวิจัยมากขนาดนี้อีก

  3. งานที่กำหนดไว้ สิ่งเหล่านี้ถูกเปิดใช้โดยบริการ "ตัวกำหนดเวลางาน" "ในพื้นหลัง" และมักจะทำงานภายใต้บัญชีที่กำหนดค่าไว้ในงาน (โดยปกติใครก็ตามที่สร้างงาน)

หากกระบวนการที่ผู้ใช้เริ่มต้นสลับไปที่ SYSTEM แสดงว่ามีช่องโหว่ที่ร้ายแรงมาก

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

(ดูประเภทอื่น ๆ ที่ไม่ใช่ช่องโหว่ประเภทเดียวกัน)



2
อาจเป็นที่น่าสังเกตว่า IIS ส่วนใหญ่ทำงานภายใต้บัญชีที่มีสิทธิ์ต่ำกว่าที่สร้างขึ้นสำหรับกระบวนการ IIS โดยเฉพาะนอกกรอบ (ซึ่งจะครอบคลุม Windows หลาย HTTP, FTP, ฯลฯ เซิร์ฟเวอร์.) ดูที่นี่สำหรับรายละเอียดบางอย่าง ดังนั้นจึงมักขึ้นอยู่กับค่าเริ่มต้นของโปรแกรมที่คุณใช้อยู่
jpmc26

1
ผู้ดูแลระบบและท้องถิ่นเป็นส่วนหนึ่งและเหมือนกัน เมื่อคุณมีหนึ่งแล้วคุณจะได้รับอีกและระบบปฏิบัติการเท่านั้นสร้างขึ้นสิ่งกีดขวางบนถนนมีวัตถุประสงค์เพื่อป้องกันข้อผิดพลาด (หมายเหตุ: สิ่งใหม่เก่าไม่ใช่เอกสารของ Microsoft อย่างเป็นทางการ)
CVn

3
วันนี้บริการจำนวนมากทำงานเป็น NetworkService หรือ LocalService ไม่ใช่ LocalSystem
Ben Voigt

2
เริ่มต้นด้วย Windows 7 และ 2008 R2 บัญชีบริการที่มีการจัดการและบัญชีเสมือนอนุญาตให้ใช้บริการภายใต้ข้อมูลประจำตัวของตนเองดังนั้นคุณจึงไม่มีบริการมากมายที่แชร์ LocalService / NetworkService / LocalSystem จำกัด การเข้าถึงหากบริการหนึ่งมีช่องโหว่
afrazier

2

กระบวนการล็อกอินและการล็อกอินล่วงหน้าทำงานทั้งหมดเป็นระบบ (เรียกอีกอย่างว่า LocalSystem) ในความเป็นจริงวิธีหนึ่งในการรับเชลล์ (เช่นพรอมต์ CMD) ที่ทำงานเป็นระบบใน Windows บางเวอร์ชันคือการแทนที่โปรแกรมการช่วยการเข้าถึงเช่นโปรแกรมอ่านหน้าจอแว่นขยายหรือแป้นพิมพ์บนหน้าจอพร้อมสำเนา (หรือ เชื่อมโยงไปยัง) CMD.EXEจากนั้นใช้ทางลัดเพื่อเปิดใช้งานคุณลักษณะการช่วยสำหรับการเข้าถึงก่อนที่จะเข้าสู่ระบบคุณจะได้รับพรอมต์คำสั่งแม้ว่าจะไม่มีผู้ใช้รายใดก็ตามที่เข้าสู่CMDระบบ

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


1
ใช้งานได้บน Windows 7 แทนที่ sethc.exe ด้วย cmd.exe ใน C: \ Windows \ System32 \

1

พวกเขาไม่ "สลับ" เป็นอะไรเลย กระบวนการดังกล่าวไม่เคยทำงานภายใต้บริบทผู้ใช้ปัจจุบัน
พวกเขาเป็นเจ้าของโดยSYSTEMผู้ใช้

กระบวนการและบริการใด ๆ ที่เป็นของผู้ใช้แต่ละรายจะถูกยกเลิกเมื่อออกจากระบบ
นั่นคือสิ่งที่เข้าสู่ระบบการออกหมาย


ฉันไม่แน่ใจ ... ประการแรกฉันพบโพสต์ของ MS Technet ที่พนักงานไม่ตอบรับ (ไม่เหมือนนี้มีความหมายมาก) ตอบว่าบริการจะไม่สิ้นสุดเมื่อออกจากระบบ ฉันไม่แน่ใจว่านี่เป็นคำจำกัดความที่ถูกต้องของการออกจากระบบโดยทั่วไป: ฉันเห็น daemons หลายตัวบน Linux หลังจากฉันออกจากระบบผู้ใช้รายหนึ่งแล้วpsเหมือนกัน
underscore_d

1
ไม่ถูกต้อง สามารถเริ่มบริการได้ในฐานะผู้ใช้รายอื่นและพวกเขาจะเริ่มและทำงานต่อโดยไม่ต้องมีผู้ใช้นั้น "เข้าสู่ระบบ" พวกเขาจะเริ่มเซสชันของตนเองด้วยข้อมูลประจำตัวของผู้ใช้นั้นจริง ๆ แล้วผู้ใช้จะถูกล็อกอินในขณะที่บริการทำงาน แต่โปรแกรมเดสก์ท็อป / autostart เป็นต้นไม่ทำงานและนั่นคือสิ่งที่ผู้ใช้ทั่วไปเข้าใจว่าเป็น "เข้าสู่ระบบ" ยังคงบริการจะทำงานกับข้อมูลประจำตัวของผู้ใช้นั้นและมีการเข้าถึงไฟล์ผู้ใช้ที่
Josef

@Josef: อาร์กิวเมนต์ของคุณดูเหมือนจะเดือดร้อนถึง "บางคนใช้คำว่า" เข้าสู่ระบบ "ในทางที่ผิด ความเห็นที่แท้จริงของคุณเห็นด้วยกับคำตอบของฉัน: ผู้ใช้นั้นจะถือว่าเข้าสู่ระบบตราบเท่าที่พวกเขามีบริการ / กระบวนการทำงานกับบัญชีของพวกเขา
การแข่งขัน Lightness กับโมนิก้า

@LightnessRacesin ไม่ว่าจะมีความแตกต่างที่แท้จริง หากคุณสร้างบริการโดยใช้บัญชีของคุณและนั่นคือเมื่อบูตเครื่องจะไม่มีกระบวนการใด ๆ เริ่มต้นที่จะให้คุณแสดงเดสก์ท็อป (ดังนั้นจึงไม่มี dwm.exe หรือ explorer.exe ทำงาน) โปรแกรม autostart ทั้งหมดของคุณจะไม่ทำงาน ทำงานอยู่เป็นต้นดังนั้นหากคุณมีเซสชันการเข้าสู่ระบบแบบอินเทอร์แอคทีฟมีสิ่งต่างๆมากมายให้ใช้งานมากกว่าถ้าเพียงแค่ช่วงบริการเท่านั้นที่กำลังทำงานอยู่ สิ่งที่ "เข้าสู่ระบบ" คืออะไรเปิดให้มีการอภิปราย แม้ว่าบริการจะทำงานด้วยข้อมูลประจำตัวของคุณคุณยังต้องเข้าสู่ระบบเพื่อใช้งาน Windows ด้วยตัวคุณเอง!
Josef

1
"กระบวนการดังกล่าวไม่เคยทำงานภายใต้บริบทผู้ใช้ปัจจุบัน" ยังคงผิด บริการทำงานภายใต้บริบทผู้ใช้ที่ตั้งค่าไว้สำหรับพวกเขา สำหรับบริการ windows แบบบิวด์อินนั่นเป็นหนึ่งในบัญชีระบบ สำหรับบริการอื่น ๆ สามารถเป็นบัญชีใดก็ได้ โดยเฉพาะอย่างยิ่งซอฟต์แวร์เซิร์ฟเวอร์ควรสร้างบัญชีผู้ใช้ใหม่และเรียกใช้ข้อมูลประจำตัวนั้น
Josef
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.