10
SPECIAL REPORT 반복되는 개인정보 유출로 인해, 이제는 대다수의 사람들이 IT 보안 전반의 필요성에 대해 인지하게 된 것으로 보인다. 그러나, ‘왜’ 해 야 하는지는 깨달았는지 몰라도 ‘어떻게’ 해야 하는 것인지에 대해서는 여전히 혼란스러워 하고 있는 듯 하다. 이글에서는 오라클의 MSA와 그것을 구성하는 DB 보안 솔루션에 대해 소개한다. 시간적, 물리적, 자원적 제한으로 인해 모든 것을 다 할 수 없는 상황이라면 ‘스마트’한 방법의 채택은 더욱더 중요해 질 것이다. 오라클 MSA 기반의 DB 보안을 이용하여 ‘스마트’하게 개 인정보를 보호할 수 있는 방법에 대해 알아보기로 하자. 노형준 부장한국 오라클, DB Security Solution Specialist 한국오라클 DB Security Solution Specialist로 재직중인 노형준 부장은 국내 최고의 DB 보안 솔루션 전문가다. 그는 아라기술 서울 연구소 개발팀장, 리얼네트웍스 APAC Senior Consultant, NISSI MEDIALG Senior Software Engineer , 전자 중앙연구소 교환 연구단 연구원으로 역임했으며, DB Security Solution의 권위자로서 각종 컨퍼런스에 활발하게 참여 하고 있다.

SPECIAL REPORT - Oracle...SPECIAL REPORT 반복되는 개인정보 유출로 인해, 이제는 대다수의 사람들이 IT 보안 전반의 필요성에 대해 인지하게 된 것으로

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

SPECIAL REPORT 반복되는 개인정보 유출로 인해, 이제는 대다수의 사람들이 IT 보안 전반의 필요성에 대해 인지하게 된 것으로 보인다. 그러나, ‘왜’ 해

야 하는지는 깨달았는지 몰라도 ‘어떻게’ 해야 하는 것인지에 대해서는 여전히 혼란스러워 하고 있는 듯 하다.

이글에서는 오라클의 MSA와 그것을 구성하는 DB 보안 솔루션에 대해 소개한다. 시간적, 물리적, 자원적 제한으로 인해 모든 것을 다

할 수 없는 상황이라면 ‘스마트’한 방법의 채택은 더욱더 중요해 질 것이다. 오라클 MSA 기반의 DB 보안을 이용하여 ‘스마트’하게 개

인정보를 보호할 수 있는 방법에 대해 알아보기로 하자.

노형준 부장 한국 오라클, DB Security Solution Specialist

한국오라클 DB Security Solution Specialist로 재직중인 노형준 부장은 국내 최고의 DB 보안 솔루션 전문가다. 그는 아라기술 서울

연구소 개발팀장, 리얼네트웍스 APAC Senior Consultant, NISSI MEDIALG Senior Software Engineer, 전자 중앙연구소 교환 연구단

연구원으로 역임했으며, DB Security Solution의 권위자로서 각종 컨퍼런스에 활발하게 참여 하고 있다.

ORACLE KOREA MAGAZINE

22

개인정보의 스마트한 보호를 위한

오라클 MSA(Maximum Security Architecture)

SPECIAL REPORT

프롤로그 – ‘개인’ 정보 아닌 ‘개인정보’

‘XX 인터넷과 TV 가입하셨던 대리점입니다. 3년 약정 날짜가 곧 만료되는데, 통신사 옮기시

면 다음과 같은 혜택을 드립니다.’

약 2개월 전, 그 당시 쓰고 있었던 통신사의 인터넷과 TV 약정 기간이 만료될 즈음, 통신사 이동

에 따른 혜택에 대한 안내 전화를 받았다. 알려 주지 않았으면 모르고 지나가서 받을 수 없었던

혜택인지라, 마음 한 켠에 고마움이 일었다.

그런데, 분명히 다른 번호, 즉 다른 대리점에서 유사한 내용의 전화가 걸려왔다. 처음에 온 전화

는 내가 가입했던 대리점이라 믿어 의심치 않았었기 때문에, 두 번째 온 전화를 받았을 때는 혼

동이 일어나기 시작했다.

‘도대체 이 대리점에서는 우리집 인터넷 약정이 끝나는 것을 어떻게 알 수 있었을까?’

그것이 끝이 아니었다. 약정이 만료되는 시점이 약 2주 정도 지날 때까지, 대략 열 군데 정도의

대리점으로부터 전화를 받았다. 그리고 나는 비로소 깨달았다.

‘아, 내 가입 정보를 포함한 개인정보가 유출 되었구나’

개인정보 유출 – 이미 끝난 건 아닐까?

재미있는 사실 하나는, 많은 사람들이 개인정보 유출과 관련해서 다음과 같은 생각을 하고 있

다는 것이다. ‘이미 내 정보는 공유 정보야. 더 이상 유출되어 봤자 무서울 것도 없어’. 그런데, 정

말 그럴까? 개인정보를 노리는 사람들이 또 다시 정보 유출을 시도 한다면, 단순히 그 전에 유출

SPRING 2015

23

된 ‘주민등록번호’ 등의 정보만을 캐내기 위한 유출을 시도할까? 분명히 그렇지는 않을 것이라

믿는다. 이미 알려진(?) 정보를 재확인하기 위해 범죄를 저지를 만큼 해커들은 멍청하지 않다.

즉, 우리에게는 아직도 보호해야 할 소중한 개인정보가 너무나도 많이 남아 있으며, 그 정보의

양은 나날이 늘어나고 있는 상황인 것이다.

보안 – 핵심이 중요하다

그렇다면, 지금까지 보안이 전혀 구축되어 있지 않아서 개인정보가 유출된 것일까? 안타깝게도

그렇지는 않다. 물론 보안이 제대로 구축되지 않아서 문제가 된 경우도 있겠으나, 적지 않은

경우가 나름의 보안을 구축했음에도 불구하고 정보가 유출되는 사고가 발생했다. 이것은

보안의 필요성은 인식했으되, 핵심적인 사안을 놓친 것이 원인이 된다.

돌이켜 보면, 지금까지의 IT 보안은 외부에서의 침입을 막고 탐지해 내는 쪽에 초점을 맞추

었던 것이 사실이다. 그런데, 최근 일어난 개인정보 유출 사고의 대부분은 외부에서의 침입에

의한 것이 아닌 내부자에 의해 일어난 것이었다. 즉 기존의 패러다임으로 구축된 IT 보안 솔루

션 및 방법론으로는 막을 수 없는 사태였고, 개인정보 보호를 위한 보안의 측면에서 보면 기존

의 IT 보안들은 핵심이 빠진 미완성의 보안이었던 것이다.

개인정보의 스마트한 보호 – DB 보안이 답이다

그러면, 개인정보의 스마트한 보호를 위한 보안은 어떻게 구축하는 것이 최선일까? 먼저, 현황

을 조금 살펴보기로 하자.

Verizon에서는 매 년 데이터 유출(Data Breach)에 대한 보고서를 작성하여 배포한다.

위 그림에서 알 수 있듯이, 2013년에 배포된 자료에 의하면 가장 기본적인 보안 위협이 가장 핵

심적인 유출의 원인임을 알 수 있는데, 놀랍게도 무려 67%, 즉 3건 중 2건의 데이터 유출은 DB

나 파일서버로부터 일어났음을 알 수 있다. 이 얘기는 DB 보안만 제대로 구축했더라면 유출 사

고를 1/3로 줄일 수 있었다는 것이며, 효율성을 추구하는 ‘스마트한’ 개인정보의 보호는 결국

‘스마트한’ DB 보안을 구축함으로써 얻어질 수 있음을 의미한다.

9년 동안(2004~2012)의 Data유출 조사 결과

: 가장 기본적인 보안 위협이 가장 핵심적인 유출의 원인

67%

데이터베이스,

파일서버로부터 유출

ORACLE KOREA MAGAZINE

24

스마트한 DB 보안의 구축 – 오라클 MSA

그러면, 어떻게 하면 스마트한 DB 보안의 구축이 가능한 것일까? 오라클에서는 이를 위해

MSA(Maximum Security Architecture)를 제시한다.

MSA는 ‘Architecture’라는 단어에서 알 수 있듯이 단편적인 제품 또는 기술이 아닌 구조적 접

근을 통해 노력 대비 최선의 효과를 거두는 ‘스마트한’ DB 보안을 구축하고자 함이 목표이며,

각각의 기술이 가진 장점을 연계하여 시너지를 거둠으로써 최선의 보안을 구축할 수 있도록 하

는 방법을 제공한다.

MSA는 TDE(Transparent Data Encryption)와 Key Vault를 이용한 암호화, Database

Vault와 Label Security를 이용한 사용자 권한에 따른 접근제어, Data Masking을 이용한 원

천적 데이터 유출 기회를 차단하는 Masking 기능, Redaction을 이용한 실시간 데이터 변조 기

능, Audit Vault를 이용한 통합 감사 기능과 Database Firewall을 이용한 SQL 모니터링 기능

으로 구성되며, 각각의 기능을 구성하는 제품에 대해서는 아래에서 조금 더 자세히 살펴보기로

하겠다.

Database 암호화 – Transparent Data Encryption과 Key Vault

만일 암호화가 되어 있지 않으면 DB를 거치지 않고 DB에 있는 개인정보 데이터를 유출하는

것이 가능하게 되어 개인정보 보호에 큰 위험이 존재하게 되는데, 이를 위해 오라클 MSA에서

는 Database에 기록되는 모든 내용을 암호화하는 Transparent Data Encryption(TDE) 기능

을 제공한다.

TDE는 위에서 기술한 Database 암호화 기능을 제공하기 위해 모든 Database 파일을 암호화

해서 저장하는데, ‘Transparent’라는 단어가 말해 주듯이, TDE를 적용하여 암호화를 한다고

Oracle Database Maximum Security Architecture

Advanced SecurityData Redaction

Database Firewall

Audit Vault

User

Apps

Database Label Security

Database Vault

Events

Alerts

Audit Data & Event Logs Databases OS & Storage Directories Custom

Reports

Policies

Data Masking Advanced Security TDE

SPRING 2015

25

하더라도 DB 데이터에 접근이 허용된 사용자는 암호화가 되어 있는지를 느낄 수 없을 뿐 아니

라, DB 데이터 암호화를 위해 응용 프로그램의 수정이 전혀 없기 때문에 간편한 암호화 적용이

가능하다는 것이 대표적인 장점이다. 또, TDE를 적용하기 전과 후의 성능 차이가 CPU 기준

대략 2% 정도로 거의 없기 때문에, 암호화 솔루션 도입에 따른 시스템 확장 등에 대해 고민할 필

요가 없다는 것이 또 하나의 대표적인 장점이라고 말할 수 있다.

암호화에 있어서 핵심적인 요소 중 하나는 암호화를 위한 키를 어떻게 관리할 것인가 하는 것

인데, Key Vault를 사용하면 이러한 문제에 대한 고민을 없앨 수 있다. Key Vault를 이용하면

TDE의 마스터 키를 중앙 집중화해서 관리할 수 있을 뿐 아니라, 키의 생명 주기 관리를 위한 정

책을 생성하여 키의 생성, 순환, 만료 등을 체계적으로 관리할 수 있어, 키 관리의 복잡도에 의한

관리 측면에서의 어려움을 크게 덜어준다.

실시간 데이터 변조 – Redaction

우리가 콜센터에 전화를 걸게 되면, 상담원은 이미 우리에 대해 많은 정보를 가지고 있음을 알

게 된다. 예를 들어, 우리가 과거에 구매했던 이력, 주소, 포인트 등 다양한 정보를 즉시 확인해

주는 것을 볼 수 있는데, 이러한 일들이 가능한 것은 아마도 상담원이 보고 있는 화면에 전화를

건 사람에 대한 다양한 정보가 제공되고 있기 때문일 것이다.

그런데, 때로는 알 필요가 없는, 혹은 알지 말아야 할 정보까지도 상담원에게 제공되는 것은 아

닌가 하는 의구심을 갖게 된다. 즉, 내 주민등록번호나 신용카드번호 등, 민감한 개인정보가 보

여질 수도 있겠다는 생각을 하게 된다.

이러한 민감한 정보의 제한적 표시를 위해 오라클 MSA에서는 Redaction 기능을 제공한다.

Redaction은 실시간 데이터 변조를 위한 기능으로, Display Masking으로도 불린다.

모든 Database File의 암호화 저장

•모든 Database File 및 백업, DR Data의 암호화 저장 •전송 데이터의 암호화•암호화 키의 다중 보호

Disk

Backups

Exports

Off-SiteFacilities

•국제 표준 암호화 알고리즘 지원, 각종 규제의 준수•다양한 Package Application과의 호환성 제공

Oracle Transparent Data Encryption

<그림1> TDE를 통한 Database 암호화

ORACLE KOREA MAGAZINE

26

앞에서 예로 들었던 사례에 비춰 보면, 꼭 필요한 사용자에게는 민감한 데이터 전체를 보여 주

고, 그렇지 않은 사용자에게는 데이터의 일부 또는 변조된 데이터를 보여줌으로 인해, 민감한

데이터가 불필요하게 노출되지 않도록 하는 기능을 제공할 수 있다. 아울러, TDE와 마찬가지

로 응용 프로그램의 변경 없이 간편하게 적용할 수 있다는 것은 Redaction의 큰 장점 중 하나로

꼽힌다.

권한 관리에 의한 접근 제어 – Database Vault와 Label Security

Database와 관련하여 DBA의 권한은 실로 막강하다. 그런데, 잘 생각해 보면 DBA는

Database가 잘 동작할 수 있도록 지원하는 사람일 뿐, Database에 저장된 모든 Data를 자유롭

게 조회하고 변경할 필요가 있는 사람은 아니다. 즉, 인사 데이터는 인사 업무를 관장하는 사

람만이 볼 수 있어야 하고, 재무 데이터는 재무 업무를 관장하는 사람만이 볼 수 있어야 하는

것이다.

그러나, 대부분의 현실은 DBA가 모든 데이터를 자유롭게 조회하고 변경할 수 있기 때문에,

DBA가 나쁜 마음을 먹게 되면 Database에 있는 데이터 전체가 한꺼번에 유출될 수 있는 위험

을 내포하고 있다. 이러한 위험을 예방하기 위해, 오라클 MSA에서는 ‘특권 사용자’, 즉 DBA 또

는 이에 준하는 권한을 가진 사용자라 하더라도 데이터에 대한 접근을 통제하는 솔루션을 제공

하고 있으니, 이것이 바로 Database Vault이다.

Database Vault는 특권 사용자(DBA 등)가 인가되지 않은 데이터에 접근하는 것을 막을 뿐 아

니라, 특정 데이터에 접근할 수 있는 권한을 가진 사용자라 하더라도 DB에 접속한 IP나 응용

프로그램, 또는 시간 등의 요소를 결합하여 접근을 제어하거나 DB 데이터에 대한 작업을 허용

하지 않을 수 있는 기능도 제공한다. Database Vault의 가장 큰 장점은 DB Kernel에서 동작하

는 특징으로 인해, 어떠한 우회 경로를 통한 불법적인 DB 접근도 차단할 수 있다는 것이다.

4451-2172-9841-4368

콜센터 어플리케이션 빌링부서

Redaction 정책 적용

Credit Card Numbers4451-2172-9841-43685106-8395-2095-59387830-0032-0294-1827xxxx-xxxx-xxxx-4368

<그림2> Redaction을 이용한 Display Masking

SPRING 2015

27

또 하나의 접근 제어 솔루션인 Label Security는 ‘행 단위 접근 제어’ 솔루션으로 불리며, 다양

한 시스템 또는 다양한 테이블에 있는 정보가 통합 관리되는 상황에서 유용하게 사용될 수

있다.

Label Security를 적용하면 동일한 테이블에 기록된 다량의 데이터 중에서 본인의 권한에 의해

승인된 데이터만을 접근할 수 있게 된다. 위 그림 왼쪽에서 보면, Confidential 권한을 가진 사

용자는 자신의 사용자 등급인 Confidential 및 자신의 사용자 등급보다 낮은 Public 등급의 데

이터만을 접근할 수 있고, Sensitive 등급의 데이터에는 접근할 수가 없다. 또, 최근 Exadata를

이용한 통합(Consolidation)이 많이 진행되고 있는데, 위 그림 오른쪽과 같이 각 제휴사의 데

이터가 하나의 테이블에 통합되어 있다고 하더라도, Label Security를 이용하면 각 제휴사의

담당자는 자신의 데이터만을 접근할 수 있도록 제어할 수 있게 된다.

<그림3> Database Vault에 의한 특권 사용자 및 비인가 접근 제어

접근경로 및 방식에 의한 통제

Finance 담당자

Procurement

Procurement

Payroll

Payroll

Finance

Finance

비인가 IP 주소

AD-hoc Tool

SYSDBA

Finance

담당자

<그림4> Label Security를 이용한 행 단위 접근 제어

Oracle Label Security 제휴사 통합 시스템 적용 예시

제휴사 A

고객정보

결제정보

연체정보 제휴사 B

제휴사 A

제휴사 A

제휴사 A

제휴사 B

제휴사 B

제휴사 B

제휴사 C

제휴사 C

제휴사 C 제휴사 C

Confidential Sensitive

SensitiveTransactions

PublicReport

ConfidentalReport Date

ORACLE KOREA MAGAZINE

28

원천적 데이터 유출 기회 차단 - Data Masking

다양한 서비스 제공을 위한 대부분의 상용 시스템은 2중화된 운영 DB 및 이와는 완벽하게 분

리된 별도의 개발 DB와 테스트 DB를 갖추고 있다. 그런데, 개발 및 테스트를 위해서 운영 DB

에 있는 ‘주민등록번호’, ‘신용카드번호’ 등의 민감한 개인정보가 꼭 사용되어야만 하는 것일

까? 거의 모든 경우의 대답은 ‘그렇지 않다’이다. 예외적으로 반드시 실제 데이터가 사용되어야

하는 경우라고 하더라도, 운영 DB에 있는 데이터의 극히 일부 데이터만을 사용하면 충분히 개

발 및 테스트를 진행할 수 있을 것이다.

그러면, 실제 데이터는 아니지만, 실제 데이터와 동일한 형태 및 규칙을 가진, ‘정말로 실제 같

은’ 데이터는 어떻게 확보할 수 있는 것일까? 오라클 MSA에서는 Data Masking 솔루션을 이

용하여 변조된 데이터를 사용할 것을 권고한다.

Data Masking을 사용하여 생성한 테스트 데이터는 원본 데이터의 모든 특징을 그대로 갖게

되어, 변조된 데이터임에도 불구하고 원본 데이터가 필요한 개발 및 테스트에 문제없이 사용할

수 있는데, 이를 통해 극히 일부의 사람만이 접근 가능한 운영 DB의 데이터가 다수의 개발 및

테스트 담당자들에게 전달되지 않게 되고, 결론적으로 개인정보 유출 기회가 원천적으로 차단

되는 효과를 얻게 된다.

통합 감사 – Audit Vault

지금까지 소개된 오라클 MSA의 DB 보안 솔루션을 이용하여 DB 보안 시스템이 구축되었다

면, 혹은 더 나아가 운영 체제와 응용 프로그램 계층까지의 보안을 포함하는 통합 보안 시스템

<그림5> Data Masking을 이용한 테스트 데이터 변조 과정

운영

TEST, 개발 DB

LAST_NAME

운영 Data

AGUILAR 203-33-3234 40,000

BENSON 323-22-2943 60,000

SSN SALARY

LAST_NAME

TEST, 개발 Data

ANSKEKSL 323-23-1111 60,000

BKJHHEIEDK 252-34-1345 40,000

SSN SALARYTEST DEV

Masking

SPRING 2015

29

이 구축되었다면, 구축된 보안 시스템을 믿고 잘 운영하는 것이 중요하다. 그러나, 이렇게 구축

된 보안 시스템을 믿는다고 하더라도 ‘확인’은 반드시 필요하니, 이를 위해 오라클 MSA에서는

Audit Vault를 제공한다.

Audit Vault는 Oracle DB를 필두로 DB2, MS SQL, Sybase 등의 DB에 대한 모니터링 및 감

사 기능을 제공할 뿐 아니라, UNIX 서버에 대한 모니터링 및 바로 다음에 설명할 Database

Firewall에서 일어나고 있는 일들을 모니터링하고 감사할 수 있는 기능을 제공한다.

SQL 감시 및 차단 – Database Firewall

Database Firewall은 Database 서버를 보호하기 위해 Database로 유입되는 SQL의 모니터

링 및 제어를 실행하는데, 승인이 허가된 SQL만을 통과시키는 White List 기반의 제어, 이와는

반대로 승인이 불허된 SQL만을 차단시키는 Black List 기반의 제어, 그리고 제어는 하지 않고

SQL 전체에 대해 모니터링을 진행하여 그 정보를 Audit Vault로 전달하는 기능을 제공한다.

에필로그 – 끝의 시작

많은 사람들이 이미 개인정보는 유출될 만큼 유출되었고, 더 이상은 유출되어 봤자 무서울 것도

없다는 얘기를 하곤 한다. 그러나, 이것은 ‘끝의 시작’이라는 아이러니한 상황을 전혀 이해하지

<그림6> AVDF를 이용한 통합 모니터링 환경의 구축

통합 모니터링 환경의 구축

Oracle

Auditor

DB2

Ms SQL

Sybase

경보

내장된 보고서

사용자 보고서

정책

감사정보

Database Firewall

ORACLE KOREA MAGAZINE

30

못하는 사람들의 얘기다. 우리들의 개인정보가 유출될 만큼 유출되었기 때문에 개인정보의 유

출은, 혹은 개인정보에 대한 탈취 시도는 이제 끝났다라고 생각하기 쉽지만, 하나의 파도가 지

나고 나면 그 다음에는 더 큰 파도가 오듯이, 앞으로는 단순히 주민등록번호와 전화번호 정도

의 정보가 아닌 더 많은 핵심적인 위협이 될 수 있는 정보의 탈취를 시도하는 것으로 개인정보

의 탈취 시도는 진화할 것이다. 결국, 끝은 또 다른 시작의 연장선인 것이다.

‘늦었다고 생각할 때가 가장 빠른 때’이다. 즉, 이미 조금 늦었다고 생각하는 지금이야말로 DB

보안을 구축하기에 가장 적절한 시기이다. ‘우리의 소중한 개인정보의 스마트한 보호를 위해

오라클 MSA 기반의 DB 보안 구축을 위한 한 걸음을 내딛도록 하자’는 말로 이 글을 마친다.