Toon posts:

[XP pro sp2] Runas naar de achtergrond..

Pagina: 1
Acties:
  • 719 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Tijdens User Logon wil ik een process killen en onder een ander account met Runas en gebruik van vbs SendKeys method weer starten. Leuk en aardig maar ik krijg hier altijd een korte flash van Runas:Type password>, indien de gebruiker slim en heel snel is en op het toetsenbord begint te raggen of met de muis begint te klikken, hiermee een ander venster activeert dan runas, interrupt hij het script en worden de sendkeys in het verkeerde venster toegepast. En het process wordt dan niet gestart. De AppActivate method bied me hier ook geen fool proof alternatief. Dit proces moet starten en wil ik de gebruiker op deze manier toegang tot dit proces verbieden.

Eigenlijk wil ik de Gebruiker helemaal niet op dit idee brengen en ben naarstig opzoek geweest naar een methode om een commando als Runas op de achtergrond door te voeren zonder dat de gebruiker er erg in heeft dat er ook maar iets gebeurt.

Ook is er geen optie om het proces als service te laten starten onder een ander account hij is afhankelijk van en start al samen met een LocalSystem service op onder local useraccount.

Is hier iemand die bekend is met een methode om Runas.exe op de achtergrond te houden? Of misschien een Total andere work around kan aandragen?

Ik heb ook aan mogelijkheden zitten denken om keyboard en mouse input uit te schakelen tijdens de uitvoering van dit script, maar dat lijkt ook niet zo simpel als het klinkt. |:( . Misschien weet iemand of dat voor elkaar te toveren is.

BvD :)

ps. Zoals natuurlijk bij de meeste werkgevers, we willen alles maar mag het niets kosten. ;)
(Anders was het probleem al opgelost met andere software..)

Voorbeeld script

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
      Option Explicit 
  
  Dim WshShell
  Dim objWMIService, objProcess, colProcess
  Dim strComputer, strProcess
  
    strComputer = "." 
    strProcess = "'ctfmon.exe'" 
  
  Set objWMIService = GetObject("winmgmts:" _
  & "{impersonationLevel=impersonate}!\\" _ 
  & strComputer & "\root\cimv2") 
  
  Set colProcess = objWMIService.ExecQuery _
  ("Select * from Win32_Process Where Name = " & strProcess )
    For Each objProcess in colProcess
    objProcess.Terminate()
    Next 

'Hier begint het gedonder..
Set WshShell = CreateObject("wscript.Shell")

    WshShell.Run "runas /noprofile /user:AnyUser ctfmon.exe"

WScript.Sleep 100
WshShell.AppActivate "runas.exe"

WshShell.SendKeys "~"
 
Wscript.quit

  • Jake Bullet
  • Registratie: Januari 2002
  • Laatst online: 11-02 09:09

Jake Bullet

Wise Scripter

Wat wil je nou precies doen met de sendkeys? Het wachtwoord opgeven? Kijk eens naar lsrunas

Je kill stukje is wel okee.

Verwijderd

Topicstarter
Jake Bullet schreef op woensdag 23 januari 2008 @ 23:40:
Wat wil je nou precies doen met de sendkeys? Het wachtwoord opgeven? Kijk eens naar lsrunas

Je kill stukje is wel okee.
:) Die SendKeys ? :) ook al heb je geen wachtwoord iets of iemand moet bij runas toch op enter drukken ;) en daar kan het dus fout gaan.en maakt van runas een te slordige oplossing waar de gebruiker een stokje voor kan steken, als hij op het juste moment wat toetsen indrukt. Er zitten altijd wel van die hackertjes tussen die dat snel door hebben, niet voor niets dat ik dit lopend proces moet zien te beveiligen. (Het is btw niet ctfmon.exe dat is maar een soortgelijk voorbeeld dat iederen bijna wel kent)..

Maar jouw Isrunas lijkt me een goed alternatief, die was ik nog niet eerder tegen gekomen..
Hartelijk bedankt, ik ga er eens mee spelen _/-\o_

  • Fish
  • Registratie: Juli 2002
  • Niet online

Fish

How much is the fish

@ ervoor ?

@runas blablabalbal

of start je script ,met "@echo off"

dit is zooooo 1988 .... echt waar ;)

[ Voor 54% gewijzigd door Fish op 24-01-2008 00:50 ]

Iperf


  • alt-92
  • Registratie: Maart 2000
  • Niet online

alt-92

ye olde farte

zelfs met lsrunas ga je risico's lopen als ik dat zo even bekijk - je zou dan alsnog het password meesturen in je file, en dat is ook een security risk.
Nou kan je dat wel weer obfuscaten door je vbscript te gaan encoden, maar dan nog...

ik heb een 864 GB floppydrive! - certified prutser - the social skills of a thermonuclear device


Verwijderd

Topicstarter
fish schreef op donderdag 24 januari 2008 @ 00:49:
@ ervoor ?

@runas blablabalbal

of start je script ,met "@echo off"

dit is zooooo 1988 .... echt waar ;)
Zozo 1988, echt waar? ;) Heb je nog meer van die?
Afbeeldingslocatie: http://members.home.nl/alsdewiedeweerga/Bull/Pic/Shot001.jpg
:O

Het is geen batch hoor het is een cmd via vb run method ;) en ook al is de echo off als ze een cmd flash zien tijdens login kan een slim ict'rtje in spe snel indenken wat er speelt als hij daarna plots niet maar met zijn favo procesje mag knoeien die eerst onder zijn eiegen account draaide..
Ik ben zeker niet alleen op deze wereld met dit soort ideeen.

  • g4wx3
  • Registratie: April 2007
  • Laatst online: 12-10-2025
Ik snap niet helemaal je bedoeling,

Je probeert een script (login) uit te laten voeren als admin, of wil je de gebruiker de mogelijkheden geven verder te gaan als admin, voor een bepaald programma?

In elk geval mischien kan ik je wel helpen, maar mischien kende je het al:
een vervanger voor runas: Sudo of RunATtools

Zoals meestal, biedt een vervanger meer opties, maar je zult je waarschijnlijk wel even erin moeten verdiepen, want bij mij werkte het niet meteen. (en ik zit trouwens nu weer op admin, foei!)

De vervanger waar ik het over heb is:

1 RunAsTools (supermakkelijk)
http://www.softpedia.com/...wn-Tools/RunAsTools.shtml

2 SuDo (KRACHTIG (bv rechtsklik op programma => sudo)
http://sourceforge.net/projects/sudowin

Over SuDo:
ik weet niet meer of het erbij zat, of dat ik het zelf heb gemaakt, maar rechter klik voeg je zo toe:
code:
1
2
3
4
5
6
7
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\exefile\shell\sudo]
@="Open with Sudo"

[HKEY_CLASSES_ROOT\exefile\shell\sudo\command]
@="sudo.exe -r \"%1\"

sudo.exe moet zicht dan in de windowsmap bevinden, en geconfigureerd zijn, start het programma zonder parameters om te weten hoe.

en zo verwijder je het weer
code:
1
2
3
Windows Registry Editor Version 5.00

[-HKEY_CLASSES_ROOT\exefile\shell\sudo]



Laat ons weten wat je ontdekt thanks!

BTW: aanvullende/overbodige informatie..
http://www.sans.org/readi...c21ac0a0f7c09844e20228114



heb deze post wat lang open laten staan er staat blijbaar nu heel wat meer in het topic of ikhad het niet goed gezien. in iedere geval, duso is nog altijd bruikbaar

MS heeft ooit VBS gemaakt, kun je ontzettend veel mee, is ontzettend krachtig.

Overigens, Als je in windows Registry gaat kijken, dan heb je een ergens RunOnce staan, normaal voorzien voor een unattended instalation, maar als je deze gebruikt, en telkes opnieuw schrijft bij je inlog script, dan kan de gebruiker echt niks anders doen. Is het ook niet mogelijk om het scherm te locken, dmv een dialoog venster, zonder OK button, dat automatisch gesloten word door het script?

[ Voor 18% gewijzigd door g4wx3 op 24-01-2008 01:26 ]

http://www.softfocus.be/


  • alt-92
  • Registratie: Maart 2000
  • Niet online

alt-92

ye olde farte

Leuk, maar het is denk ik niet de bedoeling dat een enduser dit als configuratieoptie te zien krijgt (juist niet).
Overigens is (bijna) elke tool die op commandline het password als argument vreet niet acceptabel als je dit secure wil houden..
Ik vermoed dat je http://www.microsoft.com/...pts/running/cscte044.mspx als voorbeeld hebt genomen?

Ik zou dan ook geen cmd met objShell.run willen aanroepen maar je process met alternate credentials in het script zelf aanslingeren.

[ Voor 35% gewijzigd door alt-92 op 24-01-2008 01:33 ]

ik heb een 864 GB floppydrive! - certified prutser - the social skills of a thermonuclear device


Verwijderd

Topicstarter
alt-92 schreef op donderdag 24 januari 2008 @ 00:59:
zelfs met lsrunas ga je risico's lopen als ik dat zo even bekijk - je zou dan alsnog het password meesturen in je file, en dat is ook een security risk.
Nou kan je dat wel weer obfuscaten door je vbscript te gaan encoden, maar dan nog...
Dat zal zo'n vaart niet lopen het script wordt als vbe in een C++ package(.exe) converteerd en dan gebruikt. En in ieder geval kan het account waarin het proces wel gestart gaat worden ook een beperkt local account zijn, dat mogen ze gerust hacken en daar inloggen dan hebben ze nog minder rechten dan in hun eigen account, zullen ze weten te waarderen na al dat werk om die c++ package en die vbe te decoden. (Doen ze maar 1 keer komt er een weer een andere en kunnen ze weer opnieuw beginnen.
(Wie heeft de langste adem :D ) Dit account wordt speciaal alleen gebruikt voor dit proces te starten tijdens logon van andere limited user accounts.. Is reeds volledig getest en wekt feilloos maar alleen die Runas.exe doet niet alles wat ik wil. Die moet ik met sendkeys benaderen en dat wil ik niet..

ps. probeer het maar eens uit met 2 normale beperkte user accounts. Stop ctfmon.exe (Loopt onder eigen accountnaam) restart ctfmon.exe met ander beperkt account en probeer het daarna weer te stoppen of te pauseren met pssuspend.. Resultaat is Access denied.. that's my goall.. Komt geen admin aan te pas.. :)

[ Voor 11% gewijzigd door Verwijderd op 24-01-2008 01:34 ]


  • alt-92
  • Registratie: Maart 2000
  • Niet online

alt-92

ye olde farte

Dat snap ik :)
Alleen denk ik dat je verder komt als je gaat spelen met iets als
Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
strComputer = "." 
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\CIMV2") 
' Obtain the definition of the class.
Set objShare = objWMIService.Get("Win32_Process")

' Obtain an InParameters object specific
' to the method.
Set objInParam = objShare.Methods_("Create"). _
    inParameters.SpawnInstance_()


' Add the input parameters.
objInParam.Properties_.Item("CommandLine") =  "notepad"

' Execute the method and obtain the return status.
' The OutParameters object in objOutParams
' is created by the provider.
Set objOutParams = objWMIService.ExecMethod("Win32_Process", "Create", objInParam)


En dat onder alternate credentials laat lopen met de ConnectServer methode :)
.

Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Const WbemAuthenticationLevelPktPrivacy = 6

strComputer = "atl-ws-01"
strNamespace = "root\cimv2"
strUser = "Administrator"
strPassword = "4rTGh2#1"

Set objWbemLocator = CreateObject("WbemScripting.SWbemLocator")
Set objWMIService = objwbemLocator.ConnectServer _
    (strComputer, strNamespace, strUser, strPassword)
objWMIService.Security_.authenticationLevel = WbemAuthenticationLevelPktPrivacy

Set colItems = objWMIService.ExecQuery _
    ("Select * From Win32_OperatingSystem")
For Each objItem in ColItems
    Wscript.Echo strComputer & ": " & objItem.Caption
Next


Cut 'n paste in de juiste volgorde enzo :P

[ Voor 29% gewijzigd door alt-92 op 24-01-2008 01:44 ]

ik heb een 864 GB floppydrive! - certified prutser - the social skills of a thermonuclear device


Verwijderd

Topicstarter
alt-92 schreef op donderdag 24 januari 2008 @ 01:41:
Dat snap ik :)
Alleen denk ik dat je verder komt als je gaat spelen met iets als
Cut 'n paste in de juiste volgorde enzo :P
Das geweldig mooi spul hartelijk bedankt. :9~ MEER MEER... waar vind je zulke voorbeelden allemaal op het net.. Links zijn meer dan welkom.. Ben nog niet zo heel lang bezig met vbs en doe het allemaal zo'n beetje voor de lol op eigen houtje via google.. Soms heb ik dmv lack of knowledge gewoon niet de juiste search query om dit soort dingen te vinden.

In dit geval is dit net weer iets te zwaar en zoek ik zoiets dat gewoon local werkt, hoef niet via het domein of server.. Ik krijg bij bovenstaand script de error "User credentials cannot be used for local connections"..

Maar ik ga hier zeker eens flink me stoeien, ben ik weer even zoet.. 8)

  • pedorus
  • Registratie: Januari 2008
  • Niet online
Het typische is dat ik als eerste hit een artikel hierover van MS krijg. Wellicht is het enkel een probleem dat je dan het password als plain-tekst moet opgeven.. (Misschien kun je iets met execute zonder read-permissies proberen, geen ervaring)

Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten


Verwijderd

Topicstarter
Dankje :) en dat als eerste hit nogwel. :$

Verwijderd

Topicstarter
jongens en meisjes :D allemaal hartelijk bedankt voor jullie waardevolle input en inspiraties.
Heb weer veel geleerd en daar doen we het voor..

Hoewel als ik wat verder gekeken had dan me neus lang is had ik me die tijd kunnen (niet willen :) ) besparen. Mijn probleem heeft zich opgelost met een tooltje notabene gevonden op een site die al jaren in mijn favos zat verstopt :$ B) en hoef ik het wiel gelukkig niet opnieuw uit te vinden de tool voldoet aan meer dan wenselijk is..

http://www.ss64.com/nt/runas.html

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

*O*
Pagina: 1