Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1763
  • Last Modified:

Running VBscript as a local admin

I'm trying to have this vbscript run as a admin account that is local to every machine on our network. "!Admin". How do i get this to work without having to put the specific local hostname of each machine and where would i have the password in the script for the admin account not to prompt?
RemoveVirtScroll.vbs
0
TropicalPriest
Asked:
TropicalPriest
  • 7
  • 4
1 Solution
 
CSI-Windows_comCommented:
Will the script be run by users who do not have admin rights or will it be run by a background service of the software distribution system?
0
 
TropicalPriestAuthor Commented:
the script will be run remotely through a Kaseya server. No user interaction.
0
 
CSI-Windows_comCommented:
If the script is configuring something that is NOT part of a user profile, you can configure it as a "System Startup" script to get admin rights.

In Group Policy Editor this is under "Computer Configuration > Windows Settings > Scripts (Startup/Shutdown) > Startup"

A reboot will be required to run the script.
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
CSI-Windows_comCommented:
I am not familiar with Kaseya server - but most likely it runs your scripts using a background process that already has admin rights.  

Services under Windows 7 DO NOT HAVE UAC even when UAC is enabled.

In otherwords services with admin rights work just like they did on XP.

This is called an "unfiltered token."

If, however, Kaseya is actually running the script silent, but under the logged in user's non-admin profile - that is a completely different problem and I can propose some solutions for it as well.
0
 
CSI-Windows_comCommented:
Forgot to mention - if you are sending it through a background service, the best way to test what your script (or any program for that matter) will do in regard to UAC is to run it in an elevated command prompt.  If you get no UAC prompt there, then you have a 99.999% chance you won't get one running under a service that is logged in as SYSTEM or any account with local admin.
0
 
TropicalPriestAuthor Commented:
i need something like this,

Set objShell = CreateObject("WScript.Shell")
WshShell.Run """%systemroot%\system32\runas.exe"" /user:(domian here)\testtaker-team ""%programfiles(x86)%\testtkr\testtkr.exe""", 1, false

objShell.Exec("rundll32.exe ""C:\Program Files\Lenovo\VIRTSCRL\cleanup.dll"",InfUninstall  DefaultUninstall.LH 132 C:\Program Files\Lenovo\VIRTSCRL\tpdu_vs.inf")

The second part is the command i want to run. That part works when i run it as my domain admin account locally. the first part is a run as domain account example but i don't know how to change that to reflect the use of a local admin account then run the second line.
0
 
CSI-Windows_comCommented:
Should be:

Set objShell = CreateObject("WScript.Shell")
WshShell.Run """%systemroot%\system32\runas.exe"" /user:(domian here)\testtaker-team "rundll32.exe ""C:\Program Files\Lenovo\VIRTSCRL\cleanup.dll"",InfUninstall  DefaultUninstall.LH 132 ""C:\Program Files\Lenovo\VIRTSCRL\tpdu_vs.inf"" ", 1, false
0
 
TropicalPriestAuthor Commented:
So Admin account is called "!Admin" how do i set it to use that account?

/user:localhost\!Admin?

When using these scripts there is now need to put the password for the specified account anywhere in the script?
0
 
TropicalPriestAuthor Commented:
I've been trying the following and i've had no luck.

Set objShell = CreateObject("WScript.Shell")
WshShell.Run """%systemroot%\system32\runas.exe"" /user:teamschools\!Admin "rundll32.exe ""C:\Program Files\Lenovo\VIRTSCRL\cleanup.dll"",InfUninstall  DefaultUninstall.LH 132 ""C:\Program Files\Lenovo\VIRTSCRL\tpdu_vs.inf"" ", 1, false
0
 
CSI-Windows_comCommented:
TropicalPriest,
There is no way to automate the runas command prompt.

I realize you and I never caught up on how you are running the script on clients.  Are you going to run the script through Kaseya's windows service on each desktop?

If so, then you don't need "runas" at all - your entire script will run with admin rights and there is no need to attempt to do a runas with an admin account.

Make sure you have tested your script through the distribution system or under an elevated CMD prompt WITHOUT the runas part - if it works, you're done.

If it does not work, there are many tools that do a secure runas with alternate credentials:

http://www.steelsonic.com/steelrunas.htm - this is not free, but the last freeware version (1.2) can be found here: http://www.freewarefiles.com/downloads_counter.php?programid=26832

http://www.joeware.net/freetools/tools/cpau/

http://www.chessware.ch/runitas/

There is also a free enterprise tool that allows you to configure anything to run with admin credentials via group policy - a little bit fussy if this is a one time need:

http://www.scriptlogic.com/products/privilegeauthority/
0
 
CSI-Windows_comCommented:
If the group of machines is small enough to do manually from your desk, you could also use psexec to remotely execute commands with admin.

http://live.sysinternals.com/psexec.exe
0

Featured Post

Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

  • 7
  • 4
Tackle projects and never again get stuck behind a technical roadblock.
Join Now