데이터베이스에는 기업, 금융기관, 정부, 연구기관, 병원 등 다양한 조직에서 중요한 정보를 저장 관리하고 검색하기 위해서 사용된다. 데이터베이스에 저장된 정보는 개인정보 뿐만 아니라 기업의 핵심 비즈니스 전략 등 다양한 민감 정보가 포함되어 있다. 이러한 중요 정보가 유출될 경우 치명적인 손실을 유발하게 된다. 최근 개인정보 해킹, 중요 정보자산의 악의적인 탈취와 노출 등으로 인한 중요 정보자산 유출이 증가함에 따라 기업과 조직의 데이터에 대한 보안의 중요성이 점점 커지고 있다. 이러한 데이터 유출을 방지하기 위해서 데이터베이스 접근제어, 데이터 암호화, 데이터 마스킹, 데이터 손실방지(DLP, Data Loss Prevention), 데이터베이스 감사 등의 보안기술이 적용된 데이터베이스 보안 제품이 필수적으로 적용되어 운영되고 있다. 하지만 2020년에 IBM과 포네몬 인스티튜트가 공동으로 조사한 글로벌 기업 데이터 유출 현황 보고서에 따르면, 전 세계 17개국 524개 기업의 데이터 유출 중 대다수인 80%가 고객의 개인정보 유출로 나타났다. 이러한 유출 사례 중, 보안 자동화 기술을 도입하지 않은 기업들은 해당 기술을 사용하는 기업보다 2배 이상의 손실을 경험했다. 특히, AI를 활용한 보안 자동화 기술을 적용한 기업들은 보안 위협을 27% 더 빠르게 탐지할 수 있었다. 한편, 조사에 포함된 국내 24개 기업의 데이터 유출 평균 피해액은 38억원으로, 유출 건당 평균 피해액은 195,200원이었고, 이는 2019년 대비 7% 상승한 수치이다. 이는 데이터베이스 보안 기술보다 해킹 기술이 한발 더 앞서 기존 보안 기술의 사각지대를 이용하기 때문으로 분석이 되며, 특히 웹애플리케이션 서버와 데이터베이스 서버로 구성된 시스템에서는 웹애플리케이션 서버에서 접속하는 경우 기존 데이터베이스 접근제어, 데이터 암호화, 데이터베이스 감사 등의 보안 기술이 적용되지 않는 허점을 이용하여 웹애플리케이션 서버를 이용한 웹쉘, SQL Injection 등의 공격 방법이 널리 악용되고 있다. 웹방화벽에서 웹쉘이나 SQL Injection 공격에 대한 탐지와 차단을 해야 하지만 대부분 웹트래픽은 HTTPS를 사용하여 사용자와 웹서버 간에 SSL(Secure Socket Layer)로 암호화 통신을 하기 때문에 네트워크 구간 사이에 구성된 웹방화벽에서는 탐지와 차단이 어려워서 공격자는 이 암호화 구간을 이용하여 중요 데이터를 탈취한다. 본 논문에서는 웹애플리케이션 서버와 데이터베이스 서버간의 구성에서 데이터베이스 보안 문제를 해결하기 위한 방법을 연구하여 웹트랜잭션 사용자 식별, 식별 정보를 데이터베이스에 연동, 데이터베이스 감사 추적 설정으로 데이터베이스 내에서 웹트랜잭션 사용자를 식별하고 데이터베이스 감사 추적 정보를 기반으로 비정상 사용자에 대하여 웹애플리케이션 서버에서 차단하도록 하는 데이터베이스 보안 관리 시스템을 설계하고 개발하여 기존 데이터베이스 보안 기술의 문제점에 대한 개선 방안을 제시하였다. 본 논문에서 제안하는 시스템은 웹애플리케이션 서버와 데이터베이스를 연동하여 서비스 하는 다양한 환경에 적용할 경우 개인정보 해킹이나 악의적인 데이터 탈취 등의 부적절한 데이터 유출 피해를 줄일 수 있을 것으로 기대 된다.
Databases are used to store, manage, and retrieve important information in various organizations such as companies, financial institutions, governments, research institutes, and hospitals. The information stored in the database includes not only personal information but also various sensitive information such as the company''s core business strategies. If this important information is leaked, it can cause fatal losses. Recently, as the leakage of important information assets has increased due to personal information hacking and malicious theft and exposure of important information assets, the importance of security for corporate and organizational data is increasing. To prevent such data leaks, database security products that apply security technologies such as database access control, data encryption, data masking, data loss prevention (DLP), and database auditing are essential and operated. However, according to the 2020 Global Corporate Data Leakage Report jointly conducted by IBM and the Ponemon Institute, the majority, or 80%, of data leaks from 524 companies in 17 countries around the world were leaks of customer personal information. Among these leak cases, companies that did not adopt security automation technology experienced more than twice as much loss as companies that used the technology. In particular, companies that applied security automation technology using AI were able to detect security threats 27% faster. Meanwhile, the average damage from data leaks of the 24 domestic companies included in the survey was KRW 3.8 billion, and the average damage per leak was KRW 195,200, which is a 7% increase compared to 2019. This is analyzed to be because hacking technology is one step ahead of database security technology and takes advantage of the blind spots of existing security technology. In particular, in a system consisting of a web application server and a database server, when accessing from the web application server, existing database access control and data Attack methods such as web shell and SQL injection using web application servers are being widely exploited by taking advantage of loopholes in security technologies such as encryption and database auditing. web firewall must detect and block web shell or SQL injection attacks, but since most web traffic uses HTTPS to communicate encrypted with SSL between users and web servers, it is difficult to detect and block attackers in a web firewall configured between network sections. uses this encryption section to steal important data. In this paper, we study a method to solve database security issues in the configuration between the web application server and the database server, identifying web transaction users, linking identification information to the database, setting up a database audit trail to identify web transaction users within the database, and Based on audit trail information, we designed and developed a database security management system that blocks abnormal users from the web application server, and proposed improvement measures for the problems of existing database security technology. The system proposed in this paper is expected to reduce damage from inappropriate data leaks such as personal information hacking or malicious data theft when applied to various environments where web application servers and databases are linked and serviced.
국문초록 ·ⅰ목 차 ·ⅲ그림목차 ·ⅵ도표목차 ·ⅷ약어표 ⅹ제 1 장 서 론 ·11.1 연구배경 및 목적 11.2 연구내용 및 범위 21.3 논문의 구성 ·3제 2 장 관련 연구 ·42.1 데이터베이스 보안 ·42.1.1 데이터베이스 보안의 중요성 42.1.2 비즈니스 관점의 데이터베이스 보안의 중요성 ·52.1.3 시스템 관점의 데이터베이스 보안의 중요성 62.1.4 데이터 유출 현황 72.2 데이터베이스 보안 기술 82.2.1 데이터베이스 접근 제어 92.2.2 데이터베이스 암호화 132.2.3 데이터 마스킹 182.2.4 데이터 손실 방지(DLP) ·192.2.5 데이터베이스 감사(Database Auditing) 202.3 데이터베이스 보안에서 사용자 식별의 중요성 212.3.1 데이터베이스 접속 방식별 사용자 식별 방법 ·212.3.2 웹애플리케이션에서 사용자 식별 방법 232.4 데이터베이스 데이터 보안 위협 242.4.1 웹쉘(Webshell)을 통한 데이터 탈취 252.4.2 SQL Injection을 통한 데이터 탈취 262.5 기존 시스템의 문제점 및 요구사항 분석 272.5.1 기존 시스템의 문제점 ·272.5.2 요구사항 분석 28제 3 장 제안 시스템 설계 323.1 전체 시스템 설계 323.1.1 구성도 323.1.2 흐름도 333.1.3 데이터베이스 스키마 설계 343.2 데이터베이스 보안 에이전트 설계 ·403.2.1 웹트랜잭션 정보 수집 및 전송 413.2.2 사용자 식별 정보 연동 443.2.3 차단 정보 수신 및 차단 ·463.3 데이터베이스 보안 관리 시스템 설계 ·493.3.1 사용자 관리 및 환경 설정 493.3.2 데이터베이스 감사 정책 관리 493.3.3 데이터베이스 감사 추적 정보 수집 및 차단 관리 523.3.4 웹트랜잭션 및 차단 정보 수신 및 저장 533.3.5 데이터베이스 통합 보안 분석 533.3.6 이벤트 관리 ·54제 4 장 제안 시스템 구현 554.1 시스템 구성도 ·554.2 구현 환경 564.3 데이터베이스 보안 에이전트 구현 ·564.3.1 JAVA 에이전트 구현 ·574.3.2 웹트랜잭션 정보 수집 및 전송 구현 584.3.3 사용자 식별 정보 데이터베이스 연동 구현 594.3.4 사용자 차단 정보 수신 및 차단 구현 604.4 데이터베이스 보안 관리 시스템 구현 ·624.4.1 사용자 관리 및 환경 설정 구현 624.4.2 데이터베이스 감사 정책 관리 구현 ·644.4.3 데이터베이스 감사 추적 정보 수집 및 차단 구현 654.4.4 웹트랜잭션 및 차단 정보 수신 및 저장 구현 684.4.5 데이터베이스 통합 보안 분석 구현 694.4.6 이벤트 이력 관리 구현 714.5 실험 및 고찰 ·724.5.1 시나리오 724.5.2 실험 764.5.3 고찰 81제 5 장 결론 83참고문헌 85영문초록 93감사의 글 ·96