KR101885615B1 - 공격 문자열 생성 방법 및 장치 - Google Patents

공격 문자열 생성 방법 및 장치 Download PDF

Info

Publication number
KR101885615B1
KR101885615B1 KR1020160091242A KR20160091242A KR101885615B1 KR 101885615 B1 KR101885615 B1 KR 101885615B1 KR 1020160091242 A KR1020160091242 A KR 1020160091242A KR 20160091242 A KR20160091242 A KR 20160091242A KR 101885615 B1 KR101885615 B1 KR 101885615B1
Authority
KR
South Korea
Prior art keywords
attack
web application
string
final
analyzer
Prior art date
Application number
KR1020160091242A
Other languages
English (en)
Other versions
KR20180009510A (ko
Inventor
진민식
윤종원
임종환
Original Assignee
주식회사 스패로우
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 스패로우 filed Critical 주식회사 스패로우
Priority to KR1020160091242A priority Critical patent/KR101885615B1/ko
Priority to CN201680087790.9A priority patent/CN109565499B/zh
Priority to US16/318,476 priority patent/US11496502B2/en
Priority to PCT/KR2016/008263 priority patent/WO2018016669A2/ko
Priority to JP2019503340A priority patent/JP6785360B2/ja
Publication of KR20180009510A publication Critical patent/KR20180009510A/ko
Application granted granted Critical
Publication of KR101885615B1 publication Critical patent/KR101885615B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Computer And Data Communications (AREA)
  • Debugging And Monitoring (AREA)

Abstract

웹 애플리케이션의 실행 상태를 분석하는 동적 분석기의 동작 방법이 개시된다. 상기 웹 애플리케이션을 통해 실행될 특정 동작을 지시하는 파라미터를 포함하는 최종 공격 문자열에 기초한 상기 웹 애플리케이션의 실행 상태를 분석하는 단계; 및 웹 애플리케이션의 실행 상태에 대한 분석하는 단계를 포함하며, 상기 최종 공격 문자열은 미리 정의된 파라미터를 포함하는 원시 공격 문자열을 필터링하도록 설계된 필터링 로직을 회피하도록 생성된다. 따라서 간단한 필터링을 우회할 수 있는 최종 공격 문자열 생성을 통해 기존 동적 분석기에서 검출하지 못하던 보안 취약점을 검출할 수 있다.

Description

공격 문자열 생성 방법 및 장치{METHOD FOR GENERATING ATTACK CHARACTER STRING AND APPARATUS FOR THE SAME}
본 발명은 웹 애플리케이션을 통해 실행되는 공격 문자열을 생성하는 기술에 관한 것으로, 더욱 상세하게는 정적 분석기에서 생성된 문자열 제약 조건을 활용하여 공격 문자열을 생성하는 방법 및 장치에 관한 것이다.
웹 애플리케이션 사용자층이 두터워짐에 따라 시장에 출시되는 웹 애플리케이션의 수가 급증하고 있다. 이에 따라 웹 애플리케이션 보안 위협도 함께 증가하고 있는 추세이다. 웹 애플리케이션의 구조 및 기능상의 취약점을 악용하여 악의적인 행위를 하는 코드가 삽입되는 경우가 발생한다. 웹 애플리케이션을 통한 정보 유출이 사회적 문제로 대두하고 있기 때문에 취약 웹 애플리케이션을 검증하기 위한 연구의 중요성이 높아지고 있다.
웹 애플리케이션을 검증하기 위한 방법론은 크게 두 가지로 나눌 수 있다. 첫 번째는 정적 분석을 통한 방법이다. 이는 다수의 웹 애플리케이션을 분석하여 특성을 추출한 후 특성을 기준으로 웹 애플리케이션의 취약 여부를 검사하는 형태로 수행된다. 이러한 방법은 악성 행위 특성을 코드 패턴 및 사용 권한 패턴 등으로 다각화하여 적용할 수 있기 때문에 여러 연구에 기반 기술로 사용되고 있다. 하지만, 새로운 악성 행위가 나타날 때마다 기준 데이터를 생성하여야 하고, 분석 결과가 기준 데이터에 따라 다르게 나올 수 있다는 단점이 존재한다.
두 번째로 동적 분석 방식은 플랫폼 및 웹 애플리케이션을 수정하여 동작 시킴으로써 내부에서 사용되는 데이터의 전파 경로 및 유출 여부를 파악하는 분석 방법이다. 이는 운영체제 내부적으로 사용되는 데이터와 웹 애플리케이션이 사용하는 데이터의 전파 흐름을 상세히 파악할 수 있는 장점을 가진다. 하지만 목적에 맞게 수행된 환경 내에서만 분석이 가능하므로 새로운 플랫폼 버전이 등장할 경우나, 간단한 방법의 필터링을 할 경우, 공격 문자열이 이를 우회하게 되어 인식하지 못하게 되는 문제가 있으며, 필터링을 우회할 수 있는 공격 문자열을 검출하기 위해서는 추가적인 환경 구성 작업이 필요하다. 일반적으로 정적, 동적 방법론의 장단점이 각각 존재하기 때문에 목적에 따라 두 가지 분석 방안을 취사선택하여 사용한다. 하지만 두 방법 모두 공통적으로 분석을 위한 준비 과정(기준 데이터 확립, 환경 설정 등)이 오래 걸리는 단점을 가진다. 또한, 결과 분석이 어렵기 때문에 분석 과정에서 많은 시간이 필요하다는 한계점이 존재한다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 미리 설정된 필터링 로직을 우회할 수 있는 공격 문자열을 생성하는 방법 및 장치를 제공하는 데 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, 공격 문자열에 기초한 웹 애플리케이션의 실행 상태를 분석하는 방법 및 장치를 제공하는 데 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 웹 애플리케이션(application)의 실행 상태를 분석하는 동적 분석기의 동작 방법은, 상기 웹 애플리케이션을 통해 실행될 특정 동작을 지시하는 파라미터(parameter)를 포함하는 최종 공격 문자열을 포함하는 응답 메시지를 서버로부터 수신하는 단계; 상기 최종 공격 문자열에 기초한 상기 웹 애플리케이션의 실행 상태를 분석하는 단계; 및 상기 웹 애플리케이션의 실행 상태에 대한 분석 결과에 기초하여 상기 최종 공격 문자열이 상기 웹 애플리케이션에 의해 필터링(filtering)되는지 여부를 판단하는 단계를 포함하며, 상기 최종 공격 문자열은 미리 정의된 파라미터를 포함하는 원시 공격 문자열을 필터링하도록 설계된 필터링 로직(logic)을 회피하도록 생성된다.
여기서, 상기 동적 분석기의 동작 방법은, 상기 최종 공격 문자열의 제공을 요청하는 요청 메시지를 상기 서버에 전송하는 단계를 더 포함하며, 상기 응답 메시지는 상기 요청 메시지에 대한 응답으로 수신될 수 있다.
여기서, 상기 웹 애플리케이션에 의해 필터링되는지 여부를 판단하는 단계는, 상기 최종 공격 문자열에 의해 지시되는 특정 동작이 상기 웹 애플리케이션을 통해 실행되는 경우, 상기 최종 공격 문자열이 상기 웹 애플리케이션에 의해 필터링되지 않는 것으로 판단할 수 있다.
여기서, 상기 웹 애플리케이션에 의해 필터링되는지 여부를 판단하는 단계는, 상기 최종 공격 문자열에 의해 지시되는 특정 동작이 상기 웹 애플리케이션을 통해 실행되지 않는 경우, 상기 최종 공격 문자열이 상기 웹 애플리케이션에 의해 필터링되는 것으로 판단할 수 있다.
여기서, 상기 최종 공격 문자열은 URL(uniform resource locator) 주소를 더 포함할 수 있다.
여기서, 상기 웹 애플리케이션을 통해 실행될 특정 동작은, DDoS(distributed denial of service) 공격 동작, 악성 스크립트 실행(XSS: Cross Site Scripting phishing) 공격 동작, APT(advanced persistent threat) 공격 동작, 패스워드 크래킹(password cracking) 공격 동작, 키로깅(keylogging) 공격 동작, 스푸핑(spoofing) 공격 동작 및 루트킷(rootkit) 공격 동작 중에서 적어도 하나를 포함할 수 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 공격 문자열을 생성하는 서버의 동작 방법은, 정적 분석기로부터 미리 정의된 파라미터(parameter)를 포함하는 원시 공격 문자열을 필터링(filtering)하도록 설계된 필터링 로직(logic)을 회피하기 위한 정책을 포함하는 제1 응답 메시지(message)를 수신하는 단계; 상기 필터링 로직을 회피하도록, 웹 애플리케이션을 통해 실행될 특정 동작을 지시하는 수정된 파라미터를 포함하는 최종 공격 문자열을 생성하는 단계; 및 상기 최종 공격 문자열을 포함하는 제2 응답 메시지를 동적 분석기에 전송하는 단계를 포함한다.
여기서, 상기 서버의 동작 방법은, 상기 필터링 로직을 회피하기 위한 정책의 제공을 요청하는 제1 요청 메시지를 상기 정적 분석기에 전송하는 단계를 더 포함하며, 상기 제1 응답 메시지는 상기 제1 요청 메시지에 대한 응답으로 수신될 수 있다.
여기서, 상기 서버의 동작 방법은, 상기 최종 공격 문자열의 제공을 요청하는 제2 요청 메시지를 상기 동적 분석기로부터 수신하는 단계를 더 포함하며, 상기 제2 응답 메시지는 상기 제2 요청 메시지에 대한 응답으로 전송될 수 있다.
여기서, 상기 제1 응답 메시지는 URL(uniform resource locator) 주소 및 웹 애플리케이션을 실행될 특정 동작을 지시하는 원시 파라미터를 더 포함할 수 있다.
여기서, 상기 최종 공격 문자열은 URL(uniform resource locator) 주소를 더 포함할 수 있다.
여기서, 상기 웹 애플리케이션을 통해 실행될 특정 동작은, DDoS(distributed denial of service) 공격 동작, 악성 스크립트 실행(XSS: Cross Site Scripting phishing) 공격 동작, APT(advanced persistent threat) 공격 동작, 패스워드 크래킹(password cracking) 공격 동작, 키로깅(keylogging) 공격 동작, 스푸핑(spoofing) 공격 동작 및 루트킷(rootkit) 공격 동작 중에서 적어도 하나를 포함할 수 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 최종 공격 문자열을 생성하는 서버(Server)는, 프로세서(Processor); 및 상기 프로세스를 통해 실행되는 적어도 하나의 명령이 저장된 데이터베이스를 포함하고, 상기 적어도 하나의 명령은, 정적 분석기로부터 미리 정의된 파라미터(parameter)를 포함하는 원시 공격 문자열을 필터링(filtering)하도록 설계된 필터링 로직(logic)을 회피하기 위한 정책을 포함하는 제1 응답 메시지(message)를 수신하고, 상기 필터링 로직을 회피하도록, 웹 애플리케이션을 통해 실행될 특정 동작을 지시하는 수정된 파라미터(parameter)를 포함하는 최종 공격 문자열을 생성하고, 그리고 상기 최종 공격 문자열을 포함하는 제2 응답 메시지를 동적 분석기에 전송하도록 실행 가능하다.
여기서, 상기 적어도 하나의 명령은, 상기 필터링 로직을 회피하기 위한 정책의 제공을 요청하는 제1 요청 메시지를 상기 정적 분석기에 전송하도록 실행 가능하며, 상기 제1 응답 메시지는 상기 제1 요청 메시지에 대한 응답으로 수신될 수 있다.
여기서, 상기 제1 응답 메시지는 URL(uniform resource locator) 주소 및 웹 애플리케이션을 실행될 특정 동작을 지시하는 원시 파라미터를 더 포함할 수 있다.
여기서, 상기 최종 공격 문자열은 URL(uniform resource locator) 주소를 더 포함 수 있다.
여기서, 상기 웹 애플리케이션을 통해 실행될 특정 동작은, DDoS(distributed denial of service) 공격 동작, APT(advanced persistent threat) 공격 동작, 패스워드 크래킹(password cracking) 공격 동작, 키로깅(keylogging) 공격 동작, 스푸핑(spoofing) 공격 동작 및 루트킷(rootkit) 공격 동작 중에서 적어도 하나를 포함할 수 있다.
본 발명에 따르면, 필터링 로직을 우회할 수 있는 공격 문자열이 생성될 수 있고, 공격 문자열에 기초한 웹 애플리케이션의 실행 상태를 확인할 수 있다. 따라서, 기존에 검출되지 못하던 웹 애플리케이션의 보안 취약점이 검출될 수 있다.
도 1은 본 발명의 일 실시예에 따른 공격 문자열에 기초한 웹 애플리케이션의 실행 상태를 분석하는 시스템을 간략히 도시한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 공격 문자열에 기초한 웹 애플리케이션의 실행 상태를 분석하는 시스템을 구성하는 노드를 도시한 블록도이다.
도 3은 본 발명의 일 실시예에 따른 공격 문자열에 기초한 웹 애플리케이션의 실행 상태를 분석하는 시스템을 구성하는 노드의 동작을 도시한 블록도이다.
도 4는 본 발명의 일 실시예에 따른 동적 분석기를 도시한 블록도이다.
도 5는 본 발명의 일 실시예에 따른 공격 문자열에 기초한 웹 애플리케이션의 실행 상태를 분석하는 방법을 도시한 순서도이다.
도 6은 본 발명의 일 실시예에 따른 정적 분석을 수행하는 방법을 도시한 흐름도이다.
도 7은 본 발명의 일 실시예에 따른 동적 분석을 수행하는 방법을 도시한 흐름도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다. 이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 공격 문자열에 기초한 웹 애플리케이션의 실행 상태를 분석하는 시스템을 간략히 도시한 블록도이다.
도 1을 참조하면, 공격 문자열에 기초한 웹 애플리케이션의 실행 상태를 분석하는 시스템 서버(Server)(100), 정적 분석기(110), 동적 분석기(120), 웹 애플리케이션(130)이 설치된 디바이스 등을 포함할 수 있다. 서버(100)는 유선 네트워크 또는 무선 네트워크를 통해 정적 분석기(110) 및 동적 분석기(120)와 연결될 수 있다. 예를 들어, 서버(100)는 3GPP 표준에서 규정된 LTE(long term evolution), LTE-A(long term evolution-advanced) 등에 의해 정적 분석기(110) 및 동적 분석기(120)와 연결될 수 있다. 또는, 서버(100)는 IEEE 표준에서 규정된 WLAN(Wireless LAN), WPAN(Wireless Personal Area Network) 등에 의해 정적 분석기(110) 및 동적 분석기(120)와 연결될 수 있다. 또는 서버(100)는 유선 랜 등에 의해 정적 분석기(110) 및 동적 분석기(120)와 연결될 수 있다.
서버(100)는 정적 분석기(110) 및 동적 분석기(120)로부터 최종 공격 문자열을 생성에 필요한 정보를 수신할 수 있고, 수신된 정보를 기초로 최종 공격 문자열을 생성 할 수 있다. 정적 분석기(110) 및 동적 분석기(120)는 소프트웨어 개발에 필요한 정보를 서버(100)에 전송할 수 있다.
동적 분석기(120)는 최종 공격 문자열을 생성하여 웹 애플리케이션(130)이 설치된 디바이스(device)에 전송할 수 있다.
도 2는 본 발명의 일 실시예에 따른 공격 문자열에 기초한 웹 애플리케이션의 실행 상태를 분석하는 시스템을 구성하는 노드를 도시한 블록도이다.
도 2를 참조하면, 노드(200)는 적어도 하나의 프로세서(processor)(210), 메모리(220) 및 네트워크와 연결되어 통신을 수행하는 네트워크 인터페이스 장치(230)를 포함할 수 있다. 또한, 노드(200)는 입력 인터페이스 장치(240), 출력 인터페이스 장치(250), 저장 장치(260) 등을 더 포함할 수 있다. 여기서, 노드(200)는 도 1을 참조하여 설명된 서버(100), 정적 분석기(110), 동적 분석기(120), 등일 수 있다. 노드(200)에 포함된 각각의 구성 요소들은 버스(bus)(270)에 의해 연결되어 서로 통신을 수행할 수 있다.
프로세서(210)는 메모리(220) 및/또는 저장 장치(260)에 저장된 프로그램 명령(program command)을 실행할 수 있다. 프로세서(210)는 중앙 처리 장치(central processing unit; CPU), 그래픽 처리 장치(graphics processing unit; GPU) 또는 본 발명에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(220)와 저장 장치(260)는 휘발성 저장 매체 및/또는 비휘발성 저장 매체로 구성될 수 있다. 예를 들어, 메모리(220)는 읽기 전용 메모리(read only memory; ROM) 및/또는 랜덤 액세스 메모리(random access memory; RAM)로 구성될 수 있다.
또한, 노드들 중에서 제1 노드에서 수행되는 방법(예를 들어, 신호(또는, 메시지(message))의 전송 또는 수신)이 설명되는 경우에도 이에 대응하는 제2 노드는 제1 노드에서 수행되는 방법과 상응하는 방법(예를 들어, 신호(또는, 메시지)의 수신 또는 전송)을 수행할 수 있다. 즉, 서버(100)의 동작이 설명된 경우에 이에 대응하는 정적 분석기(110) 및 동적 분석기(120)는 서버(100)의 동작과 상응하는 동작을 수행할 수 있다. 반대로, 정적 분석기(110) 및 동적 분석기(120)의 동작이 설명된 경우에 이에 대응하는 서버(100)는 정적 분석기(110) 및 동적 분석기(120)의 동작과 상응하는 동작을 수행할 수 있다.
도 3은 본 발명의 일 실시예에 따른 공격 문자열에 기초한 웹 애플리케이션의 실행 상태를 분석하는 시스템을 구성하는 노드의 동작을 도시한 블록도이다.
도 3을 참조하면, 공격 문자열에 기초한 웹 애플리케이션의 실행 상태를 분석하는 시스템은 서버(100), 정적 분석기(110), 동적 분석기(120), 웹 애플리케이션(130)이 설치된 디바이스, 등을 포함할 수 있다.
제약조건솔버(102)는 서버(100)에 포함되어 있을 수 있다. 정적 분석기(110)는 웹 상에 존재하는 웹 애플리케이션의 소스코드(310)가 저장된 웹서버와 유선 또는 무선 통신 방법으로 연결되어 있을 수 있다. 소스코드(310)는 또한 웹 애플리케이션(130) 개발 과정에서 이용 될 수 있다. 정적 분석기(110)는 서버(100)와 유선 및 무선 통신 방법으로 연결되어 있을 수 있다. 정적 분석기(110)와 서버(100)를 연결하는 유선 및 무선 통신 방법을 통해 정적 분석기(110)에서 서버(100)로 URL(Uniform Resource Locator) 주소(320), 파라미터 문자열(330), 파라미터 문자열 제약조건(340)이 전송될 수 있다. 파라미터 문자열(330)은, 문자열을 파라미터로 변환시킨 것을 의미할 수 있다. 또한 파라미터 문자열(330)은 정적 분석을 위해 사용되는 파라미터 문자열을 의미할 수 있다. 파라미터 문자열 제약조건(340)은 원시 공격 문자열을 필터링하도록 설계된 필터링 로직(Filtering Logic)을 회피할 수 있는 조건을 의미할 수 있다.
제약조건솔버(102)는 서버(100)에 존재하는 프로세서일 수 있다. 동적 분석기(120)는 서버(100)와 유선 및 무선 통신 방법으로 연결되어 있을 수 있다. 동적 분석기(120)는 서버(100)를 연결하는 유선 및 무선 통신 방법을 통해 서버(100)에서 동적 분석기(120)로 최종 공격 문자열(350)이 전송될 수 있다. 동적 분석기(120)는 디바이스에 설치된 웹 애플리케이션(130)의 실행 상태를 분석할 수 있다.
도 4는 본 발명의 일 실시예에 따른 동적 분석기를 도시한 블록도이다.
도 4를 참조하면, 동적 분석기(120)는 테스트 케이스(Test Case) 생성기(121), 자동 수행기(123), 결과 분석기(124) 등을 포함할 수 있다.
동적 분석기(120)는 최종 공격 문자열(350)을 수신하여 이를 동적 분석에 이용할 수 있다. 자동 수행기(123)는 디바이스(400)와 유선 및 무선 통신 방법으로 연결되어 있을 수 있다. 디바이스(400)는 확인하고자 하는 웹 애플리케이션을 설치하여 동적 분석을 지원할 수 있다.
테스트 케이스 생성기(121)는 테스트 목적에 따라 다른 형태의 테스트 케이스(122)를 생성할 수 있다.
자동 수행기(123)는 테스트 케이스 생성기(121)가 수행하는 명령을 자동으로 수행할 수 있으며, 웹 애플리케이션 설치 및 삭제 등을 담당할 수 있다. 결과 분석기(124)는 엑셀파일을 생성하기 위하여 각 정보를 취합할 수 있으며, 출력하고자 하는 형식에 따라 확장 및 변형이 가능할 수 있다.
도 5는 본 발명의 일 실시예에 따른 공격 문자열에 기초한 웹 애플리케이션의 실행 상태를 분석하는 방법을 도시한 순서도이다.
도 5를 참조하면, 동적 분석기(120)는 웹 애플리케이션을 통해 실행될 특정 동작을 지시하는 파라미터를 포함하는 최종 공격 문자열을 요청하는 신호(또는, 메시지)를 서버(100)로 전송할 수 있다(S500). 웹 애플리케이션을 통해 실행될 특정 동작을 지시하는 파라미터를 포함하는 최종 공격 문자열은, 원시 공격 문자열이었다면 필터될 수 있는 필터링 로직을 우회할 수 있다.
서버(100)는 최종 공격 문자열을 요청하는 신호(또는, 메시지)를 수신한 경우, 정적 분석기(110)로 URL주소, 파라미터 문자열, 파라미터 문자열 제약조건을 요청하는 신호(또는, 메시지)를 전송할 수 있다(S510).
URL주소는 인터넷 접속을 위해 이용되는 인터넷 주소를 의미할 수 있으며, 파라미터는 웹 애플리케이션을 통해 실행될 특정 동작을 지시할 수 있다. 파라미터 문자열은 파라미터가 문자열로 변환된 것을 의미할 수 있다. 파라미터 문자열 제약조건은 원시 공격 문자열을 필터링하도록 설계된 필터링 로직을 회피할 수 있는 조건을 의미할 수 있다.
동적 분석기(120)는 일반적인 공격 문자열을 의미하는 원시 공격 문자열을 기초로 동적 분석을 수행할 수 있다. 원시 공격 문자열은 일반적으로 파라미터 문자열에 규칙이 있기 때문에 간단한 필터링(예를들어, 파라미터 문자열의 앞뒤를 치환하거나, 문자를 중복해서 기재하는 등의 행위)을 하는 경우 원시 공격 문자열의 공격을 쉽게 회피할 수 있다.
URL주소, 파라미터 문자열, 파라미터 문자열 제약조건을 요청하는 신호(또는, 메시지)를 수신한 정적 분석기(110)는 웹 애플리케이션 소스코드를 획득하여, 획득된 웹 애플리케이션 소스코드로부터 특징을 분석하여 정적 분석을 수행할 수 있다(S520).
정적 분석은 다음과 같이 수행될 수 있다.
도 6은 본 발명의 일 실시예에 따른 정적 분석을 수행하는 방법을 도시한 흐름도이다.
도 6을 참조하면, 정적 분석기(110)의 동작은 서버(100)로부터 URL, 주소 파라미터 문자열 및 파라미터 문자열의 제약조건을 요청하는 신호(또는, 메시지)를 수신할 수 있다(S521). 정적 분석기(110)는 다수의 웹 애플리케이션의 소스코드의 특징을 분석 할 수 있다.
정적 분석기(110)는 하나의 또는 다수의 웹 애플리케이션의 소스코드로부터 특징을 분석하여 소스코드를 확인하여 정적 분석을 수행할 수 있다. 정적 분석기(110)는 수행된 정적 분석을 통해 정적 분석 정보를 생성할 수 있다(S522).
웹 애플리케이션을 실행하는 실행서버 측 코드는 일반적으로 원시 공격 문자열을 회피하기 위한 필터링 로직이 있을 수 있다. 정적 분석기(110)는 필터링 로직을 분석하여 어떤 방법으로 필터링 로직이 생성되어 있는지 여부를 확인 할 수 있다. 정적 분석기(110)가 필터링 로직을 분석하고 확인하는 단계에서, 정적 분석기(110)는 URL 주소, 파라미터 문자열 및 필터링 로직이 포함된 파라미터 문자열의 제약조건을 획득할 수 있다(S523). 정적 분석기(110)는 정적 분석을 통해 획득한 URL, 주소 파라미터 문자열 및 파라미터 문자열의 제약조건을 서버(100)에 전송할 수 있다(S524).
다시 도 5을 참조하면, 정적 분석기(110)는 정적 분석을 통해 획득된 URL 주소, 파라미터 문자열, 파라미터 문자열 제약조건을 서버(100)로 전송할 수 있다(S530).
정적 분석기(110)는 미리 정적 분석을 통해 획득된 URL 주소, 파라미터 문자열, 파라미터 문자열 제약조건을 동적 분석기(120)로부터 웹 애플리케이션을 통해 실행될 특정 동작을 지시하는 파라미터를 포함하는 최종 공격 문자열을 요청하는 신호를 수신하는 경우, 서버(100)로 전송할 수도 있다.
서버(100)는 URL 주소, 파라미터 문자열, 파라미터 문자열 제약조건을 수신할 수 있다. 서버(100)는 제약조건 반영하여 최종 공격 문자열을 생성하는 제약조건솔버를 이용하여 최종 공격 문자열을 생성할 수 있다(S540).
원시 공격 문자열은 URL 주소 및 원시 파라미터로 구성될 수 있고, 최종 공격 문자열은 URL 주소 및 수정된 파라미터로 구성될 수 있다. 원시 공격 문자열은 임의의 공격 문자열을 의미할 수 있다. 서버(100)의 제약조건솔버는 URL 주소, 파라미터 문자열 및 파라미터 문자열의 제약 조건을 바탕으로 원시 공격 문자열을 필터링하도록 필터링 로직을 우회할 수 있는 최종 공격 문자열을 생성할 수 있다.
서버(100)는 동적 분석기(120)로 서버(100)의 제약조건솔버에 의해 생성된 최종 공격 문자열을 전송할 수 있다(S550). 동적 분석기(120)는 최종 공격 문자열을 서버(100)로부터 수신 할 수 있다. 최종 공격 문자열을 수신한 동적 분석기(120)는 최종 공격 문자열을 동적 분석을 하고자 하는 웹 애플리케이션이 설치된 디바이스(400)에 전송할 수 있다(S560).
동적 분석기(120)는 동적 분석을 하고자 하는 웹 애플리케이션이 설치된 디바이스(400)에 특정 동작을 수행하여 동적 분석을 할 수 있다. 웹 애플리케이션을 통해 실행되는 특정 동작은, DDoS(distributed denial of service) 공격 동작, APT(advanced persistent threat) 공격 동작, 패스워드 크래킹(password cracking) 공격 동작, 키로깅(keylogging) 공격 동작, 스푸핑(spoofing) 공격 동작 및 루트킷(rootkit) 공격 동작 중에서 적어도 하나를 포함할 수 있다.
디바이스(400)는 최종 공격 문자열에 기초한 웹 애플리케이션의 실행 상태를 나타낼 수 있다. 동적 분석기(120)는 디바이스(400)가 최종 공격 문자열에 기초한 웹 애플리케이션의 실행 상태를 모니터링 할 수 있다(S570). 동적 분석기(120)는 최종 공격 문자열에 기초한 동작을 디바이스(400)로부터 수신할 수 있다. 동적 분석기(120)는 디바이스(400)로부터 수신한 최종 공격 문자열에 기초한 동작을 바탕으로 동적 분석을 수행할 수 있다(S580). 동적 분석 방법은 다음과 같을 수 있다.
도 7은 본 발명의 일 실시예에 따른 동적 분석을 수행하는 방법을 도시한 흐름도이다.
도 7을 참조하면, 테스트 케이스 생성기는 테스트 케이스(test case)를 생성할 수 있다(S581).
결과 분석기는 웹 애플리케이션에 텍스트 데이터를 입력하여 웹 애플리케이션의 취약점이 무엇인지 분석할 수 있다(S582). 텍스트 데이터란 URL주소에 파라미터 값을 넣어 주는 것을 의미할 수 있다. 파라미터 값은 정적분석을 통해 제약조건 반영하여 생성된 최종 공격 문자열일 수 있다.
분석 결과, 최종 공격 문자열에 의해 지시되는 특정 동작이 웹 애플리케이션을 통해 실행되는 경우, 최종 공격 문자열이 웹 애플리케이션에 의해 필터링되지 않는 것으로 판단될 수 있다. 분석 결과, 최종 공격 문자열에 의해 지시되는 특정 동작이 웹 애플리케이션을 통해 실행되지 않는 경우, 최종 공격 문자열이 웹 애플리케이션에 의해 필터링되는 것으로 판단될 수 있다.
웹 애플리케이션을 통해 실행될 특정 동작은, DDoS(distributed denial of service) 공격 동작, APT(advanced persistent threat) 공격 동작, 패스워드 크래킹(password cracking) 공격 동작, 키로깅(keylogging) 공격 동작, 스푸핑(spoofing) 공격 동작 및 루트킷(rootkit) 공격 동작 중에서 적어도 하나를 포함할 수 있다.
본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터 판독 가능 매체의 예에는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함한다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (18)

  1. 웹 애플리케이션(application)의 실행 상태를 분석하는 동적 분석기의 동작 방법으로서,
    상기 웹 애플리케이션을 통해 실행될 특정 동작을 지시하는 파라미터(parameter)를 포함하는 최종 공격 문자열을 요청하는 메시지를 서버로 전송하는 단계;
    상기 최종 공격 문자열을 포함하는 응답 메시지를 상기 서버로부터 수신하는 단계; 및
    상기 최종 공격 문자열에 기초한 상기 웹 애플리케이션의 실행 상태를 분석하는 단계;를 포함하며,
    상기 최종 공격 문자열은 상기 웹 애플리케이션의 소스코드에 기초하여 정적 분석기에 의해 생성되는 정적 분석 정보에 기초하여 상기 서버에 의해 생성되고,
    상기 정적 분석 정보는 미리 정의된 파라미터를 포함하는 원시 공격 문자열을 필터링하도록 설계된 필터링 로직(logic)에 관한 정보를 포함하는, 동적 분석기의 동작 방법.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 청구항 1에 있어서,
    상기 최종 공격 문자열은 URL(uniform resource locator) 주소를 더 포함하고,
    상기 필터링 로직에 관한 정보는 상기 웹 애플리케이션의 소스코드에 기초하여 생성되는, 동적 분석기의 동작 방법.
  6. 청구항 1에 있어서,
    상기 웹 애플리케이션을 통해 실행될 특정 동작은,
    DDoS(distributed denial of service) 공격 동작, 악성 스크립트 실행(XSS: Cross Site Scripting phishing) 공격 동작, APT(advanced persistent threat) 공격 동작, 패스워드 크래킹(password cracking) 공격 동작, 키로깅(keylogging) 공격 동작, 스푸핑(spoofing) 공격 동작 및 루트킷(rootkit) 공격 동작 중에서 적어도 하나를 포함하는, 동적 분석기의 동작 방법.
  7. 최종 공격 문자열을 생성하는 서버의 동작 방법으로서,
    동적 분석기로부터 상기 최종 공격 문자열을 요청하는 메시지를 수신하는 단계;
    정적 분석기로 미리 정의된 파라미터(parameter)를 포함하는 원시 공격 문자열을 필터링(filtering)하도록 설계된 필터링 로직(logic)에 관한 정보를 포함하는 정적 분석 정보를 요청하는 메시지를 전송하는 단계;
    상기 정적 분석기로부터 상기 정적 분석 정보를 수신하는 단계;
    상기 필터링 로직을 회피하도록, 웹 애플리케이션을 통해 실행될 특정 동작을 지시하는 수정된 파라미터를 포함하는 상기 최종 공격 문자열을 상기 필터링 로직에 관한 정보에 기초하여 생성하는 단계; 및
    상기 최종 공격 문자열을 포함하는 응답 메시지를 상기 동적 분석기에 전송하는 단계를 포함하고,
    상기 정적 분석 정보는 상기 웹 애플리케이션의 소스코드에 기초하여 상기 정적 분석기에 의해 생성되는, 서버의 동작 방법.
  8. 삭제
  9. 삭제
  10. 청구항 7에 있어서,
    상기 정적 분석 정보는 URL(uniform resource locator) 주소 및 웹 애플리케이션을 실행될 특정 동작을 지시하는 원시 파라미터를 더 포함하는, 서버의 동작 방법.
  11. 청구항 7에 있어서,
    상기 최종 공격 문자열은 URL(uniform resource locator) 주소를 더 포함하고,
    상기 필터링 로직에 관한 정보는 상기 웹 애플리케이션의 소스코드에 기초하여 생성되는, 서버의 동작 방법.
  12. 청구항 7에 있어서,
    상기 웹 애플리케이션을 통해 실행될 특정 동작은,
    DDoS(distributed denial of service) 공격 동작, APT(advanced persistent threat) 공격 동작, 패스워드 크래킹(password cracking) 공격 동작, 키로깅(keylogging) 공격 동작, 스푸핑(spoofing) 공격 동작 및 루트킷(rootkit) 공격 동작 중에서 적어도 하나를 포함하는, 서버의 동작 방법.
  13. 최종 공격 문자열을 생성하는 서버(Server)로서,
    프로세서(Processor); 및
    상기 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 데이터베이스를 포함하고,
    상기 적어도 하나의 명령은,
    동적 분석기로부터 상기 최종 공격 문자열을 요청하는 메시지를 수신하고,
    정적 분석기로 미리 정의된 파라미터(parameter)를 포함하는 원시 공격 문자열을 필터링(filtering)하도록 설계된 필터링 로직(logic)에 관한 정보를 포함하는 정적 분석 정보를 요청하는 메시지를 전송하고,
    상기 필터링 로직을 회피하도록, 웹 애플리케이션을 통해 실행될 특정 동작을 지시하는 수정된 파라미터를 포함하는 상기 최종 공격 문자열을 상기 필터링 로직에 관한 정보에 기초하여 생성하고, 그리고
    상기 최종 공격 문자열을 포함하는 응답 메시지를 상기 동적 분석기에 전송하도록 실행되고,
    상기 정적 분석 정보는 상기 웹 애플리케이션의 소스코드에 기초하여 상기 정적 분석기에 의해 생성되는, 서버.
  14. 삭제
  15. 삭제
  16. 청구항 13에 있어서,
    상기 정적 분석 정보는 URL(uniform resource locator) 주소 및 웹 애플리케이션을 실행될 특정 동작을 지시하는 원시 파라미터를 더 포함하는, 서버.
  17. 청구항 13에 있어서,
    상기 최종 공격 문자열은 URL(uniform resource locator) 주소를 더 포함하고,
    상기 필터링 로직에 관한 정보는 상기 웹 애플리케이션의 소스코드에 기초하여 생성되는, 서버.
  18. 청구항 13에 있어서,
    상기 웹 애플리케이션을 통해 실행될 특정 동작은,
    DDoS(distributed denial of service) 공격 동작, 악성 스크립트 실행(XSS: Cross Site Scripting phishing) 공격 동작, APT(advanced persistent threat) 공격 동작, 패스워드 크래킹(password cracking) 공격 동작, 키로깅(keylogging) 공격 동작, 스푸핑(spoofing) 공격 동작 및 루트킷(rootkit) 공격 동작 중에서 적어도 하나를 포함하는, 서버.
KR1020160091242A 2016-07-19 2016-07-19 공격 문자열 생성 방법 및 장치 KR101885615B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020160091242A KR101885615B1 (ko) 2016-07-19 2016-07-19 공격 문자열 생성 방법 및 장치
CN201680087790.9A CN109565499B (zh) 2016-07-19 2016-07-28 攻击字符串生成方法及装置
US16/318,476 US11496502B2 (en) 2016-07-19 2016-07-28 Method and apparatus for generating attack string
PCT/KR2016/008263 WO2018016669A2 (ko) 2016-07-19 2016-07-28 공격 문자열 생성 방법 및 장치
JP2019503340A JP6785360B2 (ja) 2016-07-19 2016-07-28 攻撃文字列生成方法および装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160091242A KR101885615B1 (ko) 2016-07-19 2016-07-19 공격 문자열 생성 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20180009510A KR20180009510A (ko) 2018-01-29
KR101885615B1 true KR101885615B1 (ko) 2018-08-06

Family

ID=60993127

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160091242A KR101885615B1 (ko) 2016-07-19 2016-07-19 공격 문자열 생성 방법 및 장치

Country Status (5)

Country Link
US (1) US11496502B2 (ko)
JP (1) JP6785360B2 (ko)
KR (1) KR101885615B1 (ko)
CN (1) CN109565499B (ko)
WO (1) WO2018016669A2 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020005241A1 (en) * 2018-06-27 2020-01-02 Google Llc Rendering responses to a spoken utterance of a user utilizing a local text-response map
KR102231726B1 (ko) * 2019-03-28 2021-03-25 네이버클라우드 주식회사 취약점 진단방법 및 이를 위한 진단장치
CN112507347B (zh) * 2020-10-27 2022-06-24 中国科学院信息工程研究所 面向分布式密码破解框架的破解作业描述信息生成方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008135029A (ja) * 2006-11-17 2008-06-12 Hewlett-Packard Development Co Lp 攻撃文字列(attackstrings)の知的生成に基づくウェブアプリケーション評価
US20130007887A1 (en) * 2011-06-28 2013-01-03 International Business Machines Corporation Black-box testing of web applications with client-side code evaluation

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070261124A1 (en) * 2006-05-03 2007-11-08 International Business Machines Corporation Method and system for run-time dynamic and interactive identification of software authorization requirements and privileged code locations, and for validation of other software program analysis results
KR100894331B1 (ko) * 2006-11-15 2009-04-24 한국전자통신연구원 웹 로그 상호연관분석을 이용한 웹 애플리케이션 공격의침입 탐지 시스템 및 방법
EP2513793B1 (en) * 2009-12-15 2018-11-14 Synopsys, Inc. Method and system of runtime analysis
JP5425699B2 (ja) * 2010-04-30 2014-02-26 インターナショナル・ビジネス・マシーンズ・コーポレーション 情報処理装置、テストケース生成方法、プログラムおよび記録媒体
CN101883024B (zh) * 2010-06-23 2012-02-01 南京大学 一种跨站点伪造请求的动态检测方法
CN102136051B (zh) 2011-05-06 2013-02-20 南开大学 一种应用SGM-SQL注入模型驱动web应用渗透测试的方法
US8949992B2 (en) * 2011-05-31 2015-02-03 International Business Machines Corporation Detecting persistent vulnerabilities in web applications
CN102917360B (zh) * 2012-10-24 2015-04-29 北京邮电大学 一种Zigbee协议漏洞的检测装置及方法
US9083736B2 (en) * 2013-01-28 2015-07-14 Hewlett-Packard Development Company, L.P. Monitoring and mitigating client-side exploitation of application flaws
US9507943B1 (en) * 2013-02-19 2016-11-29 Amazon Technologies, Inc. Analysis tool for data security
US10515214B1 (en) * 2013-09-30 2019-12-24 Fireeye, Inc. System and method for classifying malware within content created during analysis of a specimen
US9363284B2 (en) * 2013-12-11 2016-06-07 International Business Machines Corporation Testing web applications for security vulnerabilities with metarequests
US10182068B2 (en) * 2014-11-26 2019-01-15 Entit Software Llc Determine vulnerability using runtime agent and network sniffer
CN104683328A (zh) * 2015-01-29 2015-06-03 兴华永恒(北京)科技有限责任公司 一种跨站漏洞扫描方法及系统
US10033747B1 (en) * 2015-09-29 2018-07-24 Fireeye, Inc. System and method for detecting interpreter-based exploit attacks
US10176325B1 (en) * 2016-06-21 2019-01-08 Symantec Corporation System and method for dynamic detection of command and control malware

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008135029A (ja) * 2006-11-17 2008-06-12 Hewlett-Packard Development Co Lp 攻撃文字列(attackstrings)の知的生成に基づくウェブアプリケーション評価
US20130007887A1 (en) * 2011-06-28 2013-01-03 International Business Machines Corporation Black-box testing of web applications with client-side code evaluation

Also Published As

Publication number Publication date
CN109565499A (zh) 2019-04-02
WO2018016669A3 (ko) 2018-03-08
CN109565499B (zh) 2022-03-25
WO2018016669A2 (ko) 2018-01-25
JP2019521456A (ja) 2019-07-25
US20190297107A1 (en) 2019-09-26
US11496502B2 (en) 2022-11-08
KR20180009510A (ko) 2018-01-29
JP6785360B2 (ja) 2020-11-18

Similar Documents

Publication Publication Date Title
JP6371790B2 (ja) 変更されたウェブページを判定するためのシステム及び方法
US9614863B2 (en) System and method for analyzing mobile cyber incident
Buchanan et al. Analysis of the adoption of security headers in HTTP
KR20090090685A (ko) 웹 어플리케이션의 취약성 판단 방법 및 시스템
KR101902747B1 (ko) 클라이언트 측 웹 취약점 분석 방법 및 장치
CN112703496B (zh) 关于恶意浏览器插件对应用用户的基于内容策略的通知
CN111783096B (zh) 检测安全漏洞的方法和装置
JP6687761B2 (ja) 結合装置、結合方法および結合プログラム
CN102546576A (zh) 一种网页挂马检测和防护方法、系统及相应代码提取方法
US11792221B2 (en) Rest API scanning for security testing
US8904492B2 (en) Method of controlling information processing system, computer-readable recording medium storing program for controlling apparatus
KR101885615B1 (ko) 공격 문자열 생성 방법 및 장치
Salazar et al. 5greplay: A 5g network traffic fuzzer-application to attack injection
CN110557358A (zh) 蜜罐服务器通信方法、SSLStrip中间人攻击感知方法及相关装置
Antrobus et al. The forgotten I in IIoT: A vulnerability scanner for industrial Internet of Things
US20150032793A1 (en) Information processing apparatus
KR101372906B1 (ko) 악성코드를 차단하기 위한 방법 및 시스템
CN108667768A (zh) 一种网络应用指纹的识别方法及装置
CN113347184A (zh) 网络流量安全检测引擎的测试方法、装置、设备及介质
CN115544520A (zh) 漏洞扫描方法及相关装置
CN110177096A (zh) 客户端认证方法、装置、介质和计算设备
CN107508838A (zh) 一种访问控制方法、装置和系统
JPWO2018131200A1 (ja) 解析装置、解析方法及び解析プログラム
KR20210076455A (ko) Xss 공격 검증 자동화 방법 및 그 장치
WO2020113401A1 (zh) 数据检测方法、装置及设备

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant