xp_cmdshell je opravdu velmi silná procedura, která umožňuje spouštět příkazy přes příkazovou řádku (cmd). Pomocí cmdshell můžete přes SQL platformu realizovat jakoukoliv operaci nad Windows serverem – např. kopírování souborů, vytváření, mazání, spouštění bcp pro import a export dat, apod.
Z ale toho ale plynou také velká bezpečnostní rizika. Proto je také procedura defaultně vypnutá a nedoporučuje se její trvalé zapnut z bezpečnostních důvodů. Uživatelé, kteří mají právo execute této procedury mohou vykonávat jakékoliv operace nad serverem. Pokud cmdshell hodláte používat, tak mějte nastavenou striktní bezpečnostní politiku.
Jak zapnout cmdshell?
Postup:
- Povolíme změnu pokročilého nastavení serveru (show advanced options)
- Rekonfigurujeme krok 1
- Zapneme funkci xp_cmdshell
- Rekonfigurujeme krok 3
Skript:
— 1)
EXEC sp_configure ‘show advanced options’, 1
GO
— 2)
RECONFIGURE
GO
— 3)
EXEC sp_configure ‘xp_cmdshell’, 1
GO
— 4)
RECONFIGURE
GO