PDA

Visualizza versione completa : Programma che richiede diritti di Administrator


Gerry81
19-06-2006, 18.18.58
Salve a tutti,

PROBLEMA: Un utente (con privilegi di normale user) deve utilizzare un programma di traduzione installato su un pc aziendale su cui gira Windows XP. Il programma pare imponga che l'utente sia obligatoriamente un administrator per poterlo utilizzare.
Come posso far si che un USER qualunque abbia la facoltà di utilizare il programma senza esporre il pc ai rischi tipici a cui è soggetto un pc con troppi amministratori inesperti ?
La soluzione potrei trovarla modificando qualche chiave di registro ?
Se si, come deduco quali sono quelle adatte ?

Grazie

Semi.genius
19-06-2006, 19.40.21
BEh...se deve eseguire per forza in modalità administrator, puoi avviarlo con credenziali diversi però devono comunque sapere una password di amministrator.
Comunque diventerà administrator solo usando quel programma e l'utente non ha accesso come administrator.

basta selezionare il programma e fare tasto dx-->Esegui come...

borgata
19-06-2006, 19.41.33
prova ad eseguire il programma come administrator (tasto destro sull'eseguibile -> esegui come)

xenon
20-06-2006, 17.42.29
Scusate, la combinazione e': "shift + tasto destro" sull'eseguibile oppure da shell testuale (cmd.exe) "runas /?"

Gergio
20-06-2006, 18.50.57
se usi il comando runas ogni volta bisogna inserire la password...
ci sono degli script o dei programmini che lo fanno in automatico, in modo che solo la prima volta vada digitata.
ho trovato qsto http://www.sysadmin.it/pages/script/script.asp?ID=136 ma non l'ho provato personalmente. Pero' mi ricordo che tempo fa avevo scaricato un programmino che creava dei collegamenti ai software che interessavano. Lo facevi partire dall'account amministratore e poi assegnavi a ogni utente ogni programma con le credenziali appropriate, immettendo le relative password. Purtroppo non ricordo come si chiamasse, ci ero arrivato googlando un po'.

Gerry81
21-06-2006, 08.55.31
dunque io purtroppo ho la necessità di far si che l'utente possa utilizzare quel programma come admin ma che nella maniera più assoluta non debba poter acedere a nessun altra risorsa come admin... se faccio "accedi come..." poi cmq lui è acconoscenza della pwd di un account con privilegi di amministratore, quindi nulla gli impedirebbe di disconnettersi e riconnettersi con diverso account no ?
spero di non aver detto una fesseria :\
ho cercato un po di utiliy ma il massimo che ho trovato è "DropMyRights" che fa il contrario, cioè diminuisce i propri permessi per alcuni processi selezionati, a me serve il contrario.

p.s. purtroppo quel link non funge

borgata
21-06-2006, 09.57.11
non funge il link o non funge lo script che riporta?
Perchè io il link lo apro benissimo...

In ogni caso, non potresti avviare tu questo programma una volta, all'inizio, e quindi lasciarlo aperto in modo da permettere loro di utilizzarlo?

Gergio
21-06-2006, 09.57.38
:mm: l'ho appena provato e funziona cmq prova a guardare qsto: http://www.wingnutsoftware.com/erunas.html

Gerry81
21-06-2006, 12.18.10
Il programma che mi hai postalo l'ho testato e potrebbe essere un ottima soluzione finale, un "ultima spiaggia diciamo", ma potrebbe esistere na soluzione meno invasiva anche se più complicata.

Ho pensato:
Il programma di traduzione installato crea una cartella dedicata e dentro tutto ciò che gli necessita al funzionamento;
probabilmente sono solo alcune istanze che necessitano di privilegi amministrativi per essere avviate e di conseguenza caricare l'eseguibile correttamente.
Non sarebbe possibile secondo questa logica rintracciare le chiavi di registro (del programma installato) che regolano le autorizzazioni necessarie per eseguire quell'istanza ?
se ci pensate bene pochi programmi negano l'utilizzo ad un normale user, al massimo negano l'installazione... quindi se si modificassero queste chiavi forse sarebbe possibile il normale utilizzo come un qualsiasi programma no ? ho detto da cavolata ?

Gerry81
21-06-2006, 12.23.58
non funge il link o non funge lo script che riporta?
Perchè io il link lo apro benissimo...
In ogni caso, non potresti avviare tu questo programma una volta, all'inizio, e quindi lasciarlo aperto in modo da permettere loro di utilizzarlo?

Praticamente come admin funziona una meraviglia, uguale se lo avvio da "runas" sempre come admin.
Se invece lo utilizzo come normale user l'eseguibile si carica ma il programma non riesce (credo) a collegarsi al database server appunto per sincronizzarsi e prepararsi alla traduzione, in fatti dice "Impossibile trovare copie di lingue nel server", il programma in questione è "Power Translator".

L'azienda è molto grande, io non posso mica farmi il giro tutte le mattine ed attivare come admin il programma, devo trovare il modo di raggirare questa protezione facendo si che si possa utilizzare come normale user.

Gergio
21-06-2006, 12.27.13
... devo trovare il modo di raggirare questa protezione facendo si che si possa utilizzare come normale user.
qsta frase mi fa venire in mente che in qsto modo potresti andare contro la licenza del software in qstione: prova a controllarla ;)

Gerry81
21-06-2006, 14.02.56
beh ma io non tocco minimamente il sorgente del software, al massimo altrero il mio di sistema...
non esiste una licenza che ti imponga di usare un software con determinati privilegi obligatoriamente no ?

Gergio
21-06-2006, 14.18.07
non lo so: controlla

Gerry81
21-06-2006, 15.19.17
la licenza è ok, il problema è semplice, per un qualche motivo ignoto la softwarehouse ha optato per un utilizzo del software esclusivamente con privilegi amministrativi, ho provato su altri pc ed è la stessa identica cosa.

Le soluzioni sono 3:

1) Devo utilizzare l' encrypted runas

2) Modifico il registro di sistema rendendo disponibili le istanze richiamate dal programma anche ad utenti non amministrativi

3) concedo la password di amministratore all'utente sperando che non succeda nulla.

la seconda è quella per cui tendo... :)

UG0_BOSS
22-06-2006, 01.35.24
puoi creare un piccolo prgramma in C, da collocare nella stessa cartella dove si trova l'eseguibile di "power translator".


#include <stdio.h>
main () {
system("qua inserisci la stringa da passare al prompt")
}


Così almeno una volta compilato con un doppio click verrà eseguito il programma con i diritti di amministratore, senza che la password possa essere letta da nessuno, dato che è contenuta nella stringa compilata nell'eseguibile

Gerry81
22-06-2006, 08.47.47
puoi creare un piccolo prgramma in C, da collocare nella stessa cartella dove si trova l'eseguibile di "power translator".
Così almeno una volta compilato con un doppio click verrà eseguito il programma con i diritti di amministratore, senza che la password possa essere letta da nessuno, dato che è contenuta nella stringa compilata nell'eseguibile
si potrebbe essere una soluzione, in ogni caso non guadagna privilegi di admin, se chi esegue lo script è user anche lo script sarà eseguito come user o no ? cioè manca tutta la parte di autenticazione...
per quanto riguarda le chiavi di registro dite che non esiste modo ? :\

xenon
22-06-2006, 10.15.06
puoi creare un piccolo prgramma in C, da collocare nella stessa cartella dove si trova l'eseguibile di "power translator".
Così almeno una volta compilato con un doppio click verrà eseguito il programma con i diritti di amministratore, senza che la password possa essere letta da nessuno, dato che è contenuta nella stringa compilata nell'eseguibile

Ciao UGO, sfortunatamente la cosa e' un po' piu' complessa con MS... Il processo si dovrebbe lanciare con la funzione "CreateProcessWithLogon" solo che questa per funzionare ha bisogno una modifica ben piu' radicale al livello di policy (se non sbaglio e': Impostazione di protezione\Criteri Locali\Assegnazione Diritti Utente "Agire come Parte del Sistema Operativo" con permessi per l'utente), per questo ho rinunciato all'utilizzo di quella funzione per un programma che mi snelliva determinate procedure al lavoro (sono sempre un sistemista, la sicurezza al primo posto ;) )

Cmq, tornando intopic, secondo me la migliore soluzione e' capire cosa l'applicazione vuol fare (con tool quali FileMonitor e RegMonitor) e dare permessi di scrittura solo e solamente a quelle parti, sia di registro che di file system che l'applicazione tenta di scrivere (ok, e' un po' laborioso ma divertente)

Gerry81
22-06-2006, 14.05.45
OKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK

fermi tutti forse ci siamo ehehehhe

Dunque, la formula magica è:

runas /user:Administrator program.exe

se compilo un piccolissimo programma in C che mi avvia da prompt il RunAs, posso avviare l'applicazione con privilegi di admin senza mostrare la password dato che non si può passare dal'eseguibile al sorgente.

Da cmd.exe risulta infatti:

C:\Documents and Settings\user>runas /user:Administrator traduttore.exe
Immettere la password per Administrator:

in sostanza devo solo trovare il modo per compilare il campo password automaticamente, ma ho provato a creare un file batch del tipo
runas /user:administrator cmd.exe
password

ma continua a darmi errore, invece se lo faccio manualmente funziona tutto, forse devo scrivere qualcosa in particolare per dargli il campo password ?

UG0_BOSS
22-06-2006, 14.30.06
OKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK
fermi tutti forse ci siamo ehehehhe
Dunque, la formula magica è:
runas /user:Administrator program.exe
se compilo un piccolissimo programma in C che mi avvia da prompt il RunAs, posso avviare l'applicazione con privilegi di admin senza mostrare la password dato che non si può passare dal'eseguibile al sorgente.
Da cmd.exe risulta infatti:

C:\Documents and Settings\user>runas /user:Administrator traduttore.exe
Immettere la password per Administrator:
in sostanza devo solo trovare il modo per compilare il campo password automaticamente, ma ho provato a creare un file batch del tipo
runas /user:administrator cmd.exe
password
ma continua a darmi errore, invece se lo faccio manualmente funziona tutto, forse devo scrivere qualcosa in particolare per dargli il campo password ?

Esatto, è quello che cercavo di dire io... il problema adesso sta nel trovare il modo di passare a runas la password di admin...

xenon
22-06-2006, 14.53.39
Non mi sembra sia possibile

Gerry81
22-06-2006, 15.09.38
Non mi sembra sia possibile

doh! effettivamente ho provato in tutte le cobinazioni possibili e googlando un po non ho trovato nulla a riguardo :mm:

possibile che non esista una soluzione ?

xenon
22-06-2006, 15.25.41
doh! effettivamente ho provato in tutte le cobinazioni possibili e googlando un po non ho trovato nulla a riguardo :mm:

possibile che non esista una soluzione ?

Si, non esiste, o meglio, quella che ti ho dato prima e' una possibile, l'altra e' quella di scrivere un "servizio" perche' l'utente "system" ha delle credenziali piu' forti dell'administrator.

Thor
22-06-2006, 15.42.58
potresti usare un programmino tipo sudoWn:
http://sudown.mine.nu/

quando chiede la pw di admin, farla inserire automaticamente da soft tipo RtvReco
http://www.clearlight.com/~rtvsoft/RtvReco.htm
che puoi far girare invisibile..o addirittura mascherare dai processi in task manager (ma qui mi sa che ti serve un altro soft per far questo)

lo so, è tortuoso..ma puoi provare!

xenon
22-06-2006, 15.52.55
potresti usare un programmino tipo sudoWn:
http://sudown.mine.nu/


Che difatti e' un servizio ;)