web-dev-qa-db-ja.com

SQLマップはxp_cmdshellプロシージャの有効化に失敗します

私は次の問題に関するヘルプを探してウェブを閲覧しています。私は現在Webアプリケーションの侵入テストを行っており、美しいブラインドSQLインジェクションに遭遇しました。

Sqlmapを使用して、データベース全体を取得できます。現在データベースで無効になっているxp_cmdshell機能を使用して、OSレベルにジャンプしたいと思います。アプリケーションは「sa」アカウントで実行されているため、技術的に可能であるはずです。しかし、sql mapを使用して有効にしようとすると、次のメッセージが表示されます。

[12:14:22] [INFO] checking if xp_cmdshell extended procedure is available, please wait..
xp_cmdshell extended procedure does not seem to be available. Do you want sqlmap to try to re-enable it? [Y/n] 
[12:14:23] [WARNING] xp_cmdshell re-enabling failed
[12:14:23] [INFO] creating xp_cmdshell with sp_OACreate
[12:14:23] [WARNING] xp_cmdshell creation failed, probably because sp_OACreate is disabled
[12:14:23] [CRITICAL] unable to proceed without xp_cmdshell

一部のシステム情報:

web server operating system: Windows 2012 
web application technology: ASP.NET 4.0.30319, ASP.NET, Microsoft IIS 8.0
back-end DBMS: Microsoft SQL Server 2008

誰かがこれを解決する方法を知っていますか?

2
AnonZed

--priv-escをsqlmapに渡してみると、特権が上がる可能性がありますが、これは私にとってはうまくいきませんでした。 sqlmapのファイルシステムアクセス関数は、より大きな妥協につながる可能性があります。

SQLNinja は特権の昇格に優れています。それがサポートする1​​つの攻撃は、SQLインジェクションを使用してSAパスワードをブルートフォースで強制することであり、これは非常に効果的であることがわかりました。 SQLNinjaには、CVE-2010-0232などの他の既知の権限昇格エクスプロイトも含まれています。

1
rook

あなたが使っているツールがわかりません。しかし、xp_cmdshellを有効にするには、次のようにします。

EXEC sp_configure

現在構成されているすべての値をリストできます。ファーストラン

EXEC sp_configure 'show advanced options', 1
GO
RECONFIGURE
GO

すべての値を表示します。次に実行します

EXEC sp_configure 'xp_cmdshell', 1
GO
RECONFIGURE
GO

それを有効にします。私はSQL 2008サーバーでこれを試しました。新しいバージョンにさらに制限があるかどうかはわかりませんが、私は知りません。

また、正しく構成されている場合は、CMDコマンドをSQLアカウントで実行することにも注意してください。SQLアカウントは通常、制限付きアカウントであり、マシンに対する管理者権限を持っていません。実際には、データベースフォルダーにのみアクセスでき、他には何もアクセスできません。

1
http