426 messaggi dal 17 aprile 2006
non se usi:
EXECUTE master.dbo.xp_cmdshell 'start c:\MyProgram.exe'
così non aspetta la fine

Ciao Alessandro
bene a sapersi
ma i miei dubbi rimangono, non la usere mai se non per lanciare comadi dos.
con un servizio windows hai un controllo migliore.

comunque se fa al caso di New ben venga.

ciao marco
Modificato da nostromo il 02 febbraio 2007 19.03 -

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
mi sono appassionato alla cosa  (anche se sql non è il mio pane)

con il SP3 di Win 2000 va considerato questo:


By default, only members of the sysadmin role can execute xp_cmdshell. You should not change this default.

Do not grant execute permission on xp_cmdshell to users who are not members of the sysadmin role.



suppongo con tutti i problemi del caso.

se trovate altre notizie buttate dentro



ciao marco
Modificato da nostromo il 02 febbraio 2007 19.34 -

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
426 messaggi dal 17 aprile 2006
forse non era molto chiaro...

se l'utente del db non ha accesso alle stored di systema basterebbe creare un utente che vi possa accedere e creare una stored visibile all'utente che esegue asp.net
all'interno della stored inserire l'impersonificazione dell'utente di db appena creato e poi lanciare il comando exec master.dbo.xp_cmdshell 'nomeeseguibile.exe'

dunque all'interno della stored che esegue xp_cmdshell basta impersonare l'utente che può eseguire lo xp_cmdshell

Ciao Alessandro
2.410 messaggi dal 13 febbraio 2003
Contributi
xp_cmdshell funziona solo per i sysadmin inoltre di default è disattivata in MSSQL 2005 e soprattutto funziona sempre con le credenziali del utente usato dal servizio di MSSQL, e per buone regole non dovrebbe essere amministratore e quindi potrebbe non avere comunque i privilegi per far partire l'applicativo

<provocatorio>Comunque tornando a al problema iniziale visto che parliamo di intranet non capisco a cosa serva lanciare un eseguibile da web quando basterebbe fare 2 click su un collegamento sul desktop</provocatorio>
taccio ha scritto:
forse non era molto chiaro...
se l'utente del db non ha accesso alle stored di systema basterebbe creare un utente che vi possa accedere e creare una stored visibile all'utente che esegue asp.net
all'interno della stored inserire l'impersonificazione dell'utente di db appena creato e poi lanciare il comando exec master.dbo.xp_cmdshell 'nomeeseguibile.exe'
dunque all'interno della stored che esegue xp_cmdshell basta impersonare l'utente che può eseguire lo xp_cmdshell


certo che era chiaro ho riportato solo i cambiamenti apportati dal service pack 3.

prima, da quanto ho letto xp_cmdshell era libero e felice di fare più o meno quello che voleva.

per arrivare come diceva ithost a essere disattivato su sql server 2005.

la dice lunga su i "danni" che si possono fare.

per rispondere alla provocazione di ithost, i developer sono pagati per rendere difficile le cose facili, te pensa che adesso sto "inviluppando" un applicazione


ciao marco e buon fine settimana
Modificato da nostromo il 02 febbraio 2007 20.57 -

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
426 messaggi dal 17 aprile 2006

per arrivare come diceva ithost a essere disattivato su sql server 2005.
la dice lunga su i "danni" che si possono fare.

Se è per questo su sql server 2005 hanno disabilitato anche il clr che anchesso può fare innumerevoli danni, però si sono sforzati un tantinello per supportarne l'integrazione... della serie microsoft agli utenti lo disabilita così che se lo vuoi realmente usare lo riabiliti.

inoltre di default sono state disattivate innumerevoli altre funzioni.
E' la nuova politica Microsoft e proprio dal sito di Microsoft si legge:

SQL Server 2005 enables only a limited number of core features and services by default, thereby limiting the exposed surface area of the server and allowing administrators to enable only those services and features that are necessary in their environment.

Services and components that are disabled by default in SQL Server 2005 include: the Microsoft .NET Framework, SQL Service Broker Network Connectivity, and HTTP connectivity in Analysis Services. Other services such as SQL Server Agent, full-text search, and the new Data Transformation Services (DTS) service are set to start up manually and require explicit action to be set to start automatically.


in merito alla faccenda della modifica del service pack 3 beh io tuttora non credo sia necessario impedire il lancio di dtsrun per import / export o altre menate, e dunque pur non dando privilegi di sysadmin tramite exchamotage avevo riattivato il mio bravo xp_cmdshell. Poi cambiati gli scenari da 4 mesi circa non avendo più necessità ho fatto retromarcia.

qui un sistema per farlo:
http://www.novicksoftware.com/Articles/SQL-Server-2000-SP3-and-xp_cmdshell-Woes.htm

con estremo rispetto per le vostre opinioni, che sicuramente saranno più corrette delle mie (dati i riconoscimenti MVP che avete), a prescindere dalla soluzione della intranet che deve implementare il nostro amico, non credo sia assolutamente deprecabile l'uso di strumenti potenzialmente molto dannosi se ben controllati e protetti e sicuramente in sqlserver 2005 non avrei usato xp_cmdshell ma il clr disattivato da mamma microsoft ma caldamente consigliato dalla stessa anche a sostituzione di normale Transact-Sql
http://msdn2.microsoft.com/en-us/library/ms345147.aspx

la mia è solo un opinione che spero non abbia reso in maniera arrogante dato che rispetto sinceramente le opinioni degli altri anche se differiscono dalle mie.
Consiglio tuttavia all'amico New di seguire le dritte dei più titolati nel forum

Ciao Alessandro
su xp_cmdshell da quello che leggo i dubbi rimangono.

sul CLR, in Sql 2005 non so se sia caldamente consigliato, tando da sostituire le classiche query, in alcuni casi possono esserci dei benefici, ma spesso si ottiene un degrado delle prestazioni,hostare il clr ha un costo, insomma non va usato a priori ecco perche è disattivato

infine sul forum si viene per scambiare le opinioni, più che i riconoscimenti conta l'esperienza che viene condivisa.

ciao marco
Modificato da nostromo il 03 febbraio 2007 01.01 -

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.