북한의 해킹 조직'김수키'그룹에 대해김수키그룹은 2012년 북한 정부가 한국, 미국 등 전 세계를 대상으로정보수집 및 사이버 공격을 목적으로 만든북한의 해킹 조직입니다.이들은 대학교, 방송국, 언론사, 반도체, 싱크탱크 등 한국 내 다양한산업분야에 지속적으로 공격을 시도하고 있습니다.김수키그룹이 2021년까지 실시한 공격으로는 사례비 명목의 금전과관련된 내용과 악성파일 메일을 함께 보내는 경우가 많았으나,2022년부터는 특정 프로그램으로 위장하거나, 자문 요청과 약력 요청등에 대한 내용이 많았으며, 새로운 악성코드를 사용하거나 비교적 최신취약점을 공격에 사용하려는 시도도 확인되었습니다.이들이 주로 사용하는 악성코드는 사용자의 키보드 입력을 훔쳐보는키로거 악성코드와 사용자의 보안을 우회하여 무단 접근하는 백도어형악성코드가 있습니다.김수키그룹은 현재도 끊임없이 해킹 공격을 시도하고 있으며, 이들은백신을 통한 탐지를 회피하기 위해 국내웹 사이트나 블로그를 경유지로사용하여 악성코드를 배포하는 등 공격 방식에 점차 변화를 주고 있습니다.공격방식 또한 악성 첨부파일을 포함하지 않고 정상적인 소프트웨어나운영체제에 내장된 소프트웨어를 통해 악성행위를 수행하는 형태로진화하고 있어 이에 대한 보안 강화 대책 마련이 필요합니다.
> 주요사업 > 사이버안전센터 운영 > 사이버위협 정보 및 통계 > 보안뉴스
웹 취약점과 해킹 매커니즘#7 XSS(Cross-Site Scripting)
■ 개요XSS(Cross-Site Scripting, 크로스사이트 스크립팅)은 공격자가 입력한 악성스크립트가 사용자 측에서 응답하는 취약점으로, 사용자 입력값에 대한 검증이 미흡하거나 출력 시 필터링 되지 않을 경우 발생한다. 쿠키 값 또는 세션 등 사용자의 정보를 탈취하거나 피싱 사이트로의 접근 유도 등 사용자에게 직접적인 피해를 줄 수 있다.이번 Special Report에서는 사용자 입력값 검증이 미흡하여 악성스크립트를 삽입할 수 있는 공격인 XSS에 대해 알아보고, 세 가지 종류의 XSS 공격 동작 과정을 다루며 보안대책을 살펴보고자 한다.■ 환경 구성취약점 테스트는 실습을 위해 구축한 웹 서버에서 진행된다. XSS 취약점이 존재하는 해당 웹 사이트는 특정 단어를 검색하면 데이터베이스에서 결과를 불러와 화면에 출력해 주는 검색 기능을 가지고 있다. 또한 글쓰기를 통해 게시물 작성이 가능하며 작성한 게시물은 누구나 열람 가능하다.[XSS 취약점이 있는 게시판]※ 실제 운영 중인 서버에 테스트 또는 공격을 하는 행위는 법적인 책임이 따르므로 개인용 테스트 서버 구축 또는 bWAPP, DVWA, WebGoat 등과 같은 웹 취약점 테스트 환경 구축을 통해 테스트하는 것을 권장한다.※ 본 Special Report는 JSP와 Oracle Database 11gR2의 환경에서 실습을 진행한다.■ XSS(Cross-Site Scripting)XSS 취약점은 서버 측의 입력값 검증이 미흡할 경우 발생할 수 있는 취약점으로, 공격자가 게시물 또는 URL을 통해 삽입한 악성스크립트가 사용자의 요청에 의해 사용자 측에서 응답하게 되어 발생한다.[XSS 동작 과정]사용자의 입력값을 받는 모든 곳에서 발생할 수 있으며, 웹 서버 사용자에게 직접적인 영향을 미칠 수 있는 공격 기법이다. 또한 게시물 또는 URL에 포함된 악성스크립트가 동작하여 발생하는 취약점이기 때문에 불특정 다수를 대상으로 공격을 시도할 수 있다.발생할 수 있는 피해는 스크립트 구문에 따라 사용자 쿠키 값 탈취를 통한 권한 도용과 세션 토큰 탈취, keylogger 스크립트를 삽입하여 키보드 입력값 탈취 등이 가능하다. 또한 피싱 사이트와 같은 악성 사이트로의 접근 유도가 가능하며 사용자에게 직접적인 피해를 줄 수 있다.■ 공격 유형에 따른 분류공격자가 삽입한 악성스크립트가 사용자 측에서 어떻게 동작하는지에 따라 크게 세 가지로 분류할 수 있으며 각각의 개념과 동작 과정은 다음과 같다.Stored XSS (저장형 크로스사이트 스크립팅)공격자의 악성스크립트가 데이터베이스에 저장되고 이 값을 출력하는 페이지에서 피해가 발생하는 취약점이다.공격자는 악성스크립트가 포함된 게시물을 작성하여 게시판 등 사용자가 접근할 수 있는 페이지에 업로드한다. 이때 사용자가 악성스크립트가 포함된 게시물을 요청하면, 공격자가 삽입한 악성스크립트가 사용자 측에서 동작하게 된다.공격자의 악성스크립트가 서버에 저장되어 불특정 다수를 대상으로 공격에 이용될 수 있어 Reflected XSS보다 공격 대상의 범위가 훨씬 크다.[Stored XSS]Stored XSS 공격 과정은 다음을 통해 확인할 수 있다.[Stored XSS 공격 과정]Reflected XSS (반사형 크로스사이트 스크립팅)사용자가 요청한 악성스크립트가 사용자 측에서 반사(Reflected)되어 동작하는 취약점으로, 공격자의 악성스크립트가 데이터베이스와 같은 저장소에 별도로 저장되지 않고 사용자의 화면에 즉시 출력되면서 피해가 발생한다.공격자는 악성스크립트가 포함된 URL을 이메일, 메신저 등을 통해 사용자가 클릭할 수 있도록 유도한다. 사용자가 악성스크립트가 삽입된 URL을 클릭하거나 공격자에 의해 악의적으로 조작된 게시물을 클릭했을 때 사용자의 브라우저에서 악성스크립트가 실행된다.[Reflected XSS]Reflected XSS 공격 과정은 다음을 통해 확인할 수 있다.[Reflected XSS 공격 과정]DOM Based XSS (DOM 기반 크로스사이트 스크립팅)공격자의 악성스크립트가 DOM 영역에서 실행됨으로써 서버와의 상호작용 없이 브라우저 자체에서 악성스크립트가 실행되는 취약점이다. DOM 영역에 변화가 생기면 브라우저는 서버로 패킷을 보내지 않고 DOM 영역에서 페이지를 변환시킨다. 따라서 DOM의 일부로 실행되기 때문에 브라우저 자체에서 악성스크립트가 실행된다.• DOM(Document Object Model, 문서 객체 모델) 이란?브라우저가 웹 페이지를 렌더링 하는데 사용하는 모델로 HTML 및 XML 문서에 접근하기 위한 인터페이스이다. 브라우저는 HTML 문서를 읽고 해석한 결과를 DOM 형태로 재구성하여 사용자에게 제공한다.[DOM Based XSS]DOM Based XSS 공격 과정은 다음을 통해 확인할 수 있다.[DOM Based XSS 공격 과정]Stored XSS과 Reflected XSS는 서버에서 악성스크립트가 실행되고 공격이 이뤄지는 반면에 DOM Based XSS는 서버와 상호작용 없이 브라우저에서 악성스크립트가 실행되고 공격이 이뤄진다.■ 보안대책XSS 취약점은 공격자가 삽입한 악성스크립트로 인해 발생하기 때문에 입력값 검증을 통해 악성스크립트가 삽입되는 것을 방지해야 하며, 악성스크립트가 입력되어도 동작하지 않도록 출력값을 무효화해야 한다.입력값 필터링의 경우 데이터베이스에 악성스크립트가 저장되는 것을 원천적으로 차단해야 한다. 또한 악성스크립트가 삽입되어도 동작하지 않도록 출력값을 검증하여 스크립트에 사용되는 특수문자를 HTML Entity로 치환하여 응답하도록 한다.아래와 같이 <, >, ', " 등 스크립트에 쓰이는 문자가 입력될 경우 스크립트로 동작하여 XSS 공격이 가능할 수 있으므로 의미가 없는 일반 문자로 치환해야 한다.문자 : < > ' " ( )Entity : < > " ' ( )치환 함수인 replaceAll()를 사용하여 외부 입력값으로 받은 스크립트에 쓰이는 문자열을 필터링하여 공격자가 입력한 악성스크립트가 동작하지 않도록 한다.…String searchWord = request.getParameter("searchWord");if (searchWord != null) {searchWord = searchWord.replaceAll("<","<");searchWord = searchWord.replaceAll(">",">");searchWord = searchWord.replaceAll("(","(");searchWord = searchWord.replaceAll(")",")");}위와 같이 문자열 치환을 적용하면 <script>는 <script> 로 치환되어 일반 문자 처리되어 스크립트로 실행되지 않는다.게시판과 같이 HTML 태그 사용이 필요한 경우에는 WhiteList Filter를 통해 허용할 태그를 선정하여 해당 태그만 허용하는 방식을 적용해야 한다.searchWord = searchWord.replaceAll("<p>","<p>");searchWord = searchWord.replaceAll("<br>","<br>");searchWord = searchWord.replaceAll("<P>","<P>");searchWord = searchWord.replaceAll("<BR>","<BR>");허용할 태그 목록 선정이 어려울 경우에는 javascript, document, alert 등과 같이 공격에 사용될 가능성이 있는 모든 문자열을 차단하는 BlackList Filter 방법을 사용할 수 있다. 하지만 모든 태그를 차단하는 것은 현실적으로 어려움이 있고 위험이 존재한다. 부득이하게 사용해야 하는 경우에는 태그마다 적용 가능한 이벤트 핸들러가 다르다는 것을 고려하여 적용하면 된다.추가적으로 알려진 XSS 필터 관련 외부 라이브러리를 활용하는 방법도 있다.• Lucy-XSS-Filter: WhiteList 방식으로 XSS 공격을 방어하는 Java 기반의 오픈 소스 라이브러리https://github.com/naver/lucy-xss-filter• OWASP ESAPI: OWASP에서 제공하는 무료 오픈 소스 라이브러리로 JAVA, PHP 등 다양한 언어 지원https://github.com/ESAPI/esapi-java-legacy■ 맺음말지금까지 사용자 입력값 검증 미흡으로 인해 발생하는 취약점인 XSS(Cross-Site Scripting)에 대한 기본 개념을 살펴보았다. 공격자가 삽입한 악성스크립트가 사용자 측에서 동작하여 계정 탈취 등의 피해가 발생할 수 있으므로 보안대책을 통해 방지해야 한다.이 콘텐츠의 저작권은 ㈜SK쉴더스에 있으며 영리적, 개인적 사용, 무단 수정을 금합니다. COPYRIGHT ⓒ 2022 SK SHIELDUS. All Rights Reserved.[출처] 웹 취약점과 해킹 매커니즘#7 XSS(Cross-Site Scripting) - ① 개념|작성자 SK쉴더스
> 주요사업 > 사이버안전센터 운영 > 사이버위협 정보 및 통계 > 보안뉴스
사이버보안 위협 대응을 위한 접근권한 제어 7 가지 전략
■ 개요코로나 팬데믹으로 인해 일상 생활의 많은 변화가 일어났다. 특히 IT분야에서는 오랜 시간 전통처럼 유지됐던 사무업무 환경이 변화해 불편함을 초래했다. 원격 업무 트렌드는 점차 가속화되어 확대되었으며, 현재는 지속가능한 하이브리드(혼합형)환경으로 자리를 잡아가고 있다.하이브리드형 환경은 IT기술을 적극적으로 사용할 때 구현된다. 비대면 업무를 위한 도구로 다양한 원격 회의 및 채팅 프로그램이 사용되고 있으며, 클라우드 기술을 이용한 협업도 이뤄지고 있다.즉, 접속 채널이 많아 복잡한 하이브리드 환경은 뉴 노멀(새로운 기준)이 필요해짐을 의미한다. 사용자가 네트워크에 접속하는 방법, 사용자-장비 간의 다양한 구성에 대응하는 보안 정책 숙지, 변화하는 환경에 적절하게 통제하는 방법 등 새로운 엔드포인트 보안 전략이 필요한 시점이다.■ WFA로 인한 뉴 노멀(New Normal) 시대하이브리드 업무 환경은 WFA(Work-From-Anywhere), 어디서나 근무할 수 있음을 의미하며 WFA 시대의 보안은 움직이는 데이터들을 보호할 수 있어야 한다. 공격자가 기업 데이터와 자산 탈취를 위해 주로 노리는 POLR도 변화하고 있어 보안팀의 IT 위험관리 우선 순위도 바뀌어야 한다.기존 IT업계의 보안은 바이러스 백신과 방화벽을 최우선순위로 반영해 보안 환경을 구성했다. 그러나 바이러스 백신은 전체 사이버 공격의 60% 정도를 탐지하지 못하고, IoT 및OT(Operation Technology) 환경에서는 백신 소프트웨어 설치조차 어려운 환경이다. 또한, 방화벽 정책 역시 늘어나는 클라우드 및 분산 컴퓨팅 환경으로 인하여 자주 무력화되거나 제 역할을 다하지 못하고 있는 상황이다.또한, WFA 환경 구축에 있어 가장 까다로운 문제는 엔드포인트의 보안 문제다. 보통의 기업 네트워크 시스템에서는 방화벽을 활용해 외부에서 내부로 들어오는 접근을 차단하는 역할을 한다. 그러나, 저장된 데이터와 계정의 유출로 엔드포인트가 악성코드에 감염되어 있는 상황에서 사용자가 VPN을 연결할 경우, 악성코드는 방화벽을 거치지 않고 내부 시스템으로 유입되어 네트워크까지 감염시킬 수 있다.따라서, WFA 환경에서는 기존 보안 정책으로 외부 공격을 막기가 어려워지고 있으며, 다양한 보안 위협에 대비하기 위한 정책과 솔루션 구축이 요구되고 있다.■ 접근 권한 제어 기반의 7가지 보안 전략디지털 환경을 구축한 조직은 보안 격차를 해결하고 능동적으로 위협 요소를 관리해야 한다. 최근 IT보안은 새롭게 등장하고 있는 사이버 위협으로부터 대응하기 위해 네트워크 보안 전략으로 아이덴티티(Identity)를 기반으로 하는 ‘제로 트러스트(Zero Trust)’라는 핵심 보안 솔루션 모델을 제안하고 있다.제로트러스트란(Zero Trust), ‘아무것도 신뢰하지 않는다'는 것을 전제로 한 사이버 보안 모델로, 사용자 또는 기기가 접근을 요청할 때 철저한 검증을 실시하고, 그 검증 과정에서 최소한의 권한만 부여해 접근을 허용하는 방식기업이 제로 트러스트(Zero Trust)의 핵심 아키텍처 구성 요소를 구축하기 위해서는 PAM(Privileged Access Management)이라고 불리는 ‘특권 접근 관리’가 필수적이다. 권한 있는 액세스 관리 솔루션은 기업의 핵심인 가장 중요한 시스템과 자산을 보호하도록 설계되어 액세스 정책을 최적화할 수 있다.사이버보안 생존 가이드 2022 (2022 Cybersecurity Survival Guide)[1] 에서 급변하는 사무·업무 패러다임, 증가하는 위협 상황, 치밀한 사이버 범죄 전술 등 최신 보안 위협에 더 효과적으로 대응하기 위한 권한 제어 기반의 7가지 보안 전략을 제시하고 있다.위의 7가지 보안 전략이 필요한 보안 사고의 가장 큰 원인은 내부 사용자의 무분별한 권한 남용과 업무 PC의 랜섬웨어 감염이다. 이를 대응하기 위해 사용자 환경, 엔드포인트 권한을 제어해 보안을 강화해야 한다.사용자 환경인 엔드포인트의 최소권한 환경구축은 ‘언제’, ‘어디서’, ‘누가’, ‘무엇을’과 같은 세밀한 항목을 정의하고, 이를 토대로 사용자 환경에 대하여 관리자 권한을 제거하는 등 업무 목적 및 권한 등에 적합한 명령어, 애플리케이션 실행 제어를 목표로 한다. 엔드포인트 권한 관리 적용은 이와 같은 목표 달성을 위한 필수 보안 툴이며 임의 실행되는 환경, 특히 랜섬웨어 실행 환경 차단에 효과적이므로 보안의 최우선이 되어야 한다■ 제로트러스트(Zero Trust) 원칙의 실용적인 구현앞서 제시한 7가지 보안 전략을 충족하기 위해서는 NIST SP 800-207에서 정의하는 제로트러스트 원칙을 스마트하고 실용적으로 지향하고, 복원 및 변화에 대응이 가능한 상태를 유지해야 한다. 또한, 원격 작업 및 디지털 전환에 필요한 보안 환경 구현을 위한 완벽한 특권 접속 관리 플랫폼(Privileged Access Management Platform)이 제공되어야 한다.<표1> NIST SP 800-207에서 정의하는 제로트러스트(Zero Trust) 원칙제로트러스트(Zero Trust) 아키텍처란, 제로트러스트(Zero Trust) 개념을 사용한 기업 사이버 보안 계획이며, 컴포넌트간 관계, 워크플로우 설계, 액세스 정책이 포함된다. 또한, 제로트러스트(Zero Trust) 엔터프라이즈란 이러한 제로트러스트(Zero Trust) 아키텍처를 실행함으로써 기업에 존재하는 네트워크 인프라스트럭처(물리∙가상) 및 정책을 의미한다.* 출처: 미국 NIST, "제로 트러스트 아키텍처", 2020[2][2] https://csrc.nist.gov/publications/detail/sp/800-207/final이 콘텐츠의 저작권은 ㈜SK쉴더스에 있으며 영리적, 개인적 사용, 무단 수정을 금합니다. COPYRIGHT ⓒ 2022 SK SHIELDUS. All Rights Reserved.
> 주요사업 > 사이버안전센터 운영 > 사이버위협 정보 및 통계 > 보안동향 및 통계
소중한 정보를 위협하는 해킹메일! 유형부터 판별 기준, 예방법까지 알아보기
최근 해킹 메일 관련 피해가 늘고 있습니다. 메일을 열람하는 것만으로도 많은 정보가 유출될 수 있어 각별한 주의가 필요한데요. 우리의 소중한 정보를 지키기 위해, 해킹 메일의 유형부터 판별 기준, 예방 방법까지 함께 알아보겠습니다.| 1/ 모르면 쉽게 당하기 쉬운 ‘해킹메일’ 유형 4가지!해킹 메일의 대표적인 유형은 바로 포털 사이트의 고객센터를 사칭한 메일입니다. 로그인 이력, 비밀번호가 유출되었다는 사칭 메일을 통해, 계정 정보를 입력하도록 유도하는 것이죠.최근에는 공공기관, 기업, 지인으로 가장한 업무 메일을 통해, 해킹 사이트로 접속을 유도하는 사례도 늘고 있는데요. 특히 코로나19 관련 확진자 동선, 재난 지원금 관련 메일이 많아지면서, 악용 사례가 급격히 증가했습니다.이 외에도 메일 본문에 첨부파일로 위장한 링크를 첨부하거나 해킹 메일을 보안메일로 위장하는 경우도 있습니다. 해킹 피해를 막기 위해 보안메일을 사용한다는 점을 역으로 악용한 것인데요. 이와 같은 해킹 메일은 메일 제목만으로는 구별이 어렵기 때문에 판별법을 미리 숙지하는 것이 필요합니다.| 2/ 제목만 보면 알 수 없는 해킹 메일, 어떻게 판별할 수 있을까?먼저, 발신 메일 주소가 정상적인지 확인해야 합니다. 해킹 메일은 대중화된 메일 주소를 교묘하게 변경해 보내는 경우가 많기 때문인데요. @naver.com 대신 @naver-com.cc와 같이, 메일 주소를 눈속임하는 것이 이에 해당합니다. 모르는 주소로 전송된 광고성 메일은 해킹메일일 가능성이 높으므로 열람하지 않는 것이 좋습니다.모르는 메일로 온 첨부파일을 열었을 때 매크로 사용을 위한 ‘콘텐츠 사용’ 클릭을 유도하는 등 보안 경고가 나타나면 해킹 메일일 가능성이 높습니다. 대표적으로 첨부파일 클릭 시 파일이 다운로드 되지 않고 계정 정보 입력을 요구하는 경우가 있죠.이 외에도 경찰 출석요구서, 국내·외 정세 자료, 정책 자료 등의 내용이 사전 안내 없이 발송됐다면, 해당 기관에 연락해 메일 발송 여부를 먼저 확인해 보는 것을 권장합니다.| 3/ 소중한 정보를 지키기 위한 길! 해킹메일 예방법 알아보기해킹 메일 예방법의 기본은 컴퓨터와 계정의 보안을 강화하는 것인데요. 이를 위해 바이러스 백신 소프트웨어는 반드시 설치해 두고, 지속적인 업데이트를 통해 최신 버전을 유지해야 합니다.계정 로그인 시에는 메일 비밀번호를 주기적으로 변경하거나 문자, 모바일 OTP 등 2단계 인증 로그인 설정을 통해 보안을 강화해야 하는데요. ‘로그인 이력 조회’를 통해 비정상적인 접근이 있었는지 수시로 점검하는 것이 좋습니다. 네이버 계정의 경우 ‘보안 설정 > 로그인 관리’에서 로그인 목록을 확인할 수 있으며, 구글 계정 사용자라면 Gmail 우측 하단 ‘세부정보’를 클릭해 Gmail계정이 사용된 이력과 계정에 엑세스 한 IP 주소를 볼 수 있습니다..스스로 관리하는 것이 번거롭다면, 인포섹이 제공하는 ‘해킹 사고 분석 서비스’를 이용하는 방법도 있습니다. 해킹 사고 분석 서비스는 해킹의 원인을 분석하고 보안 대책을 마련해, 안전하고 믿을 수 있는 정보 보안 환경을 제공하는데요. 보다 전문적으로 해킹 메일을 예방하고 싶은 분들께 추천합니다!지금까지 소중한 정보를 앗아가는 해킹 메일의 유형부터 판별법, 예방법까지 알아봤습니다. 해당 내용을 잘 숙지해, 소중한 정보를 보호하시길 바랍니다.이 콘텐츠의 저작권은 ㈜SK쉴더스에 있으며 영리적, 개인적 사용, 무단 수정을 금합니다. COPYRIGHT ⓒ 2021 SK SHIELDUS. All Rights Reserved.
> 주요사업 > 사이버안전센터 운영 > 사이버위협 정보 및 통계 > 보안뉴스
[5대 사이버 보안 위협]안랩에서는 ‘월간安’을 통해 2023년 5대 사이버 보안 위협을 아래와 같이 예측하고 있다.1. 랜섬웨어 조직, ‘양보다 질‘ 전략 추구최근 신규 랜섬웨어의 등장이 주춤한 가운데, 향후 렌섬웨어 조직은 최소한의 공격으로 최대한 의 수익과 효과를 노리는 ‘양보다 질‘ 전략을 추구할 것으로 예상된다. 이를 위해 기업의 핵심 인프라를 장악 후 정보유출부터 랜섬웨어 감염, 디도스 공격까지 가하는 ‘다중 협박’ 으로 하나의 표적을 집요하게 노릴 것이다.2. 기업의 핵심 정보를 장기간 유출하는 ‘기생형‘ 공격 대세공격자의 투자 대비 효과를 중요시 하는 경향을 감안할 때, 주요 기관 및 기업의 핵심 기술과 자산 탈취 시도는 계속될 것이다. 특히 인프라를 장악한 후 장기간에 걸쳐 핵심 기술 또는 민감 정보를 유출하는 ‘기생형‘ 공격이 주를 이룰 것인 바, 통합 보안 체계 구축이 필요하다.3. 파급 효과가 큰 ‘잭팟‘ 취약점 발굴 및 지속적인 악용PC부터 모바일, 클라우드, 운영기술 환경을 가리지 않고 파급 효과가 큰 ‘잭팟‘ 취약점을 공격에 활용할 것으로 전망하며, 이에 대응하기 위한 방안으로 주기적인 보안 패치 적용 및 미 사용 프로그램의 삭제가 필요하다.4. 모바일 환경으로 공격 확대최근 모바일을 통한 금전 거래와 개인정보 활용이 활발해 지면서 공격이 모바일 환경으로 확대되고 있다. 공격자는 정상적인 앱 마켓에 등록할 수 있는 제작사, 제작 툴을 해킹하여 앱 제작 초기 단계부터 침투하는 수법을 사용할 것으로 보이며, 모바일 앱 배포 또는 업데이트 단계에서 악성코드 주입 시도 및 탈취한 정상 모바일 앱 인증서를 앱 제작 및 배포에 활용할 수도 있다.5. 개인의 가상 지갑을 노린 공격 심화대형 암호 화폐 거래소, 주요 블록체인 서비스에 대한 해킹 공격의 발생으로 코인 등의 가상 자산을 개인 지갑으로 옮기는 사용자가 증가함에 따라 개인의 가상 자산 지갑을 노린 공격이 심화 될 것으로 예상된다. 공격자는 ‘니모닉’ 키 정보와 지갑 계정 정보를 탈취하기 위해 정보 유출 악성코드 또는 유명 가상 자산 지급을 사칭한 피싱 웹사이트, 앱 유포를 확대할 것이다. 개인 지갑 사용자는 시드 구문 및 ‘니모닉’ 키를 안전하게 보관하고, 키 분실 위험으로부터 안전한 지갑을 사용해야 할 것이다.이 콘텐츠의 저작권은 ㈜안랩에 있으며 영리적, 개인적 사용, 무단 수정을 금합니다. COPYRIGHT ⓒ 2023 AhnLab. All Rights Reserved.
> 주요사업 > 사이버안전센터 운영 > 사이버위협 정보 및 통계 > 보안동향 및 통계
[2022년 주요 사이버보안 사고]올해 1월에는, 2021년 12월 말 취약점이 발견되어 큰 이슈가 된 Log4j 의 추가 취약점들이 공개되었다. Java 로깅 라이브러리인 Log4j 에서 발생하는 취약점으로 사용 범위가 넓어 파급력 또한 높기 때문에 사용자들의 각별한 주의가 필요하다. Log4j 취약점 최초 발견 이후, 관련 취약점이 꾸준히 제보되고, 위험도 높은 제로데이 취약점이 연달아 발견되면서 국내외로 큰 이슈가 되었다.또한, 국내 최대 규모 DeFi(Decentralized Finance, 탈중앙화 금융) 서비스인 KLAYswap1에서 22억 규모의 가상자산이 탈취되는 해킹이 발생했다. 가상자산 탈취에 사용된 해킹 기법은 BGP Hijacking으로, BGP 프로토콜을 악용하여 공격자가 설정한 라우팅 테이블로 네트워크 흐름을 조작한 후 정상 SDK 파일로 위장한 악성코드를 다운로드하는 방식이다. 악성코드가 설치된 피해자가 가상자산 거래를 이용할 경우, 공격자의 지갑으로 가상자산이 전송되는 형태로 공격이 이루어졌다.3월에는 국제적인 해킹그룹인 랩서스(Lapsus$)의 글로벌 IT 기업 및 제조업을 대상으로 한공격이 발생했다. 국내 S 社에서는 190GB 의 소스코드가 유출되었으며, L 社에서는 임직원 이메일 계정 및 비밀번호 약 9만 건이 탈취되었다. 또한 국외에서는 반도체 기업인 N 社의 시스템이 해킹 당해 회로도, 펌웨어 등 기밀 데이터 1TB 가 탈취되었다. 랩서스는 다크웹 및 피싱 메일을 통해 임직원의 계정 정보를 획득하여 내부 시스템에 침투, 내부 정보를 탈취하는 방식으로 공격을 진행했다.또한, 블록체인 비디오 게임 ‘엑시 인피니티’에서 7,700 억 원 규모의 가상자산이 도난당하는 사건이 발생했다. 탈취한 7,700억 원 중 1,100억 원가량이 북한 소속의 해킹 그룹 ‘라자루스’의 가상자산 지갑으로 이동한 것이 확인되었다.5~6월에도 북한의 가상자산 탈취는 계속 이어졌다. 미국의 블록체인 기술 개발 기업인 ‘Harmony’에서 1억 달러(약 1,300억 원)의 암호화폐가 도난당하는 사고가 발생했으며, 1억 달러의 암호화폐 중 41%를 거래 추적을 숨기는 서비스인 ‘토네이도 캐시 믹서’로 보낸 것이 확인되었다. 사이버 보안 업체 ‘Trellix’의 발표에 의하면 북한은 외화 탈취를 위해 신종 랜섬웨어 4종을 유포하는 등 많은 나라의 다양한 기업에 대한 가상자산 탈취를 꾸준히 이어오고 있다고 한다.또한, 국내 구독형 플랫폼 M 社에서 13,182명에 달하는 회원들의 개인정보가 해킹으로 유출되는 사고가 발생했다. 유출된 정보는 이메일 주소와 암호화된 전화번호 및 비밀번호이며, 회원마다 유출된 정보는 다른 것으로 밝혀졌다.7월에는 서비스 및 의료업 등 국내 기업을 타깃으로 한 귀신(GWISIN) 랜섬웨어의 공격이 성행했다. 국내 기업 맞춤형 공격을 하는 귀신(GWISIN) 랜섬웨어는 국내 기업 내부에서 사용하는 통합 관리 솔루션을 악용하거나 국내의 보안 정책, 보안 솔루션 취약점을 악용하는 등 국내 보안 현황에 대한 인식이 뛰어난 것으로 파악된다. 또한 랜섬웨어 복호화, 중요 정보 유출 및 추가 공격 협박을 하는 등 3 중 협박을 통해 피해를 증가시키고 있으며, 고도화된 탐지 회피 등 지능적으로 변화하고 있다.이 외에도, 국내 의료 기관에서 사용 중인 영상 정보 관리 시스템, PACS(Picture Archiving and Communication System)의 취약한 서버를 대상으로 한 공격이 발견되었다. PACS는 다양한 의료 장비로부터 받은 환자의 진료 영상 정보를 디지털로 관리 및 전송하는 시스템으로 현재 많은 병원에서 사용 중이다. 공격자는 취약한 PACS서버를 대상으로 악성코드를 유포하는 공격을 감행했다. 많은 병원에서 널리 사용되고 있는 만큼, 취약한 버전을 사용하고 있다면 최신 버전으로 패치해야 하며 보안 솔루션을 설치해 안전하게 관리해야 한다.9월에는 서비스형 랜섬웨어(RaaS)인 LockBit 3.0이 국내 대기업 S社에서 탈취한 2TB 가량의 자료를 자신들의 홈페이지에 업로드하는 사건이 발생했다. 탈취한 데이터인 S 社 임직원 PC의 폴더 캡처, 품의문 등 내부 문서를 자신들의 홈페이지에 공개했으며, 이 파일들은 다운로드도 가능했다. LockBit 3.0 은 2022 년 가장 많은 활동을 하며 피해를 입힌 랜섬웨어로, 북한과 관련 있는 것으로 알려진 비너스락커(VenusLocker) 랜섬웨어 그룹이 사용하는 것으로 알려져 있다. 최근에는 입사지원서를 위장한 한글(HWP) 파일의 형태로 유포되 있어 개인 및 기업의 각별한 주의가 요구된다.또한, 서비스형 피싱 공격 플랫폼인 ‘Caffeine’이 발견되었다. Caffeine 은 다크웹을 통해 활발히 거래되었으며, 서비스형 피싱 공격을 제공하는 플랫폼으로 PhaaS(Phishing-as-aService)라고 불린다. 직관적인 인터페이스를 가지고 있으며 정교한 수법을 사용하여 맞춤형 피싱 키트를 제작할 수 있다. 누구나 검색 엔진을 통해 쉽게 접근 가능하며, 서비스 이용에 이메일만 요구되고 있어 피싱에 대한 진입 장벽이 낮아지고 있음을 알 수 있다.11월에는 국내 최대 포털사이트의 인기 블로그 계정 500여 개를 해킹하여 판매한 일당이 검거되었다. 이들은 메일의 도메인 주소를 일부 변경한 후 사용자에게 해당 포털 사이트를 사칭하는 피싱 메일을 전송해 인기 블로그 사용자의 비밀번호를 탈취했다. 탈취한 계정을 1개당 1,000 ~ 1,500만 원에 마케팅 업자에게 판매해 2억 원의 범죄 수익금을 획득한 것으로 알려졌다. 이외에도 나라사랑 포털에서 로그인 정보를 비롯한 사용자의 웹 브라우저 정보, 웹캠을 통해 촬영한 사용자의 사진 등 개인정보 1,000여 건이 유출되어 다크웹을 통해 거래되는 사건도 있었다. 해커가 탈취한 중요정보가 일정 금액으로 판매되거나, 다크웹을 통해 활발히 거래되고 있는 것을 알 수 있다.또한, 최근 불특정 다수를 대상으로 울진 산불, 코로나 19, 국내 K 社 서비스 장애 등 사회적 이슈를 악용한 해킹 메일 및 피싱 공격이 활발히 일어났다. 특히 지난 10월 국내 기업 K 社의 서비스 장애 사태를 악용하는 공격이 발생했다. 북한 업계 종사자 및 탈북민을 대상으로 발생했으며, K 社에서 배포하는 업데이트 설치 파일로 위장해 악성 프로그램 설치를 유도하는 형태로 이루어졌다. 기존의 피싱 공격보다 더 많은 대상을 타깃으로 하여 성공률을 높이기 위해 사회적 이슈를 악용하는 사례가 점차 증가하고 있기 때문에 개인 및 기업의 주의가 요구된다.이 콘텐츠의 저작권은 ㈜SK쉴더스에 있으며 영리적, 개인적 사용, 무단 수정을 금합니다. COPYRIGHT ⓒ 2022 SK SHIELDUS. All Rights Reserved.
> 주요사업 > 사이버안전센터 운영 > 사이버위협 정보 및 통계 > 보안동향 및 통계
편리한 만큼 취약할 수 있다! 안전한 개발 환경을 위한 오픈소스 보안 꿀팁
소프트웨어 프로그램 개발 과정에서 누구나 자유롭게 확인, 수정, 배포할 수 있어 많은 개발자들에게 유용한 도구 역할을 하고 있는 오픈소스. 편리한 만큼 보안에 취약해 몇 가지 주의해야 할 점들이 있는데요. 오픈소스와 관련된 보안 꿀팁을 보안툰으로 알아보겠습니다.이 콘텐츠의 저작권은 ㈜SK쉴더스에 있으며 영리적, 개인적 사용, 무단 수정을 금합니다. COPYRIGHT ⓒ 2021 SK SHIELDUS. All Rights Reserved.
> 주요사업 > 사이버안전센터 운영 > 사이버위협 정보 및 통계 > 보안뉴스
22 년 상반기 가장 활발하게 활동한 랜섬웨어 그룹은 LockBit 으로 타 랜섬웨어 그룹보다 3 배 이상 많이 관측되었다. LockBit 의 특징은 파일을 “.lockbit” 확장자 파일로 암호화하며, 부분 암호화 기술을 사용하여 다른 랜섬웨어에 비해 암호화 프로세스 속도를 높여 가장 빠른 데이터 암호화 및 랜섬웨어 탐지 기술 우회가 가능하다. LockBit 은 2019 년 9 월부터 활동을 시작했으며 랜섬웨어 페이로드 업그레이드와 공격적인 구인, 포섭 활동을 통해 레빌과 다크사이드에 이어 가장 주목받는 랜섬웨어 위치에 올랐다. “Recorded Future”가 수집한 자료에 따르면, 올해 현재까지 최소 650 개의 조직을 공격한 것으로 파악되었다.COVWARE 에서 조사한 랜섬웨어 피해 기업 규모 통계를 살펴보면, 사원수 1 천 명 이하 규모의 기업이 72%로 대부분을 차지했다. 21 년 국내 기업에 대한 랜섬웨어 피해의 93%는 중소기업이었던 것으로 보아, 상대적으로 보안이 취약한 작은 규모의 기업들이 피해를 입은 것으로 파악된다. 랜섬웨어에 대한 피해를 줄이기 위해서는 보안 솔루션을 도입하고, 주기적인 백업을 해야 한다이 콘텐츠의 저작권은 ㈜SK쉴더스에 있으며 영리적, 개인적 사용, 무단 수정을 금합니다. COPYRIGHT ⓒ 2021 SK SHIELDUS. All Rights Reserved.
> 주요사업 > 사이버안전센터 운영 > 사이버위협 정보 및 통계 > 보안동향 및 통계
개정된 데이터 3법에 따른 가명정보 활용 방법 및 처리 시 보안 주의사항
■ 가명정보의 배경 및 취지가명정보는 개인정보인가?지난 20년 8월, 홍수처럼 밀려드는 데이터에 대한 활용 및 규제 방안 등을 주제로 논의가 이뤄졌다. 그 결과 “개인정보보호법”, “신용정보의 이용 및 보호에 관한 법률(이하, 신용정보법)”, “정보통신망 이용촉진 및 정보보호 등에 관한 법률”이 데이터 3법이라는 주제로 개정되었다.당시 개인정보보호법 및 신용정보법의 입법 취지에도 명시되어 있듯이 가명정보[1] 는 마이데이터(본인신용정보관리업)와 더불어 데이터 3법의 핵심내용이다..[1] 가명정보: 이름, 주민등록번호와 같은 개인정보를 가명 처리함으로써 원래의 상태로 복원하기 위한 추가 정보의 사용ㆍ결합 없이는 특정 개인을 알아볼 수 없는 정보.이는 법으로 데이터 활용과 개인정보보호라는 상호 반비례하는 사안에 대한 적절한 중간지점을 제시함으로써 “개인정보를 가명정보로 활용하려면 법적 요건들을 준수해라”라는 의미로 해석할 수 있다..법령에서 말하고 있는 가명정보에 대한 주요 요건은 아래와 같이 크게 세 가지로 볼 수 있다..첫 번째는 가명정보를 처리하고자 할 때는 그 목적이 과학적 연구, 통계 작성, 공익적 기록 보존 등으로 활용 때에만 정보주체의 동의 없이 처리할 수 있다.두 번째는 가명정보는 특정 개인으로 식별되면 안 된다. 가명정보 자체는 물론 다른 정보와 결합의 가능성도 고려해서 개인 식별 여부를 검토해야 한다.세 번째는 가명정보도 개인정보이다. 가명처리[2] 과정 혹은 가명정보 저장 등에 대해서도 마땅히 개인정보로 취급하여 처리해야 한다. 가명정보를 처리하는 시스템은 개인정보 처리시스템으로 분류하여 관계 법령 및 고시에서 요구하는 규정을 준수해야 한다. 해당 정보가 분실∙도난∙유출∙위주∙변조 또는 훼손되지 않도록 안전성 확보에 필요한 기술적∙관리적 및 물리적 보호 조치를 수행해야 한다..[2] 가명처리: 개인정보 중 전체 또는 일부를 대체하는 등과 같은 방법으로 특정 개인을 알아볼 수 없도록 처리하는 과정■ 가명정보의 활용 사례가명정보는 어떻게 사용되나?데이터 3법이 개정되기 전, 기관/기업들은 개인정보 수집 시에 고지한 목적 내에서만 개인정보를 이용할 수 있고, 수집 시 고지한 목적 외로 이용/제공하려면 목적 외 이용/제공에 대해 정보주체로부터 별도 동의를 받아야 했다. 하지만 이제는 법의 준수 사항을 만족하면 가명정보를 통해 보다 넓은 데이터 활용을 할 수 있게 되었다.기관/기업에서 가명정보를 활용하는 방법도 두 가지로 나뉘는데 내부 활용과 외부 결합이다.내부 활용은 기관/기업 자체로 보유하고 있는 개인정보를 활용하는 것으로 범위/재식별성을 고려하여 처리할 수 있다. 데이터 3법이 개정되기 전에 기관/기업들은 내부에 보유하고 있던 개인정보를 통해 통계 및 연구 업무를 수행하고 있었다.외부 결합은 각 기관/기업들이 소유한 개인정보가 가명 처리되어 상호 결합되는 것을 일컫는다. 이를 통해 생성된 결합 정보는 다양한 Insight를 얻을 수 있는 자료가 되고 그에 따라서 새로운 비즈니스가 도출될 수 있다.이런 상황을 반영하듯 최근 주요 가명 처리에 대한 사례를 보면, 각 기관/기업들이 그동안 다루기 어려웠던 분야 또는 보유하지 못한 정보를 결합하여 정부기관의 정책 추진뿐만 아니라 기업 간 이윤창출을 위한 가명정보 결합이 이루어지고 있고, 그 수요가 점차 많아지고 있다.■ 가명정보의 보호가명정보 처리 시 주의사항은?가명정보의 활용 사례에서 보듯이 이미 우리는 알게 모르게 가명정보처리[3] 를 통한 정책 및 서비스 등을 직/간접적으로 제공받고 있다. 이렇게 다양하게 활용되는 만큼 가명정보의 보호에도 신경 써야 한다.가명정보보호의 특징 중 하나로 개인정보로의 재식별을 꼽을 수 있다. 앞서 이야기했듯이 가명정보는 개인정보로 식별되지 않게 가명 처리 후 활용이 가능하다. 가명정보가 개인정보로 재식별이 된다면 이 가명정보는 즉시 파기 또는 회수하도록 법에서 요구하고 있다.이는 가명처리가 미흡하게 되어 가명정보에서 바로 개인정보가 식별될 수도 있지만, 아래처럼 적절하게 가명처리가 되었더라도 가명정보 취급자나 가명정보처리시스템의 운영 환경에 따라서도 재식별 가능성이 존재할 수 있기 때문이다.먼저, 가명처리가 적절하게 잘 처리되어 재식별이 어렵더라도 남들이 모르는 특정 정보를 알고 있는 가명정보 취급자가 해당 가명정보를 처리한다면 재식별의 경우가 발생할 수 있다.예를 들어 아래와 같이 서울 소재 한 백화점의 9월 매출에 대해서 가명 처리된 통계 내역이 있다고 가정하자.해당 정보는 이름 없이 성과 40대라는 연령, 지출액 만으로 특정 개인을 식별하는 것이 가능해 보이지 않다.하지만, 해당 정보를 A매장 직원이 보면 9월에 920만 정도 결제한 40대 홍 씨는 충분히 누구인지 식별이 가능해 보인다. 또한, 만약 해당 정보주체가 백화점 멤버십을 적립했다면 결제 금액에 따른 멤버십 적립/소진 정보는 멤버십 담당자가 기존에 알고 있는 정보이고, 해당 멤버십 정보와 가명정보를 비교하면 멤버십 담당자에게는 해당 가명정보는 개인 식별이 가능한 정보가 된다.결국 해당 가명정보 자체도 중요하지만 ‘가명정보를 누가 취급하냐’도 매우 중요하다. 이런 재식별의 가능성을 줄여보고자 가명정보 취급자와 개인정보 취급자는 직무분리/권한설정 등을 통해 접점이 없도록 해야 한다..[3] 가명정보처리 : 가명정보에 대한 이용, 제공, 결합 등의 행위.두 번째로 가명정보는 추가정보[4] 없이는 개인을 식별할 수 없기에 법령에서는 파기에 대해 예외 조항을 두고 있다. 가명정보는 목적 달성 후 파기해야 하는 개인정보와는 다르게 파기를 하지 않아도 된다. 그렇지만, 가명정보를 활용하면서 처리한 가명정보들이 계속 누적될 수 있다. 단순히 가명정보 집합 내 건수가 누적된다면 큰 문제가 없을지도 모르지만 가명정보의 속성값이 누적된다면 재식별이 될 수도 있다.예를 들어 21년에 A가명정보 “지역별 임산부의 연령 통계”를 처리하고 22년에 B 가명정보 “연령 대 별 임신부의 질병, 처방 약물 통계”를 처리했다고 가정하자. A와 B를 따로 보면 해당 정보로 개인을 식별하기는 어려워 보인다. 하지만 파기하지 않고 누적되어 A/B가 합쳐지고 속성값이 늘어나면 “지역/연령/임산부/질병/처방 약물”의 정보가 되어 군소도시처럼 표본이 적은 곳에서는 해당 정보로도 누구의 정보인지 재식별 가능성이 높아진다.이렇게 가명정보의 파기가 이루어지지 않는다면 누적된 속성값으로 인해 개인을 식별할 수도 있으므로 가명정보의 목적을 달성하면 파기하는 것이 바람직하다..마지막으로, 가명정보는 원장 개인정보와 가명처리에 사용된 추가정보와는 분리해야 한다. 추가정보는 가명처리에 사용되는 정보이므로 가명정보와 추가정보를 동시에 알게 된다면 가명정보에서 역순으로 처리해 원래 개인정보가 도출될 수 있다. 마찬가지로 가명정보와 원장 개인정보가 조합이 된다면 비슷한 정보 혹은 특이치 정보로 인해 추가정보를 추측할 수 있고 곧 나머지 정보도 개인정보로 재식별 될 수 있으므로, 세 데이터를 각각 분리보관해야 하고 접근을 통제해야 한다..[4] 추가정보 : 가명처리 과정에서 생성/사용된 정보 예) 알고리즘, 매칭 테이블, 암호키 등.■ 마치며가명정보는 가명/결합정보 생성에 그 목적을 두는 것이 아니다. 앞서 몇몇 결합 사례를 본 것과 같이 결합된 가명정보로 끝나는 것이 아니라 그 결합정보를 기반으로 정책을 수립하고, 소비 패턴을 분석하여 맞춤형 서비스 제공 확대하는 등 정책 및 비즈니스 계획 수립에 중요한 자료가 될 수 있다. 기관/기업 간 사업제안이나 제휴 시에도 그 근거로써 충분히 사용될 가치가 있고, 기타 기업 간 협업 비즈니스를 시도할 때에도 사전에 해당 기업과 가명정보 결합을 통해 비즈니스 모델을 그려볼 수 있다. 이런 데이터 활용을 통해 사업의 확장뿐 아니라 비즈니스 리스크를 낮추기 위한 근거로 쓰일 수도 있다.가명정보의 활용에서 가장 중요하게 고려해야 될 사항은 재식별이다. 가명정보만의 특이성은 이 재식별성에서 찾을 수 있고, 당연히 보안적인 시작에서도 이 재식별을 집중적으로 살펴봐야 한다.더불어 [가명정보의 보호] 예시의 재식별 위험을 제거하지 않을 경우 개인정보법 제75조 ①항에 의거하여 과태료 처분을 받을 수도 있다.제28조의5(가명정보 처리 시 금지의무 등) ② 개인정보처리자는 가명정보를 처리하는 과정에서 특정 개인을 알아볼 수 있는 정보가 생성된 경우에는 즉시 해당 정보의 처리를 중지하고, 지체 없이 회수ㆍ파기하여야 한다. 제75조(과태료) ① 다음 각 호의 어느 하나에 해당하는 자에게는 5천만원 이하의 과태료를 부과한다.7의2. 제28조의5제2항을 위반하여 개인을 알아볼 수 있는 정보가 생성되었음에도 이용을 중지하지 아니하거나 이를 회수ㆍ파기하지 아니한 자결론적으로 가명정보는 개인정보이므로 법령에서 요구하는 개인정보의 안전성 확보에 필요한 조치뿐 아니라 데이터 자체의 속성을 분석/파악하는 등 재식별을 방지하기 위한 추가적인 보호 조치가 필요하다.이 콘텐츠의 저작권은 ㈜SK쉴더스에 있으며 영리적, 개인적 사용, 무단 수정을 금합니다. COPYRIGHT ⓒ 2021 SK SHIELDUS. All Rights Reserved.
> 주요사업 > 사이버안전센터 운영 > 사이버위협 정보 및 통계 > 보안뉴스
최신 ICT 기술에 따라 확대되는 공격 표면 관리의 중요성 및 대응 방안
공격 표면 관리 (Attack Surface Management, 이하 ASM)는 인터넷을 통해 공격의 경로가 될 수 있는 기업의 모든 디지털 자산을 관리하는 것을 의미한다..공격 표면은 의외로 범위가 넓다. 기업의 내부 자산 뿐만 아니라 소프트웨어 공급망, 그리고 협력업체의 인력에서부터 기업의 브랜드와 평판 등의 Digital Risk까지도 공격 표면에 포함될 수 있다. 그 중에서 이번 헤드라인에서의 공격 표면 관리는 인터넷에 연결된 자산을 위주로 설명한다..공격 표면 관리의 중요성을 설명하기 전에 조금 다른 이야기로 풀어 나가고자 한다. 영화 스타워즈 세계관에서 연력(年歷)의 기준이 되는 야빈 전투 (Battle of Yavin)를 다룬 에피소드 IV - 새로운 희망 (A New Hope)을 보신 분들은 기억하시겠지만 반란군 연합의 루크 스카이워커가 탑승한 X윙 스타파이터 1대에 의해 제국의 거대한 전략 자산인 ‘죽음의 별 (Death Star)’이 파괴된다..반란군 연합은 루크의 쌍둥이인 레아 공주가 어렵게 입수한 ‘죽음의 별’ 설계도를 분석하여 치명적인 취약점(원자로)을 찾아내고, 고작 몇 대의 전투기로 이루어진 편대가 양자 어뢰 공격을 감행해 ‘죽음의 별’을 우주의 먼지로 사라지게 만든다..지난해 말 인터넷 역사상 최악의 취약점이라 불리는 'Log4j' 취약점이 발견돼 온 사회가 떠들썩했다. 실제 공격으로 인한 피해 사례가 밝혀지지 않았지만 그 여파는 상당했다. ‘Log4j’ 취약점은 원격코드 실행 취약점으로 인가받지 않은 사용자가 원격으로 접속해 악성코드를 실행할 수 있어 위험도가 매우 크다. 해커는 이 취약점을 악용해 원격으로 목표 대상의 모든 권한을 탈취하는 것이 가능하며 서버를 통해 내부망에 접근해 데이터를 약탈하는 등 기업의 전체 네트워크까지 장악할 수 있다. 이렇게 기업에 매우 심각한 문제를 야기할 수 있는 취약점이었으나, 대부분 빠르게 대응하지 못했다. 여기엔 몇 가지 이유가 있다..① 취약점을 가진 Log4j가 사용된 애플리케이션을 식별하는 데 많은 시간을 소모했다. 취약점 분석 소프트웨어 전문 업체인 Qualys에 의하면 완전한 패치까지 평균 17일이 소요된 것으로 보고된 바 있다..② 취약점을 가진 Log4j가 사용된 애플케이션이 공격을 받을 경우 발생할 수 있는 비즈니스 영향에 대해 평가가 이루어지지 않아 어떤 순위로 대응해야 하는지 알 수 없었다. 발견된 애플리케이션 중 50%가 수명을 다한 (End of Life) 상태였던 것도 매우 흥미로운 일이었다.보안 컨설팅에서도 기업이 보유하고 있는 디지털 자산의 식별은 매우 기초적인 위험평가의 관리 방안으로 소개되고 있으나, 실제 현실 세계에서는 동작하지 않은 것이다..Enterprise Strategy Group (ESG Research)에서 보고한 바에 의하면 공격 표면을 적극적으로 모니터링한다고 믿는 기업은 9%에 불과했다..그만큼 공격 표면 관리에 어려움이 있다는 이야기도 될 수 있다. 불행하게도 Cloud, IoT 등의 발달로 인해 우리가 상상할 수 없을 만큼 공격 표면은 확대되고 있고, 특히 Cloud 환경은 더욱 복잡하다. On-Premise와 Cloud를 동시에 사용하며, 하나 이상의 CSP (Cloud Service Provider)에 의존하는 소위 Multi-Cloud가 확산되고 있기 때문이다. 또한 Cloud 시대에 기업은 수많은 워크로드로 이루어진 웹사이트뿐만 아니라, 네이티브 애플리케이션, 개인정보와 같이 민감한 데이터, 자격증명, SSL 인증서 등 인터넷에 연결된 자산을 보유하고 있다..공격자는 자동화된 툴을 사용해 빠르게 기업 전반의 공격 표면을 분석해 취약점을 식별하고 공격을 감행한다. 이러한 공격은 대부분 성공적이며, 공격의 결과로 약 80% 이상이 주요 데이터의 유출이라는 최악의 상황을 야기한다..이러한 추세에 대응하기 위해 이미 글로벌 업체는 ASM(Attack Surface Management) 전문 업체 인수를 진행하고 있다. 지난 6월 RSA Conference 2022에서 IBM은 Randori의 인수를 공표했으며, 이외에도 Microsoft (RiskIQ), Mandiant (Intrigue), Palo Alto Networks (Expanse Networks) 등이 이미 ASM 전문 업체를 인수했다..특히 IBM이 인수한 Randori의 경우 ASM 기능 외에 CART(Continuous Automated Red Teaming)를 선보이며, 기업의 보안 역량을 강화할 수 있도록 지원하는 공세적인 보안 기술을 강조하고 있다..최근 코로나 팬데믹으로 인한 원격근무, Cloud 도입의 확산 등 지속되는 디지털 트랜스포메이션에 맞춰 보안업체에서도 혁신의 움직임을 보이고 있는 것이다..ASM의 주요 기능은 ① 자산의 검색과 식별, ② 자산의 분류를 통한 우선순위 지정 (공격 가능성에 따른 비즈니스 영향도 평가 등) ③ 적극적인 대응 (Remediation) ④ 지속적인 모니터링이다..위의 주요한 4가지 기능을 지속적으로 관리할 수 있도록 많은 부분의 자동화를 지원하며, 최근 Vendor와 Technology의 통합(Consolidation) 추세에 맞춰 하나의 플랫폼으로 제공된다는 점이 주목할 만하다..이미 기업은 보안을 위해 많은 투자를 진행하고 있으며 평균 40~80개의 벤더와 협력하고 있다. 그러나 너무 많은 벤더를 관리하는 툴로 인한 내부 인력 교육, Network, Endpoint 등 영역별 Silo, 비효율적인 예산 집행 등의 문제로 계속해서 벤더와 벤더가 제공하는 기술의 통합을 원하고 있고, 글로벌 기업은 이미 CISO뿐만 아니라 구매 단계에서 Consolidation을 진행하고 있다. .한편, 최근 공격 기법은 계속해서 진화하고 있으며 기업의 다양한 공격 표면을 활용해 랜섬웨어와 같이 기업에 실질적인 피해를 유발하고 있다.이 콘텐츠의 저작권은 ㈜SK쉴더스에 있으며 영리적, 개인적 사용, 무단 수정을 금합니다. COPYRIGHT ⓒ 2021 SK SHIELDUS. All Rights Reserved.
> 주요사업 > 사이버안전센터 운영 > 사이버위협 정보 및 통계 > 보안뉴스
해당 공격 시나리오는 취약한 버전의 Log4j 혹은 Spring Framework 를 사용할 시 공개된 취약점을 이용해 원격 코드 실행이 가능하여 내부 정보가 유출되거나 랜섬웨어에 감염되는 시나리오다.해커는 Log4j 를 이용한 공격을 위해 미리 악성코드 유포 서버를 준비한 후 취약한 버전의 Log4j 를 사용하는 웹서버를 탐색한다. 해커는 취약점이 발견된 웹서버에 공격 구문을 전송하여 악성코드 유포 서버에서 악성코드를 다운로드해 실행시킨다. 내부 네트워크의 제어권을 장악한 해커는 내부 중요 정보를 탈취, 블랙마켓에 판매한다.또한 해커는 취약한 버전의 Spring Framework 를 사용하는 웹서버를 탐색 후, 발견한 웹서버에 공격 구문을 전송하여 웹 쉘을 생성시킨다. 해커는 생성한 웹 쉘을 실행시켜 내부 네트워크의 제어권을 가져온다.이 콘텐츠의 저작권은 ㈜SK쉴더스에 있으며 영리적, 개인적 사용, 무단 수정을 금합니다. COPYRIGHT ⓒ 2021 SK SHIELDUS. All Rights Reserved.
> 주요사업 > 사이버안전센터 운영 > 사이버위협 정보 및 통계 > 보안동향 및 통계
[Special Report] 웹 취약점과 해킹 매커니즘 #6 SQL Injection 보안대책
■개요SQL Injection은 설계된 SQL구문에서 사용자 입력값 검증이 미흡하여, 악의적인 명령을 실행하는 임의의 쿼리를 삽입해 공격이 가능한 취약점이다. 지금까지 공격 유형에 따른 세 가지 종류의 SQL Injection을 살펴보았다. SQL Injection 취약점이 존재할 경우 인증 우회, 데이터베이스 접근과 같은 공격이 가능하기 때문에 데이터 유출, 변조, 삭제 등의 피해를 미칠 수 있다.따라서 이번 Special Report에서는 SQL Injection의 보안대책을 다룬다. 적절한 보안대책을 통해 입력값을 검증하고 SQL Injection 공격을 예방해야 한다.■ SQL Injection 보안 대책SQL Injection 보안 대책의 최선은 Prepared Statement를 사용하여 소스코드를 구성하는 것이다. Prepared Statement를 사용할 수 없는 환경이라면, 차선책으로 사용자 입력값 필터링 또는 정제를 통해 사용자 입력값이 SQL구문에 영향을 미치지 못하도록 해야 한다. 보안 대책에 대한 상세 설명은 다음과 같다.1) Prepared Statement 사용Prepared Statement는 SQL Injection을 방어하는 최선의 보안 대책이며, SQL구문이 미리 컴파일 되어 있어 입력값을 변수로 선언해 두고 필요에 따라 값을 대입하여 처리하는 방식이다.• Statement vs Prepared StatementSELECT문은 DBMS 내부적으로 4단계의 과정(Parse, Bind, Execute, Fetch)을 거쳐 결과를 출력한다. 특히 구문 분석을 하는 parse 과정을 거치면 다음과 같은 파싱 트리가 생성된다.[파싱 트리]일반적인 Statement의 경우, 구문 분석(parse)부터 인출(fetch)까지 모든 과정을 매번 수행한다. 따라서 입력값에 SQL구문에 영향을 미치는 특수문자나 예약어가 들어갈 경우 구문 분석 과정에서 SQL구문의 일부로 작용하여 SQL Injection 공격이 가능하다.[Statement]Prepared Statement의 경우, 구문 분석(parse) 과정을 최초 1회만 수행하여 생성된 결과를 메모리에 저장해 필요할 때마다 사용한다. 미리 구성된 파싱 트리를 반복적으로 사용하기 때문에 Statement에 비해 시간을 단축할 수 있다. 또한 SQL구문이 미리 컴파일 되어 사용자 입력값을 변수로 선언해 값을 대입하여 사용한다. 따라서 외부 입력값으로 SQL문법에 영향을 미치는 특수문자나 예약어가 입력되어도 문법적인 의미로 작용하지 못한다.[Prepared Statement]SQL Injection 공격에 취약한 Statement와 안전한 Prepared Statement로 구성된 소스코드는 다음과 같다.• 일반적인 Statement 코드 (취약) Connection conn = null;Statement stmt = null;ResultSet rs = null;...String sql = "SELECT * FROM MEMBER WHERE ID ='"+param_id+"'AND PW ='"+param_ passwd+"'";stmt = conn.createStatement();rs = stmt.executeQuery(sql); 사용자 입력값인 아이디와 패스워드 파라미터인 param_id, param_passwd에 SQL Injection 공격이 가능하다.• Prepared Statement 코드 (양호) String param_id=request.getParameter("id");String param_passwd=request.getParameter("passwd");Connection conn = null;PreparedStatement pstmt = null;ResultSet rs = null;…String sql = "SELECT * FROM MEMBER WHERE ID =?AND PW =?";pstmt.setString(1, param_id);pstmt.setString(2, param_passwd);rs = pstmt.executeQuery(sql); SQL구문이 미리 컴파일 되어 있고 사용자 입력값을 받는 부분을 '?'로 바인딩 처리를 하여 setString 메소드를 통해 외부 입력값을 받기 때문에 SQL Injection 공격이 불가능하다.Prepared Statement를 통해 SQL Injection에 대응하는 것이 근본적인 해결책이지만, 문법적/비즈니스 로직 상 사용 불가한 로직이 존재하기도 한다. 예를 들어, Prepared Statement는 데이터를 파라미터로 전달하는 역할을 하기 때문에 데이터 정렬의 기능을 하는 ORDER BY절에서는 쓰이지 않는다.또한, 실제 운영 중인 서버의 경우엔 소스코드 수정이 어려울 수 있다. 따라서 이러한 점을 고려하여 Prepared Statement 사용이 불가피한 경우에는 문자열 필터링 또는 정제를 통해 사용자 입력값을 검증하는 방법을 사용해야 한다.2) 입력값 필터링 및 정제서비스 운영 등의 이유로 Prepared Statement 사용이 불가피할 경우 차선책을 고려해야 한다.WhiteList Filter는 허용할 문자열을 제외한 모든 문자를 필터링하는 방법이다. 이때 개별 문자에 대해 지정하는 것보단 정규식 등을 이용해 패턴화해두는 것이 유용하다. 입력값 필터링 시에는 DBMS마다 대소문자 구분이 상이하다는 점을 고려하여 대소문자를 모두 필터링하는 것을 권장한다. 또한 입력값에 길이 제한을 두어 공격 구문 삽입이 어렵도록 해야 한다.이 콘텐츠의 저작권은 ㈜SK쉴더스에 있으며 영리적, 개인적 사용, 무단 수정을 금합니다. COPYRIGHT ⓒ 2022 SK SHIELDUS. All Rights Reserved.
> 주요사업 > 사이버안전센터 운영 > 사이버위협 정보 및 통계 > 보안뉴스
22 년 상반기 침해사고 유형별 발생 통계를 살펴보면 악성코드 감염이 39.2%로 가장 높은 비중을 차지했으며, 중요 정보 유출이 32.3%, 피싱/스캠이 15.7%을 차지했다. 그 외 시스템 장악이 11.8%, 공급망 공격이 1.0%로 뒤를 이었다.가장 많은 비중을 차지한 악성코드 감염은 최근 성행하는 서비스형 랜섬웨어(RaaS)의 대중화와도 연관이 있다. RaaS 는 개발자가 판매한 랜섬웨어를 공격자가 구매하여 유포하고, 공격이 성공하면 수익을 재분배하는 형태이다. 랜섬웨어를 구매하여 이용하기 때문에 공격자가 악성코드 개발 역량이 부족해도 손쉽게 랜섬웨어 공격을 시도할 수 있게 도와준다. 이에 따라 사이버 공격에 대한 진입장벽이 낮아지고 있는 추세이며, 랜섬웨어 피해 규모도 크게 증가하고 있다.악성코드 감염 다음으로 중요 정보 유출이 높은 비중을 차지했다. 주로 대상 서버의 보안 취약점을 이용하여 중요 정보를 탈취한 뒤 다크웹, 블랙마켓을 통해 판매하여 이익을 취하거나 중요 정보를 인질 삼아 금전을 요구하는 형태를 보이고 있다. 공격자들은 최근에 다크웹뿐만 아니라 텔레그램, 디스코드와 같은 암호화 채널을 활용하는 추세이며 해킹 그룹 랩서스가 글로벌 IT 기업을 해킹한 뒤 유출된 중요 정보를 빌미로 돈을 요구할 때 텔레그램을 사용한 것을 예시로 들 수 있다.전체 비중의 15.7%를 차지한 피싱/스캠은 가상자산 탈취를 목적으로 크리덴셜 정보 수집에 주로 이용되었다. 공격자는 피싱을 통해 대상의 크리덴셜을 획득하고 이를 이용해 암호화폐 거래소에 접근, 피해자의 가상자산을 탈취한다. 가상자산 거래량이 늘어난 만큼 암호화폐 거래소 이용자를 타깃으로 한 피싱 공격이 증가하고 있어 각별한 주의를 요한다이 콘텐츠의 저작권은 ㈜SK쉴더스에 있으며 영리적, 개인적 사용, 무단 수정을 금합니다. COPYRIGHT ⓒ 2021 SK SHIELDUS. All Rights Reserved.
> 주요사업 > 사이버안전센터 운영 > 사이버위협 정보 및 통계 > 보안동향 및 통계
[22년 상반기 CVE 취약점 분류]22 년 상반기 CVE 에 등록된 취약점 분류를 살펴보면 Code Execution 이 가장 많은 비중을 차지한다. Code Execution 은 로컬 또는 원격에서 공격자가 입력한 명령어를 실행할 수 있는 취약점이다. 그 뒤로는 매년 꾸준히 발생하는 XSS, DoS, Overflow, SQL Injection 순으로 취약점이 등록되었다.[Log4j/Spring4Shell 이벤트 발생 통계] 등록된 Code Execution 취약점 중 가장 이슈가 되었던 취약점은 Log4j 와 Spring4Shell이다. 자사 사이버보안관제센터 ‘Secudium Center’의 이벤트 탐지 분석 결과에 따르면 Log4j 공격은 2월에 감소하는 경향을 보였으나, 추가 취약점이 발표되면서 다시 증가하는 추세를 보였다. Spring4Shell의 경우 3월 말에 발견되어 4월 동안 활발하게 공격이 시도되었다. 5 월에는 공격이 감소하고 있는 추세이나 영향력이 큰 취약점인 만큼 지속적인 관심이 필요하다.이 콘텐츠의 저작권은 ㈜SK쉴더스에 있으며 영리적, 개인적 사용, 무단 수정을 금합니다. COPYRIGHT ⓒ 2021 SK SHIELDUS. All Rights Reserved.
> 주요사업 > 사이버안전센터 운영 > 사이버위협 정보 및 통계 > 보안동향 및 통계
[Special Report] 웹 취약점과 해킹 매커니즘 #5 Blind SQL Injection
■ 개요SQL Injection은 사용자 입력값을 검증하지 않는 경우 설계된 쿼리문에 의도하지 않은 쿼리를 임의로 삽입할 수 있는 공격이다. 공격자는 쿼리를 악의적으로 주입하여 데이터베이스의 데이터를 무단으로 탈취할 수 있다. 이번 Special Report에서는 Blind SQL Injection에 대한 설명과 실습을 진행한다. SQL Injection 취약점이 존재하는 게시판의 검색 기능에서 사용자 입력값에 대한 서버 측의 응답을 통해 데이터를 추출하는 내용을 다룬다..※ 실제 운영 중인 서버에 테스트 또는 공격을 하는 행위는 법적인 책임이 따르므로 개인용 테스트 서버 구축 또는 bWAPP, DVWA, WebGoat 등과 같은 웹 취약점 테스트 환경 구축을 통해 테스트하는 것을 권장한다.※ 본 Special Report는 JSP와 Oracle Database 11gR2를 사용하여 취약한 서버를 구축하였다...■ 환경 구성웹 취약점 테스트는 실습을 위해 구축한 서버의 게시판 페이지에서 진행된다. 사용자가 특정 단어를 검색하면 서버는 데이터베이스에서 결과를 불러와 화면에 출력해 준다.[SQL Injection 취약점이 있는 게시판 페이지]게시판의 검색 기능은 다음과 같은 취약한 소스코드로 구성되어 있다. 사용자 입력값인 searchWord에 대한 입력값 필터링이 존재하지 않아 공격자는 임의의 쿼리를 주입할 수 있다. .…String sql = "SELECT idx, title, content, userid FROM board WHERE title LIKE '%" + searchWord + "%'";Statement stmt = conn.createStatement();rs = stmt.executeQuery(sql);... [SQL Injection 취약점이 있는 게시판 페이지]또한 실습용 웹 서버의 데이터베이스는 사용자 정보를 담고 있는 MEMBER 테이블과 게시판 페이지 정보를 담고 있는 BOARD 테이블로 구성되어 있다.※ 비밀번호는 개인정보보호법에 따라 단방향 해시 처리된 값으로 구성되어 있다..[MEMBER 테이블][BOARD 테이블]■ Blind SQL InjectionBlind SQL Injection은 참(True)인 쿼리문과 거짓(False)인 쿼리문 입력 시 반환되는 서버의 응답이 다른 것을 이용하여 이를 비교하여 데이터를 추출하는 공격이다. Blind SQL Injection은 다른 유형의 SQL Injection과 달리 추출하려는 실제 데이터가 눈에 보이지 않는다. 따라서 참 또는 거짓의 입력값에 따른 서버의 응답을 통해 값을 유추해야 한다. .아래의 그림은 게시판의 검색 기능에서 Blind SQL Injection 취약점 여부를 확인한 결과이다. 참인 쿼리문을 입력할 경우 검색 결과가 출력되고, 거짓인 쿼리문을 입력할 경우 검색 결과가 표시되지 않는다..1) 입력값이 참인 경우 2) 입력값이 거짓인 경우이처럼 참 또는 거짓의 입력값에 대한 서버의 응답이 다를 때 Blind SQL Injection이 가능하다..Blind SQL Injection의 공격 과정은 테이블 목록화 → 컬럼 목록화 → 데이터 목록화 순으로 이뤄지며, 각 단계는 아래의 과정을 반복적으로 수행한다.[데이터 추출 과정 예시]※ 참 또는 거짓의 입력값에 대한 서버의 응답을 확인할 수 없을 때, 특정 시간 동안 응답을 지연시키는 방법으로 데이터를 추출하는 방법도 있다. 이를 Time Based SQL Injection이라고 한다...■ 공격 진행에 앞서1. SUBSTR함수 - 문자열 자르기Blind SQL Injection은 문자열에 대한 특정 위치의 문자를 확인할 수 있다. 이때 문자열을 자르는 함수인 SUBSTR함수를 사용하며, 예시는 다음과 같다. ※ MySQL, MS-SQL의 경우 SUBSTRING 함수를 사용한다..2. ASCII함수 - 문자를 숫자로 변환하기SUBSTR함수를 통해 문자열 중 1개의 문자를 출력한 후, 조건문에서 값을 비교하기 위해 논리형 자료로 가공한다. 추출한 문자를 숫자로 변환[1] 하여 범위를 설정해 값을 유추하면 비교 연산을 쉽게 진행할 수 있다. 이때 문자를 ASCII(숫자, 10진수) 형태로 변환하는 ASCII함수를 사용하여 ASCII 값과 비교를 통해 문자를 추적할 수 있다.[1] 비교하는 두 데이터의 형식이 일치하지 않을 경우 'ORA-01722: invalid number' 에러가 발생한다.문자열 'eqst'의 첫 번째 문자인 'e'를 ASCII함수로 변환하고, 참 또는 거짓인 조건문에 대한 출력 결과는 다음과 같다.■ 공격 진행 과정Blind SQL Injection의 공격 진행 과정은 다음과 같다. [Blind SQL Injection 진행 과정]Step 1. 취약점 존재 여부 확인사용자 입력값을 결과로 출력해 주는 게시판의 검색 기능에서 SQL Injection 취약점 존재 여부를 확인한다. SQL구문에서 문법적 요소로 작용하는 싱글쿼터(') 등과 같은 특수문자를 입력하여 입력했을 때 서버의 반응을 보고 취약점 존재 여부를 판단할 수 있다..Step 2. Blind SQL InjectionBlind SQL Injection은 참과 거짓의 논리를 통해 공격이 진행된다. 각 테이블/컬럼/데이터의 전체 개수를 확인하고 SUBSTR함수를 사용해 각 테이블/컬럼/데이터의 문자를 1개씩 추출한다. 추출한 문자를 ASCII 함수를 사용해 숫자로 변환하여 비교 연산을 통해 문자를 확인한다. 행 번호와 자릿수를 증가시켜가며 문자열을 추적하는 과정을 반복하면 원하는 데이터를 추출할 수 있다. 2-1) 테이블 정보 확인원하는 데이터를 추출하기 위해 전체 테이블 개수를 확인해야 한다. 실습에서는 user_tables를 통해 사용자가 생성한 전체 테이블 개수를 조회한다.테이블의 개수를 확인한 후 원하는 테이블을 찾을 때까지 행 번호와 자릿수를 증가시켜가며 테이블명을 추출한다.위의 과정을 반복하여 추출한 사용자 생성 테이블 목록 중 1번째 테이블의 이름은 'MEMBER'이다..2-2) 컬럼 정보 확인원하는 테이블의 컬럼 정보를 확인하기 위해 앞서 획득한 'MEMBER' 테이블의 전체 컬럼 수를 추출한다.위의 과정을 반복하여 추출한 MEMBER 테이블의 1번째 컬럼명은 'USERID'이다..2-3) 데이터 정보 확인MEMBER 테이블의 USERID 컬럼의 데이터를 추출하기 위해 해당 테이블의 데이터 개수를 확인한다.MEMBER 테이블의 전체 데이터 개수 확인 후 원하는 데이터를 찾을 때까지 행 번호와 자릿수를 증가시켜가며 데이터를 추출한다.위의 과정을 반복하여 추출한 MEMBER 테이블의 1번째 USERID의 값은 'admin'이다..Step 3. 원하는 데이터 탈취이처럼 참 또는 거짓의 쿼리에 대한 서버 측의 응답을 통해 전체 테이블/컬럼/데이터의 개수를 확인하여 원하는 데이터의 문자열을 1개씩 추출한다. 추출한 문자를 비교 연산을 통해 데이터를 유추하여 데이터베이스의 모든 데이터 추출이 가능하다..Blind SQL Injection은 과정이 반복되는 만큼 자동화된 스크립트를 사용하는 것이 일반적이다. 또한 많은 양의 로그를 유발하므로 공격 횟수를 최소화하여 진행해야 한다. ..■ 보안 대책SQL Injection의 보안 대책은 크게 2가지가 있다.- Prepared Statement[2] : SQL Injection의 근본적인 해결책이지만, 문법적/비즈니스 로직 상 사용이 불가한 로직이 있으며 서버가 운영 중일 경우 소스코드 수정이 어려울 수 있다.- Filtering: White List Filter 방식을 적용해 허용할 문자열을 지정하는 것이 좋다. 상황에 따라 Black List Filter 방식을 적용해야 한다면, 공격 기법에 사용될 수 있는 예약어 및 특수 문자를 모두 Filtering 해야 한다.※ 문자열 Filtering 시 대소문자 모두 Filtering 하는 것을 권장한다.※ Blind SQL Injection의 경우 SUBSTR, ASCII, <, > 등 공격에 활용되는 함수, 연산자 등을 필터링해야 한다..[2] Prepared Statement는 컴파일이 미리 되어있기 때문에 입력값을 변수로 선언해두고 필요에 따라 값을 대입하여 처리한다. .. ■ 맺음말지금까지 참 또는 거짓의 쿼리문 삽입 시 반환되는 서버의 응답을 통해 진행되는 Blind SQL Injection에 대해 알아보았다. 공격 난이도가 높지만, 자동화 스크립트 또는 툴을 이용해 쉽게 공격이 가능하다. 또한 모든 페이지에서 공격이 가능하기 때문에 발생 빈도가 높아 주의가 필요하다..『웹 취약점과 해킹 매커니즘』에서 다룬 세 가지 공격 유형의 SQL Injection에 대한 특징은 다음과 같다.이 콘텐츠의 저작권은 ㈜SK쉴더스에 있으며 영리적, 개인적 사용, 무단 수정을 금합니다. COPYRIGHT ⓒ 2021 SK SHIELDUS. All Rights Reserved.
> 주요사업 > 사이버안전센터 운영 > 사이버위협 정보 및 통계 > 보안뉴스
Q. 이 페이지에서 제공하는 정보에 대하여 어느 정도 만족하셨습니까?
평균 3.1점 / 27명 참여