คำสั่ง Runas สำหรับผู้ใช้ที่ไม่มีรหัสผ่าน


9

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

ฉันสามารถทำผิดขั้นพื้นฐานบางอย่างได้เนื่องจากฉันไม่ได้รับประสบการณ์อย่างมากกับพรอมต์คำสั่ง

คำตอบ:


13

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

ไปที่ Start | วิ่ง. พิมพ์secpol.mscและกด Enter ไปที่นโยบายท้องถิ่นจากนั้นเลือกตัวเลือกความปลอดภัย หานโยบายที่ระบุว่าบัญชี: จำกัด การใช้บัญชีท้องถิ่นของรหัสผ่านที่ว่างคอนโซลเข้าสู่ระบบเท่านั้น ตั้งเป็นปิดใช้งาน


+1 สำหรับการไม่บอกให้ปิดการใช้งาน UAC อย่างน้อยพวกเขาก็ปล่อยให้มันเปิดใช้งาน!
Mark Allen

4

คุณสามารถใช้ VBScript เพื่อยกระดับคำสั่ง:

Set objShell = CreateObject("Shell.Application")
objShell.ShellExecute "cmd.exe", "", "", "runas", 1 

บันทึกเป็น*.vbsแล้วเปิดด้วยcscriptหรือwscript


เคล็ดลับดี รับ +1
Jet

3

ฉันเชื่อว่าคุณสามารถใช้PSexec.exeของ SysInternal เพื่อบังคับระดับความสูง

คุณสามารถลองใช้ตัวอย่างนี้: psexec \\%computername% -i -h notepad.exe


เคล็ดลับดี นอกจากนี้ยังใช้งานได้โดยไม่มีพารามิเตอร์ "1" ตัวสุดท้าย
Jet

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

3

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

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

คำสั่ง su ที่ฉันรวมอยู่กับ Hamilton C shell ของฉัน (การเปิดเผยอย่างเต็มรูปแบบ: ฉันเป็นผู้เขียน) มีตัวเลือก sudo ที่แก้ปัญหานี้และนี่คือวิธีที่ฉันทำ: เมื่อคุณขอให้ su เรียกใช้คำสั่งที่ยกระดับขึ้น เก็บไว้เป็น elevate.exe ที่ทำเครื่องหมายเพื่อยกระดับ ยกระดับจากนั้นจับมือผ่านหน่วยความจำที่ใช้ร่วมกันด้วย su เพื่อส่งผ่านอาร์กิวเมนต์บรรทัดคำสั่งไดเรกทอรีปัจจุบันและสภาพแวดล้อมข้ามขอบเขตการยกระดับจากนั้นยกระดับการรันคำสั่ง


0

ฉันวิ่งข้ามRunAsSpcที่จะใช้คำสั่ง RunAs แต่รวมถึงความสามารถในการอ่าน / เขียนด้วยการเข้ารหัสเพื่อไม่ให้รหัสผ่านของคุณปรากฏ

ผู้แต่งระบุความต้องการเหล่านี้โดยใช้ RunAsSpc

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

0

คุณสามารถใช้suยูทิลิตี้ มันยกระดับผ่าน UAC คุณสามารถดาวน์โหลดได้ที่นี่

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