Web Security Checker
    • PDF

    Web Security Checker

    • PDF

    기사 요약

    Classic/VPC 환경에서 이용 가능합니다.

    Web Security Checker와 웹 취약점에 대한 설명

    Web Security Checker는 고객의 웹 서비스를 대상으로 자동으로 취약점을 진단하는 서비스입니다.

    서비스 이용 추천 고객

    Web Security Checker 서비스는 이런 고객 분들께 추천드립니다.

    1. 고가의 웹 취약점 진단 도구나 보안 컨설팅 비용이 부담스러운 고객

    웹 서비스의 취약점을 진단하기 위한 별도의 소프트웨어 구매 및 갱신, 모의해킹이나 컨설팅과 같은 웹 취약점 진단 업무 의뢰, 전문 보안 인력 채용 등 서비스 보안을 위해 투자되는 비용들을 대폭 절감할 수 있습니다.

    2. 취약점 진단이 급하게 필요한 고객

    침해 정황이 발견되었거나 서비스 오픈을 위해 빠르게 웹 취약점 진단이 필요할 경우 효과적으로 이용할 수 있습니다.

    3. 보안 인증이나 법률에서 요구하는 취약점 진단을 손쉽게 진행하고자 하는 고객

    보안 인증 획득, 개인 정보의 저장/전송/취급, 전자 금융 거래 등 다양한 사업적 니즈에 따라 준수되어야 하는 법률적 요건들을 Web Security Checker 서비스를 통해 빠르고 쉽게 만족시킬 수 있습니다.

    4. 운영 중인 서비스에 대해 취약점 진단을 수행하고 싶으나, 보안 담당자가 없는 고객

    100% 자동으로 진단되어 대응 방안까지 제시되기 때문에 전문 보안 담당자가 아니더라도 웹 취약점 진단이 가능합니다.

    5. 잠재적 취약점을 사전에 찾아내어 조치함으로써 서비스 보안성을 확보하고 싶은 고객

    개발된 웹 페이지의 취약점을 진단하여 사전에 조치할 수 있고 이를 통해 보안성이 높고 안정적인 서비스를 고객에게 제공할 수 있습니다.

    웹 취약점에 대해

    웹 취약점 정의

    '웹 취약점'이란 웹 서비스를 운영 혹은 이용할 때 발생될 수 있는 웹 애플리케이션의 소스 코드와 동작 방식 등에 존재하는 보안상 약점을 말합니다.

    진단 가능한 취약점

    Web Security Checker는 실제로 해커에 의해 가장 많이 이용되는 취약점과 공격이 성공할 경우 피해가 큰 취약점을 중점적으로 진단합니다.

    현재는 XSS, SQL Injection, XXE, SSRF 등 주요 웹 취약점에 대한 진단이 가능하며, 진단 가능한 취약점은 계속해서 업데이트될 예정입니다.

    진단 가능한 취약점 상세 설명 : https://www.gov-ncloud.com/product/security/webSecurityChecker

    서비스 구조와 취약점 진단 방식

    서비스 구조

    Web Security Checker 서비스는 진단에 필요한 정보를 콘솔로부터 입력받아 진단을 시작합니다. 진단 대상 정보 입력 시 http://, https://를 포함하는 URL 형식으로 입력해야 합니다.

    진단 방식

    Web Security Checker 서비스는 고객의 웹 서비스에 취약점이 존재하는지 검증하기 위해 다양한 HTTP 패킷을 고객의 웹 서버로 전송하고, 그 응답 값을 면밀히 분석하여 취약 여부를 판단합니다.

    진단은 다음과 같이 진행됩니다.

    1. 빈틈없는 진단을 수행하기 위해 고객 웹 사이트 내 url들을 크롤링 하여 점검 대상 URL을 수집합니다.
    2. 수집된 URL들을 대상으로 취약점 존재 여부를 파악하기 위해 정교하게 구성한 HTTP 패킷을 전송하고 응답 값을 분석해 취약점을 탐지합니다.
    3. 탐지된 취약점에 대해 고객에게 적합한 대응 방안을 제시합니다.

    모든 과정은 100% 자동화로 진행되어 사람이 찾기 어려운 부분까지 빠르고 빠짐없이 취약점을 찾아낼 수 있습니다.

    진단 결과 확인 및 취약점 대응

    Web Security Checker는 취약점 진단 결과 리포트를 제공합니다. 리포트에는 진단 대상, 진단 시간, 로그인 정보 등 진단 작업에 대한 정보와 함께 발견된 취약점의 종류, 위험도, 개수 등을 포함하고 있습니다. 또한, 발견된 취약점들에 대한 상세 설명과 발견된 위치, 취약점 검증에 사용된 HTTP 패킷과 함께 상세 대응 방안도 기술되어 있습니다.

    진단 완료 알림 받기

    진단 완료 시 설정한 통보 방식에 따라 E-mail과 휴대폰 SMS로 즉시 통보받을 수 있으며 웹 취약점 진단 결과 리포트도 바로 확인이 가능합니다.

    security-7-103_ko.png

    발견된 취약점 대응

    Web Security Checker 진단 완료 시 리포트를 제공합니다. 리포트에는 발견된 취약점에 대한 내용뿐만 아니라 대응 방안도 함께 포함되어 있어, 취약점 대응 시 참고 자료로 활용할 수 있습니다.

    security-7-102_ko.png

    취약점 재진단 하기

    최초 진단한 후 60일 내 동일한 대상을 2회까지 무료로 재진단을 할 수 있습니다. 앞서 발견된 취약점을 조치한 후에 “재진단 기능”을 활용한다면 보다 쉽게 취약점 조치 여부를 확인할 수 있습니다.

    오탐과 미탐 가능성

    Web Security Checker는 다년간 쌓은 기술적 노하우를 통해 잠재적 취약점까지 찾아내는 방식으로 설계/구현하여 탐지율을 최대한 높였습니다. 또한 자동 진단 툴이라는 특성상 오탐과 미탐의 가능성이 존재하나 다양한 검증 기술을 적용하여 이를 최소화하였습니다.

    고객 주의사항

    1. 수집/진단 중 스크립트가 실행되어 파일, 테스트 값이 생성되거나 데이터가 변경 또는 삭제될 수 있습니다.

    Web Security Checker는 페이지 수집 능력을 극대화하기 위해 동적으로 페이지를 방문하는 과정에서 스스로 버튼 또는 링크를 클릭하여 특정 기능이 실행될 수 있습니다. 이런 이유로 의도하지 않은 데이터의 변경, 삭제, 테스트 데이터 입력이 일부 발생할 수도 있습니다. 단, 이러한 행위가 발생하지 않도록 최대한 안전하게 설계되었음에도 개발된 코드에 따라서 불가피하게 행해지는 경우도 있습니다.

    2. 관리자에게 임의 메일이 발송될 수 있습니다.

    웹 서비스에서 관리자에게 메일을 발송하는 기능이 구현되어 있는 경우, 테스트 값이 삽입된 메일이 발송될 수 있습니다.

    3. 진단하는 동안 트래픽이 증가할 수 있습니다.

    자체 개발한 진단 알고리즘을 통해 취약점 진단 시 트래픽 발생을 최소화하였으나, 취약점 진단 솔루션 특성상 어느 정도 트래픽이 발생할 수 있습니다.

    4. 사이트의 응답 속도가 지연될 수 있습니다.

    Web Security Checker는 웹 취약점을 명확히 진단하기 위해 많은 HTTP 패킷을 웹 서버로 전송하고 있습니다. 이때 사이트의 응답 속도가 느려지는 것을 막기 위해 각종 안전장치 추가와 최적의 진단 알고리즘을 적용해 요청을 최소화하였습니다. 실제로 비슷한 동작을 하는 S/W에 비해 훨씬 더 안전하고 적은 트래픽을 발생시키고 있습니다. 그럼에도 불구하고 구현된 코드에 따라 일부 사이트의 경우 응답 속도가 지연될 수 있습니다. 특히 SQL 관련 취약점이 존재할 경우 잘못된 코딩으로 인한 지연 현상이 발생할 수도 있습니다.

    5. URL 수집 및 진단이 어려운 경우가 있습니다.

    Web Security Checker 는 SSR(Server Side Rendering), CSR(Client Side Rendering) 기반의 웹 페이지와 DOM 클릭 이벤트에 의해서 랜더링되는 웹 페이지에서의 URL 수집을 지원하고 있습니다. 다만, SPA 방식으로 개발된 사이트에서 클릭 외 이벤트가 발생할 때 요청하는 URL 은 수집하지 않습니다. 또한 JSON 방식으로 요청하는 웹 사이트의 경우 정상적인 진단이 어려울 수 있습니다. (※ 향후 지원 예정)

    6. 오탐이 발생할 수 있습니다.

    Web Security Checker는 다년간 쌓은 기술적 노하우를 통해 잠재적 취약점까지 찾아내는 방식으로 설계/구현하여 탐지율을 최대한 높였습니다.
    하지만 자동 진단 툴이라는 특성상 오탐과 미탐의 가능성이 존재하므로, 추가 검증이 필요할 수 있습니다.

    좀 더 안전하게 진단하기 위한 팁

    1. 테스트 환경을 이용하세요.

    Web Security Checker는 비교적 안전하게 작동하도록 설계되어 있습니다. 그럼에도 불구하고 웹 취약점을 잘 찾기 위해 일부 의도치 않은 동작이 발생할 수 있어 주의가 필요합니다.

    이러한 상황을 대비하여 알파, 베타, 개발 서버 등 리얼 서버가 아닌 테스트 환경을 이용하시면 좀 더 안전하게 진단 서비스를 받으실 수 있습니다.

    2. 백업과 모니터링을 이용하세요.

    위에서 설명드린 테스트 환경을 이용하는 것과 더불어 진단 전 서비스 백업과 모니터링을 활용한다면 만에 하나 발생할 수 있는 위험을 최소화하여 좀 더 안전하게 진단을 받을 수 있습니다.

    3. 제외 URL을 활용하세요.

    제외 대상 정보 입력 기능을 통해 진단에서 제외하고자 하는 URL을 입력할 수 있습니다. 웹 서비스에 큰 영향을 줄 수 있는 페이지나 수집/진단 과정에서 페이지 내 스크립트 실행 차단이 필요한 페이지를 사전에 입력하여 진단 대상에서 제외해 주세요.

    security-7-104-1_ko.png

    4. 인증이 필요한 경우, 인증에 사용된 계정에 꼭 필요한 권한만 부여해 주세요.

    관리자 또는 개발자 계정과 같은 권한의 경우 의도치 않은 동작 발생 시 일반 계정에 비해 위험 부담이 커질 수 있습니다.

    HTTP Header 입력을 통해 인증 정보를 입력할 경우 해당 계정의 권한에 적절한 권한만 부여되었는지 확인이 필요합니다.

    security-7-105-1_ko.png

    5. 예약 기능을 이용해 고객 이용이 적은 시간에 진단하세요.

    서비스를 정식으로 제공 중인 경우 안전한 진단이 필수이므로, 이용자가 많은 시간보다는 이용자가 적은 새벽 시간에 진단하는 것을 권장합니다.

    security-7-106-1_ko.png)

    서비스 이용 방법

    이용 순서

    Web Security Checker 서비스 이용 시 아래와 같은 순서로 진행됩니다.

    security-7-107.svg

    웹 사이트 진단 따라 하기

    Step 1. 로그인 후 콘솔 접속

    네이버 클라우드 플랫폼[공공기관용] 포털( https://www.gov-ncloud.com )에 접속하여 로그인 후 우측 상단의 [Console] 버튼을 클릭하여 접속합니다.

    Step 2. Web Security Checker 이용 시작

    네이버 클라우드 플랫폼 콘솔에서 Services > Security > Web Security Checker 메뉴를 차례대로 클릭해주십시오.

    security-7-110_ko.png

    [스캔작업 생성] 버튼을 클릭해주십시오.

    Step 3. 서비스 이용약관 동의

    security-7-111_ko.png

    ① 서비스 이용 약관을 읽고 나서 동의할 경우 체크박스에 체크합니다.

    [확인] 버튼을 클릭하여 본격적으로 이용 신청을 진행합니다. (이용약관 동의창은 동의 후에는 나타나지 않습니다.)

    Step 4. 대상 정보 입력

    security-7-112_ko.png

    ① http://, https://를 포함한 진단할 대상 URL을 입력합니다.

    Step 5. 소유 여부 확인

    security-7-112-1_ko.png

    [소유 여부 확인] 버튼을 클릭하여 네이버 클라우드 플랫폼에서 생성한 웹 서버인지 확인합니다. 타사 인프라에 속한 웹 서버라면 아래 그림과 같은 팝업이 노출됩니다.

    만약 네이버 클라우드 플랫폼에 속한 웹 서버라면 Step 6로 바로 넘어가게 됩니다.

    security-7-112-2_ko.png

    ① 웹 취약점을 점검하는 과정에서 스캐너가 타사 네트워크에서 차단되지 않도록 Web Security Checker의 NAT IP를 해당 인프라 업체에서 제공하는 방법으로 예외처리 절차를 진행 합니다.

    [인증 파일 생성 및 다운로드] 버튼을 클릭하여 인증 파일을 다운로드하고, 해당 파일을 나열된 경로 중 원하는 한 곳에 업로드 합니다.

    ③ 본인 소유의 웹 서버가 아닐 경우 법적 책임이 있을 수 있다는 내용에 대한 동의를 체크합니다.

    ④ 동의 체크를 할 경우에만 취약점 진단이 가능합니다.

    Step 6. 제외 대상 정보 입력

    security-7-112-3_ko.png

    ① 진단에서 제외할 URL 정보를 입력합니다. [추가] 버튼을 클릭하여 다수의 제외 URL 입력도 가능합니다.

    Step 7. 로그인 정보 입력

    HTTP Header를 이용한 인증 정보 입력

    security-7-113-1_ko2

    ① 진단 시 인증 기능을 사용하려면 HTTP Header 입력 방식을 선택하고, 사용하지 않을 경우 [입력하지 않음] 을 클릭합니다.

    ② HTTP Header 입력의 경우 직접 서버에 로그인한 후 Request Header 값을 HTTP Header 입력 폼에 입력합니다.

    [인증 결과 스크린샷 보기] 버튼을 클릭하여 입력한 HTTP Header 값이 올바르게 적용되었는지 확인이 가능합니다.

    Step 8. 예약 및 세부 설정

    security-7-115_ko.png

    ① 즉시 진단이 아닌 예약 진단을 원할 경우 [예약] 라디오 버튼을 클릭합니다.

    ② 날짜를 선택하기 위해 달력 모양을 클릭합니다.

    ③ 진단할 날짜를 선택합니다.

    ④ 진단할 시간을 선택합니다.

    Step 9. 추가 세부 설정

    security-7-116_ko.png

    ① 진단 시 사용할 User- Agent를 선택합니다. 진단하고자 하는 환경에 맞게 PC, Android, iPhone 등 User Agent 중 하나를 선택합니다.

    ② 진단 속도를 설정합니다. (진단 속도가 빠를수록 진단 시간은 단축될 수 있으나, 웹 서비스에 부하가 비교적 높아질 수 있습니다.)

    ③ 진단 완료 시 알림을 받고 싶은 경우 [통보대상 설정하기] 를 클릭하여 진행할 수 있습니다.

    ④ 진단 이력 관리 페이지에서 표시될 해당 진단 작업에 대한 메모를 자유롭게 남길 수 있습니다.

    통보대상 설정하기

    security-7-117_ko.png

    ① 통보대상자를 추가하고 싶을 때 클릭하면 통보대상관리 페이지로 이동됩니다.

    ② 지정할 대상자가 포함되어 있는 통보대상자 그룹을 선택합니다.

    ③ 추가할 대상자를 선택합니다.

    ④ 대상자를 추가할 때 [추가] 버튼을 클릭합니다.

    ⑤ 대상자를 삭제할 때 [삭제] 버튼을 클릭합니다.

    ⑥ 설정이 완료되었으면 [설정 저장] 버튼을 클릭합니다.

    Step 10. 설정 내용 최종 확인 및 진행 방식 선택

    security-7-118_ko.png

    ① 설정한 내용으로 진단 작업을 생성합니다. 진단 작업이 생성되면 지정한 일정(즉시 또는 예약)에 따라 작업이 진행됩니다.

    ② 설정 페이지로 돌아가고자 할 때 클릭합니다.

    Step 11. 작업 진행 상황 확인

    security-7-119_ko.png

    ① 진단 시작 시간입니다. 예약 진단일 경우 진단이 시작될 시간입니다.

    ② 진단이 완료된 시간입니다.

    ③ 현재 진단 상태입니다.

    ④ 웹 사이트로부터 수집되어 진단할 URL 개수입니다.

    ⑤ 발견된 취약점 개수입니다.

    Step 12. 작업 중지

    security-7-120_ko.png

    ① “URL 수집중”, “진단 진행중” 상태에서 작업 중지를 원할 경우 [중지] 버튼을 클릭합니다.

    ② 정말 중지를 원할 경우 [네] 버튼을 클릭합니다.

    Step 13. 예약 취소

    security-7-121_ko.png

    ① “진단 예약” 상태에서 취소를 원할 경우 [취소] 버튼을 클릭합니다.

    ② 정말 취소를 원할 경우 [네] 버튼을 클릭합니다.

    Step 14. 취약점 진단 결과 리포트 확인

    security-7-122_ko.png

    ① 진단 완료 시 활성화되는 [리포트] 버튼을 클릭합니다.

    security-7-123_ko.png

    ② 브라우저에서 바로 열람이 가능하며 PDF 파일로 다운로드를 원할 경우 클릭합니다.

    Step 15. 취약점 조치 후 재진단 수행

    security-7-124_ko.png

    [재진단 작업생성] 버튼을 클릭합니다. (최초 진단한 후 60일 내 동일한 대상을 2회까지 무료 재진단 가능)

    security-7-125-1_ko1

    ② 최초 진단 시 입력한 대상 정보는 수정할 수 없습니다.

    ③ 최초 진단 시 인증 정보를 입력하였다면 해당 세션이 만료되었을 수 있으니 진단대상 사이트에서 로그인 과정을 다시 진행 후 새로운 Request Header 정보를 입력하기 바랍니다.

    security-7-126_ko.png

    ④ 진단 항목은 변경 가능합니다.

    ⑤ 설정한 내용으로 재진단 작업을 생성합니다.


    이 문서가 도움이 되었습니까?

    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.