Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

IDP 정책에 대한 공격 객체 및 객체 그룹

공격 객체, 애플리케이션 시그니처 객체 및 서비스 객체는 IDP 정책 규칙을 정의하는 데 사용됩니다. 새로운 취약점에 대한 대응으로 주니퍼 네트웍스 주기적으로 Juniper 웹 사이트에 공격 데이터베이스 업데이트를 포함하는 파일을 제공합니다. 이 파일을 다운로드하여 새로운 위협으로부터 네트워크를 보호할 수 있습니다. 이러한 공격 객체 및 그룹은 네트워크 트래픽 내에서 알려진 공격 패턴 및 프로토콜 이상을 감지하도록 설계되었습니다. IDP 정책 규칙의 일치 조건으로 공격 객체 및 그룹을 구성할 수 있습니다.

자세한 내용은 다음 주제를 참조하십시오.

알려지고 알려지지 않은 취약점을 해결하기 위한 주니퍼의 접근 방식 이해하기

이 주제에는 다음 섹션이 포함됩니다.

알려진 취약점

알려진 취약점은 인터넷 보안 커뮤니티 내에서 문서화된 취약점입니다. 인터넷 보안 커뮤니티는 여러 보안 조직, 보안 분석가 및 보안 포럼으로 구성됩니다. 보안 커뮤니티는 새로운 공격을 지속적으로 발견 및 분석하고 인터넷을 통해 이러한 정보를 교환합니다. 이러한 방식으로 공격을 신속하게 찾고 식별하며 진정으로 이해할 수 있습니다.

일부 보안 권장 사항을 통해 실제 공격 코드를 확인할 수 있습니다. 공격 정보와 공격 코드를 사용하여 패킷 정보와 서비스 컨텍스트를 캡처할 수 있습니다. 이 정보를 사용하여 사용자 정의 서명 공격 객체를 생성할 수 있습니다.

그러나 대부분의 권장 사항을 공격 설명과 함께 공격 코드를 게시하지는 않습니다. 공격 코드를 얻을 수 없는 경우 권고 사항을 신중하게 읽고 공격 패킷의 기본 사항을 재구성하려고 합니다.

주의:

획득한 코드를 알 수 없는 소스에서 분리하는 것을 잊지 하십시오.

다음 조직은 보안 커뮤니티에서 활동하며 공격 정보를 찾기 위한 훌륭한 리소스입니다.

  • NVD—국가 취약점 데이터베이스(http://nvd.nist.gov). SCAP(Security Content Automation Protocol)를 사용하는 것으로 표시되는 미국 정부 리포지토리의 취약점 관리 데이터.

  • SANS—SysAdmin, 감사, 네트워크, 보안 연구소(www.sans.org). 보안 경고를 제공하는 정보 보안 연구, 인증 및 교육 기관입니다. 또한 http://www.incidents.org 인터넷 스톰 센터(ISC)를 호스팅합니다.

  • CVE —일반적인 취약점 및 노출(http://cve.mitre.org). 취약점 및 기타 정보 보안 노출에 대한 표준화된 목록.

  • BugTraq(http://securityfocus.com/archive/1). Security Focus가 호스팅하는 온디드 메일링 리스트에서 컴퓨터 보안 취약점에 대해 논의하고 발표합니다.

  • CERT 조정 센터(http://www.cert.org). 보안 권장 사항을 제공하는 연방 정부 지원 보안 경고 조직입니다.

  • 패킷 스톰 보안(http://packetstormsecurity.nl). 보안 뉴스, 권장 사항, 포럼 및 공격 코드를 통해 보안 정보를 제공하는 보안 전문가로 구성된 비영리 조직입니다.

  • 메타스플로이트(http://www.metasploit.com). Metasploit은 침투 테스트 수행, IDS 서명 개발 및 익스플로잇 연구를 위한 유용한 정보를 제공합니다.

  • FrSIRT —프랑스 보안 사고 대응팀(http://www.frsirt.com). FrSIRT는 보안 권장 사항과 실시간 취약점 경고 및 알림 서비스를 제공하는 독립적인 보안 연구 조직입니다.

  • ISS—인터넷 보안 시스템(http://www.iss.net). 경고 및 인터넷 위협 수준을 제공하는 인터넷 보안 회사.

알 수 없는 취약점

알 수 없는 취약점은 인터넷 보안 커뮤니티 권고에 문서화되지 않은 취약점입니다. 이러한 경우, 프로덕션 환경에서 생성된 IDP 시리즈 프로파일러, 방화벽 또는 IDP 보안 이벤트 로그는 의심스러운 활동과 비정상적인 트래픽에 대해 경고합니다. 프로덕션 환경에서는 패킷 로깅 도구를 사용하여 나중에 분석하고 랩에서 실험할 수 있는 패킷 및 서비스 컨텍스트 정보를 캡처할 수 있습니다.

사용자 지정 공격 객체 테스트

사용자 지정 공격 객체를 테스트하기 위해 다음 워크플로우를 권장합니다. 다음 절차는 일반적인 단계로 구성되며 이러한 작업에 익숙한 전문가를 위한 것입니다.

사용자 지정 공격 객체를 테스트하려면 다음을 수행합니다.

  1. 테스트할 사용자 지정 공격 객체만 포함하는 새로운 보안 정책과 새로운 IDP 규칙 베이스 규칙을 생성합니다. 로깅 및 패킷 로깅을 활성화합니다.
  2. 정책을 IDP 시리즈 랩 디바이스로 푸시합니다.
  3. 공격자 컴퓨터에서 피해 컴퓨터를 대상으로 하는 공격을 재현합니다.
  4. Security Director Log Viewer를 사용하여 트래픽이 예상대로 로그를 생성했는지 확인합니다.

테스트가 실패하면 공격 자문, 프로토콜 RFC, 공격 코드 또는 패킷 캡처를 검토하여 설정을 미세 조정할 수 있는 추가 정보를 식별합니다. 조정이 필요한 가장 빈번한 문제는 DFA 표현식의 구문입니다.

서명 공격 객체 생성

서명 공격 객체는 시스템이 감지할 패턴입니다. 패턴을 나타내기 위해 DFA 표현식을 사용합니다. 설정할 수 있는 다른 모든 서명 속성(예: 서비스 또는 프로토콜 컨텍스트, 방향 및 기타 제약 조건)이 제공되므로 패턴을 감지하여 시스템의 성능을 최적화하고 오탐을 제거할 수 있습니다. 일반적으로 시그니처 공격 객체의 설정을 조정하여 시스템이 발생할 수 있는 모든 컨텍스트와 다른 컨텍스트에서 공격 객체를 찾고자 합니다.

서명 공격 객체 구성 방법:

  1. 개체 관리자에서 IDP 객체 > 공격 객체를 선택합니다.
  2. 사용자 지정 공격 탭을 클릭합니다.
  3. + 아이콘을 클릭하여 사용자 지정 공격(Custom Attack) 대화 상자를 표시합니다.
  4. 공격 객체 설정을 구성합니다. 표 1 은 설정을 완료하기 위한 지침을 제공합니다.
    표 1: 사용자 지정 공격 대화 상자: 일반 탭 설정

    설정

    설명

    이름

    UI에 표시된 이름.

    팁:

    공격이 공격 이름의 일부로 사용하는 프로토콜을 포함합니다.

    설명

    (선택 사항) 공격에 대한 정보. 새로운 공격 객체를 생성할 때 설명은 선택 사항이지만, 공격에 대한 중요한 정보를 기억하는 데 도움이 될 수 있습니다. 예를 들어, 사전 정의된 공격에 대한 공격 설명을 볼 수 있습니다.

    심각도

    정보, 경고, 마이너, 메이저 또는 크리티컬. 중요 공격은 서버를 충돌하거나 네트워크를 제어하려는 시도입니다.

    • 중요 — 탐지를 회피하거나, 네트워크 디바이스가 충돌하거나, 시스템 수준 권한을 획득하려는 공격과 일치하는 익스플로잇을 포함합니다.

    • 정보— URL, DNS 조회 실패, SNMP 공용 커뮤니티 문자열 및 P2P(peer-to-peer) 매개 변수를 포함하는 일반 무해한 트래픽과 일치하는 공격 개체를 포함합니다. 정보 공격 객체를 사용하여 네트워크에 대한 정보를 얻을 수 있습니다.

    • 메이저 — 서비스 중단, 네트워크 디바이스에 대한 사용자 수준 액세스 획득 또는 이전에 디바이스에 로드된 트로이 목마를 활성화하려는 공격과 일치하는 익스플로잇을 포함합니다.

    • 마이너—디렉터리 경유 또는 정보 유출을 통해 중요한 정보에 액세스하려는 정찰 노력을 감지하는 공격 객체 매칭 익스플로잇을 포함합니다.

    • 경고 — 비범죄적 정보를 획득하거나 스캔 도구로 네트워크를 스캔하려는 익스플로잇과 일치하는 공격 객체를 포함합니다.

    정보 공격은 가장 위험하기 쉽고 일반적으로 네트워크 관리자가 자체 보안 시스템의 허점을 발견하는 데 사용됩니다.

    범주

    사전 정의 또는 새 범주. 이 범주를 사용하여 공격 객체를 그룹화합니다. 각 범주 내에서 공격 객체는 심각도로 그룹화됩니다. 예를 들어 FTP, 트로이 목마, SNMP가 있습니다.

    키워드

    로그 레코드를 검색하고 정렬하는 데 사용할 수 있는 고유 식별자. 키워드는 공격 및 공격 객체와 관련이 있어야 합니다.

    권장

    이 공격 객체가 가장 위험이 높은 공격 객체 집합 중 하나임을 나타냅니다. 나중에 이 공격 객체를 동적 그룹에 추가할 때 권장되는 공격 객체만 포함할지 여부를 지정할 수 있습니다.

    • 예 - 주니퍼 네트웍스 권장하는 사전 정의된 공격을 동적 그룹에 추가합니다.

    • 아니오 - 동적 공격 그룹에서 권장되지 않는 공격 객체를 지정합니다.

       

    탐지 성능

    이 필터를 지정하여 느린 공격 객체를 필터링합니다. 이 필터를 사용하여 성능 영향에 따라 적절한 공격만 선택할 수 있습니다.

    옵션을 선택합니다.

    • 높음 — 공격에 취약한 고성능 충격 공격 객체를 추가합니다. 시그니처의 성능 영향은 높은 7~High9이며, 애플리케이션 식별이 느립니다.

    • Medium - 공격에 취약한 중간 성능의 영향 공격 객체를 추가합니다. 시그니처의 성능 영향은 보통 4~중간6이며, 애플리케이션 식별이 정상입니다.

    • Low - 공격에 취약한 낮은 성능의 영향 공격 객체를 추가합니다. 시그니처의 성능 영향은 낮음에서 낮음3으로 애플리케이션 식별이 더 빨라집니다.

    • 알 수 없음 - 모든 공격 객체를 기본적으로 알 수 없는 상태로 설정합니다. IPS를 네트워크 트래픽에 맞게 미세 조정할 때 이 설정을 변경하여 성능 영향을 추적할 수 있습니다. 시그니처의 성능 영향은 0 = 알 수 없는 것으로, 애플리케이션 식별도 알 수 없습니다.

  5. 일반 탭을 클릭합니다.
  6. 공격 버전에서 + 아이콘을 클릭하여 새로운 공격 마법사를 표시합니다.
  7. 대상 플랫폼 및 유형 페이지에서 디바이스 플랫폼 및 공격 유형을 선택합니다. 표 2 에서는 공격 유형에 대해 설명합니다.
    표 2: 공격 객체 유형

    형식

    설명

    서명

    스테이트풀 공격 시그니처(공격의 특정 섹션 내에 항상 존재하는 패턴)를 사용하여 알려진 공격을 탐지합니다.

    스테이트풀 시그니처 공격 객체에는 공격을 저지르는 데 사용되는 프로토콜 또는 서비스 및 공격이 발생하는 컨텍스트도 포함됩니다.

    알려진 공격에 사용되는 정확한 공격 시그니처, 프로토콜 및 공격 컨텍스트를 알고 있는 경우 이 옵션을 선택합니다.

    복합 공격

    취약점을 악용하기 위해 여러 방법을 사용하는 공격을 감지합니다. 이 개체는 여러 시그니처 또는 프로토콜 이상 징후를 단일 공격 객체로 결합하여 트래픽이 공격으로 식별되기 전에 복합 공격 객체 내의 모든 결합된 서명 또는 이상과 일치하도록 트래픽을 강요합니다.

    서명 또는 이상이 일치해야 하는 순서를 결합하고 지정함으로써 IDP 엔진이 트래픽을 공격으로 식별하기 전에 수행해야 하는 이벤트에 대해 매우 구체적으로 지정할 수 있습니다.

    네트워크를 공격하기 위해 여러 가지 양성 활동을 사용하는 공격을 탐지해야 하거나 악의적인 것으로 간주되기 전에 특정 일련의 이벤트를 적용하려는 경우 이 옵션을 선택합니다.

  8. 서명을 선택하고 다음을 클릭합니다.
  9. 사용자 지정 공격 – 일반 속성 페이지에서 다른 설정을 구성합니다. 표 3 은 설정을 완료하기 위한 지침을 제공합니다.
    표 3: 사용자 지정 공격 – 일반 속성

    속성

    설명

    서명 세부 정보

    바인딩

    서비스 –연구를 통해 서비스를 결정할 수 있는 경우 서비스를 선택합니다. 마법사의 후반부에서 서비스 컨텍스트를 지정할 수 있습니다.

    IP–서비스에 대해 확실하지 않지만 IP 세부 정보를 알고 있는 경우 IP 를 선택하고 프로토콜 유형 번호를 지정합니다.

    TCP, UDP 또는 ICMP–서비스 컨텍스트를 알지 못하지만 프로토콜 세부 정보를 알고 있는 경우 프로토콜을 선택합니다.

    TCP 및 UDP 프로토콜 유형의 경우 포트 범위를 지정합니다.

    RPC–원격 프로시저 호출(RPC) 프로토콜에서 위협을 감지하는 경우, 이 옵션을 선택하고 프로그램 ID를 지정합니다.

    RPC는 분산 처리 애플리케이션에서 원격으로 프로세스 간의 상호 작용을 처리하는 데 사용됩니다. 클라이언트가 RPC 서버에 원격 프로시저 호출을 하면 서버가 원격 프로그램으로 응답합니다. 각 원격 프로그램은 다른 프로그램 번호를 사용합니다.

    사용

    시간 바인딩 속성은 시그니처가 반복되는 횟수를 추적합니다. 공격의 범위와 수를 구성하면 세션 전반에서 기간(1분)에 걸쳐 동일한 공격의 시퀀스를 감지할 수 있습니다. 이 방법은 인증 자격 증명을 추측하거나 데이터를 처리하기 위해 시스템 용량을 압도하는 무차별 공격 탐지에 유용합니다.

    서비스

    공격이 네트워크를 진입하는 데 사용하는 서비스를 지정합니다. 공격을 저지르는 데 사용되는 특정 서비스를 서비스 바인딩으로 선택할 수 있습니다.

    예를 들어, 삭제 서비스를 선택한다고 가정합니다. 삭제 프로토콜은 TCP/9, UDP/9가 TCP 또는 UDP 데이터를 포트 9로 전송하는 프로세스를 설명하는 애플리케이션 레이어 프로토콜입니다.

    시간 범위

    카운트가 발생하는 범위를 선택합니다.

    • 소스 IP–대상 IP 주소에 관계없이 지정된 횟수에 대해 소스 IP 주소에서 트래픽 서명을 감지합니다.

    • 대상 IP –소스 IP 주소에 관계없이 지정된 횟수에 대해 대상 IP 주소의 트래픽 서명을 감지합니다.

    • 피어 –지정된 횟수에 대해 세션의 소스 및 대상 IP 주소 간의 트래픽 서명을 감지합니다.

    시간 수

    디바이스가 공격과 일치하도록 공격 객체를 고려하기 전에 공격 객체가 지정된 범위 내에서 공격을 감지해야 하는 횟수를 지정합니다.

    범위는 0~4,294,967,295입니다.

    Match Assurance

    이 필터를 지정하여 공격이 네트워크에서 오탐을 생성하는 빈도를 기반으로 공격 객체를 추적합니다.

    옵션을 선택합니다.

    • High - 자주 추적되는 오탐 발생에 대한 정보를 제공합니다.

    • Medium - 때때로 추적되는 오탐 발생에 대한 정보를 제공합니다.

    • 음 - 거의 추적되지 않는 오탐 발생에 대한 정보를 제공합니다.

    성능 영향

    이 필터를 지정하여 느린 공격 객체를 필터링합니다. 이 필터를 사용하여 성능 영향에 따라 적절한 공격만 선택할 수 있습니다.

    옵션을 선택합니다.

    • 높음 — 공격에 취약한 고성능 충격 공격 객체를 추가합니다. 시그니처의 성능 영향은 높은 7~High9이며, 애플리케이션 식별이 느립니다.

    • Medium - 공격에 취약한 중간 성능의 영향 공격 객체를 추가합니다. 시그니처의 성능 영향은 보통 4~중간6이며, 애플리케이션 식별이 정상입니다.

    • Low - 공격에 취약한 낮은 성능의 영향 공격 객체를 추가합니다. 시그니처의 성능 영향은 낮음에서 낮음3으로 애플리케이션 식별이 더 빨라집니다.

    • 알 수 없음 - 모든 공격 객체를 기본적으로 알 수 없는 상태로 설정합니다. IPS를 네트워크 트래픽에 맞게 미세 조정할 때 이 설정을 변경하여 성능 영향을 추적할 수 있습니다. 시그니처의 성능 영향은 0 = 알 수 없는 것으로, 애플리케이션 식별도 알 수 없습니다.

    범위

    세션 내 또는 세션의 트랜잭션 간에 공격이 일치하는지 지정합니다.

    • 세션 - 동일한 세션 내에서 개체에 대해 여러 일치를 허용합니다.

    • 트랜잭션 - 동일한 세션 내에서 발생하는 여러 트랜잭션의 개체와 일치합니다.

    다음을 클릭합니다.

  10. 사용자 지정 공격 – 공격 패턴 페이지에서 패턴 설정을 구성합니다. 표 4 는 설정을 완료하기 위한 지침을 제공합니다.
    표 4: 사용자 지정 공격 – 공격 패턴

    설정

    설명

    패턴

    DFA 표현식. 다음 행은 DFA 구문 규칙을 요약합니다. 자세한 내용은 정규식이 포함된 프로그래밍에 대한 표준 소스를 참조하십시오.

     

    \B.0.1.. 00\B

    이진 프로토콜에 대한 비트 수준 일치. 비트마스크 길이는 8의 배수여야 합니다.

    첫 번째 \B는 비트마스크의 시작을 나타내며, 마지막 \B는 비트마스크의 끝을 나시킵니다.

    10진수(.)는 비트가 0 또는 1일 수 있음을 나타냅니다.

    0 또는 1은 해당 위치의 비트가 0이어야 하거나 1이어야 함을 나타냅니다.

    \0 <octal_number>

    직접 이진 일치의 경우.

    \X<흐로진수>\X

    직접 이진 일치의 경우.

    \[<전체 세트>\]

    대소소식 일치의 경우.

    .

    모든 기호를 일치시킬 수 있습니다.

    *

    0개 이상의 기호를 일치시킬 수 있습니다.

    +

    1개 이상의 기호를 일치시킬 수 있습니다.

    ?

    0 또는 1 기호를 일치하려면.

    ()

    표현식의 그룹화.

    |

    교체. 일반적으로 ()와 함께 사용됩니다.

    예: 다음 표현식은 개 또는 고양이와 일치합니다. (개 | 고양이).

    []

    문자 클래스. 위치의 브래킷 내의 명시적 값은 일치합니다.

    예: [Dd]ay는 날짜와 낮과 일치합니다.

    [<>-<엔드>]

    문자 범위. 범위 내의 모든 값(하이픈으로 표시됩니다). 문자 클래스와 16진수 범위를 혼합할 수 있습니다.

    예: [AaBbCcDEeFf0-9].

    [^<>-<엔드>]

    문자 범위의 부정.

    예: [^Dd]ay는 건초와 광선과 일치하지만 낮이나 낮은 일치하지는 않습니다.

    참고:

    전체 서명 패턴을 무효화하려면 패턴 텍스트 상자에서 Negate 옵션을 선택합니다.

    \u<스트링>\u

    -유니코드 무감각한 일치.

    \s

    공백.

     

    \

    백슬래시로 특수 문자가 매치되고 정규 표현식 연산자로 처리되지 않도록 이스케이프합니다.

    문자 탈출

    *

    \*

    (

    \(

    )

    \)

    .

    \.

    +

    \+

    \

    \\

    [

    \0133

    ]

    \0135

    참고:

    백슬래쉬와 열린 및 닫기 대괄호의 조합은 케이스 무감각 표현식에서 사용되므로, 대괄호 문자에 대한 옥탈 코드와 함께 백슬래쉬를 사용해야 합니다.

    부정

    공격 패턴을 무효화합니다.

    Regex

    네트워크에서 악의적이거나 원치 않는 동작과 일치하는 규칙을 정의하려면 정규식을 입력합니다.

    예를 들어, 구문 \[hello\]의 경우, 예상되는 패턴은 Hello로, 이는 대소문자 구분입니다.

    일치 예는 hElLo, HEllO 및 heLLO일 수 있습니다.

    컨텍스트

    패턴 매칭을 컨텍스트에 바인딩합니다.

    HTTP와 같은 알려진 서비스의 경우 첫 번째 상자에서 서비스를 선택하고 두 번째 상자에서 HTTP POST Parsed Param과 scio ccap같이 에서 발견한 HTTP 컨텍스트를 선택합니다.

    컨텍스트를 확인할 수 없는 경우 첫 번째 상자에서 기타 를 선택하고 두 번째 상자에서 다음 컨텍스트 중 하나를 선택합니다.

    • 패킷 –모든 패킷에서 패턴을 감지합니다.

    • 첫 번째 패킷–스트림의 첫 번째 패킷만 검사합니다. 플로우 방향이 임의의 것으로 설정되면 탐지기 엔진은 STC(server-to-client) 및 클라이언트 투 서버(CTS) 플로우의 첫 번째 패킷을 확인합니다. 처리가 적다는 것은 성능 향상을 의미합니다. 세션의 첫 번째 패킷에 패턴이 나타나는 것을 알고 있는 경우 첫 번째 패킷을 선택합니다.

    • 첫 번째 데이터 패킷–스트림의 첫 번째 패킷 이후에 검사가 종료됩니다. 스트림의 첫 번째 데이터 패킷에서만 공격을 감지하려면 이 옵션을 선택합니다. 스트림의 첫 번째 데이터 패킷에 패턴이 나타나는 것을 알고 있는 경우 첫 번째 데이터 패킷을 선택합니다.

    • Stream 256–패킷을 다시 어셈블하고 트래픽 스트림의 처음 256바이트 내에서 패턴 일치를 검색합니다. Stream 256은 종종 비 UDP 공격에 가장 적합한 선택입니다. 플로우 방향을 로 any설정하면 탐지기 엔진이 STC 및 CTS 플로우의 처음 256바이트 모두를 확인합니다. 세션의 첫 256바이트에서 패턴이 나타날 것이라는 것을 알고 있는 경우 Stream 256을 선택합니다.

    • 스트림 8K와 마찬가지로 Stream 256은 패킷을 조립하고 트래픽 스트림의 첫 번째 8192바이트 내에서 패턴 일치를 검색합니다.

    • 스트림 1K와 마찬가지로 Stream 256은 패킷을 조립하고 트래픽 스트림의 첫 번째 1024바이트 내에서 패턴 일치를 검색합니다.

    • 라인 –특정 라인 내의 패턴을 감지합니다. 회선 지향 애플리케이션 또는 프로토콜(예: FTP)에 이 컨텍스트를 사용합니다.

    • Stream–패킷을 다시 어셈블하고 데이터를 추출하여 패턴 일치를 검색합니다. 그러나 IDP 엔진은 스트림 컨텍스트에 대한 패킷 경계를 인식하지 못하므로 여러 패킷에 대한 데이터가 결합됩니다. 공격을 포함하는 다른 컨텍스트 옵션이 없는 경우에만 이 옵션을 선택합니다.

    참고:

    라인, 스트림 또는 서비스 컨텍스트를 선택하는 경우 IP 설정 및 프로토콜 헤더 필드에 대한 일치 기준을 구성하지 않습니다.

    방향

    패턴을 감지할 방향을 선택합니다.

    • 클라이언트 - 서버 – 클라이언트-서버 트래픽에서만 패턴을 감지합니다.

    • 클라이언트에 서버 – 서버-클라이언트 트래픽에서만 패턴을 감지합니다.

    • Any-어느 방향으로나 패턴을 감지합니다.

    세션 개시자는 소스 IP가 서버라 하더라도 클라이언트로 간주됩니다.

    이상 징후 추가

    변칙

    사용 중인 특정 프로토콜에 대한 규칙 집합에 따라 연결 내에서 비정상적이거나 모호한 메시지를 감지하는 옵션을 선택합니다.

    프로토콜 이상 탐지 주로 RFC 및 공통 RFC 확장에 의해 정의되는 프로토콜 표준의 편차를 찾아 작동합니다.

    방향

    공격의 연결 방향을 지정합니다.

    • 클라이언트 투 서버 - 클라이언트-서버 트래픽에서만 공격을 감지합니다.

    • 클라이언트에 서버 — 서버-클라이언트 트래픽에서만 공격을 감지합니다.

    • Any - 어느 방향으로든 공격을 감지합니다.

    단일 방향(Any이 아닌)을 사용하면 성능이 향상되고 오탐이 감소하며 탐지 정확도가 향상됩니다.

    다음을 클릭합니다.

  11. 라인, 스트림, 스트림 256 또는 서비스 컨텍스트를 선택한 경우 IP 설정 및 프로토콜 헤더 필드에 대한 일치 기준을 구성하지 마십시오. 완료를 클릭합니다.

    패킷 컨텍스트를 사용하는 경우 다음 표에 설명된 대로 IP 플래그 및 패킷 헤더에 대한 기준을 추가하여 일치를 구체화할 수 있습니다.

    팁:

    일치시킬 IP 플래그와 IP 필드를 잘 모르는 경우 모든 필드를 비워 두십시오. 값이 설정되지 않은 경우 IDP 엔진은 모든 헤더 내용에 대한 시그니처를 일치시키려고 시도합니다.

    사용자 지정 공격 – IPv4 설정 및 헤더 일치 페이지에서 패턴 설정을 구성합니다. 표 5 는 설정을 완료하기 위한 지침을 제공합니다.

    표 5: 사용자 지정 공격 – IPv4 설정 및 헤더 일치 페이지

    설정

    설명

    체크섬 검증

    계산된 체크섬에 대해 체크섬 필드를 검증합니다.

    서비스 유형

    서비스 유형. 일반적인 서비스 유형은 다음과 같습니다.

    • 0000 기본

    • 0001 비용 최소화

    • 0002 안정성 극대화

    • 0003 처리량 극대화

    • 0004 지연 최소화

    • 0005 보안 극대화

    IP 플래그

    IP Flag 비트.

    IHL

    인터넷 헤더 길이를 단어로 표현합니다.

    총 길이

    IP 데이터그램의 총 길이.

    자료

    대상 시스템이 단편화된 패킷을 조립하는 데 사용하는 고유한 값입니다.

    라이브 시간

    패킷의 TTL(Time-to-Live) 값입니다. 이 값은 패킷이 통과할 수 있는 라우터의 수를 나타냅니다. 패킷을 처리하는 각 라우터는 TTL을 1로 감소합니다. TTL이 0에 도달하면 패킷이 폐기됩니다.

    프로토콜

    공격에 사용되는 프로토콜.

    소스

    공격 디바이스의 IP 주소입니다.

    대상

    공격 대상의 IP 주소입니다.

    사용자 지정 공격 – IPv6 설정 및 헤더 일치 페이지에서 패턴 설정을 구성합니다. 표 6 은 설정을 완료하기 위한 지침을 제공합니다.

    표 6: 사용자 지정 공격 – IPv6 설정 및 헤더 일치 페이지

    설정

    설명

    대상

    공격 대상의 IP 주소입니다.

    확장 헤더

    침입 탐지 서비스(IDS)에 대한 IPv6 확장 헤더를 정의합니다.

    flow 레이블

    IPv6 패킷 플로우 레이블을 활성화합니다.

    홉 제한 범위

    라우터 광고 및 모든 IPv6 패킷에 라우터가 사용할 수 있는 최대 홉 수를 지정합니다.

    다음 헤더

    IPv6 헤더를 즉시 따르는 헤더에 대한 인터넷 프로토콜 유형을 식별합니다.

    페이로드 길이

    옥텟으로 표시된 IPv6 패킷 페이로드 또는 내용의 길이를 지정합니다.

    소스

    IPv6 패킷을 생성한 노드의 호스트 디바이스 또는 인터페이스를 식별합니다.

    트래픽 클래스

    소스 노드 또는 라우터가 IPv6 패킷에 대한 다른 클래스(또는 서비스 품질 우선 순위)를 식별할 수 있도록 합니다. (이 필드는 IPv4 서비스 유형을 대체합니다.)

    사용자 지정 공격 – TCP 패킷 헤더 페이지에서 패턴 설정을 구성합니다. 표 7 은 설정을 완료하기 위한 지침을 제공합니다.

    표 7: 사용자 지정 공격 객체: TCP 패킷 헤더 필드

    설정

    설명

    소스 포트

    공격 디바이스의 포트 번호입니다.

    대상 포트

    공격 대상의 포트 번호입니다.

    시퀀스 번호

    패킷 시퀀스 번호입니다. 이 숫자는 전체 데이터 시퀀스와 관련하여 데이터의 위치를 식별합니다.

    ACK 번호

    패킷의 ACK 번호입니다. 이 숫자는 다음 시퀀스 번호를 식별합니다. ACK 플래그가 이 필드를 활성화하도록 설정해야 합니다.

    헤더 길이

    TCP 헤더의 바이트 수입니다.

    창 크기

    TCP 창 크기의 바이트 수입니다.

    데이터 길이

    데이터 페이로드의 바이트 수. SYN, ACK 및 FIN 패킷의 경우 이 필드는 비어 있어야 합니다.

    긴급 포인터

    패킷의 데이터가 시급합니다. URG 플래그는 이 필드를 활성화하도록 설정해야 합니다.

    Mss

    TCP 최대 세그먼트 크기를 활성화하고 지정합니다.

    예약

    TCP 헤더 필드에서 예약된 비트 3개를 지정합니다.

    TCP 플래그

    TCP 헤더 플래그입니다. TCP 플래그가 설정되었는지 여부에 관계없이 IDP가 패턴 일치를 찾게 되도록 지정합니다.

    창 확장

    공격 세션이 사용할 확장 요소를 지정합니다.

    사용자 지정 공격 – UDP 헤더 페이지에서 패턴 설정을 구성합니다. 표 8 은 설정을 완료하기 위한 지침을 제공합니다.

    표 8: 사용자 지정 공격 객체: UDP 헤더 필드

    설정

    설명

    체크섬 검증

    계산된 체크섬에 대해 체크섬 필드를 검증합니다.

    소스 포트

    공격 디바이스의 포트 번호입니다.

    대상 포트

    공격 대상의 포트 번호입니다.

    데이터 길이

    데이터 페이로드의 바이트 수.

    사용자 지정 공격 – ICMP 패킷 헤더 페이지에서 패턴 설정을 구성합니다. 표 9 는 설정을 완료하기 위한 지침을 제공합니다.

    표 9: 사용자 지정 공격 객체: ICMP 패킷 헤더 필드

    설정

    설명

    체크섬 검증

    계산된 체크섬에 대해 체크섬 필드를 검증합니다.

    ICMP 유형

    요청 또는 응답의 기능을 식별하는 기본 코드입니다.

    ICMP 코드

    요청 또는 응답의 기능을 지정된 형식 내에서 식별하는 보조 코드입니다.

    시퀀스 번호

    패킷 시퀀스 번호입니다. 이 숫자는 전체 시퀀스와 관련하여 요청/응답의 위치를 식별합니다.

    ICMP ID

    식별 번호: 요청 및 응답을 연결하기 위해 대상 시스템에서 사용하는 고유한 값입니다.

    데이터 길이

    데이터 페이로드의 바이트 수.

  12. 완료를 클릭합니다.

사전 정의된 IDP 공격 객체 및 객체 그룹 이해

침입 탐지 및 방지(IDP)를 위한 보안 패키지에는 사전 정의된 IDP 공격 객체 및 IDP 공격 객체 그룹의 데이터베이스가 포함되어 있으며, IDP 정책에서 알 수 있는 공격과 알 수 없는 공격에 맞게 트래픽을 일치시킬 수 있습니다. 주니퍼 네트웍스 새롭게 발견된 공격 패턴을 통해 사전 정의된 공격 객체 및 그룹을 정기적으로 업데이트합니다.

공격 객체 데이터베이스에 대한 업데이트에는 다음이 포함될 수 있습니다.

  • 기존 공격 객체에 대한 새로운 설명 또는 심각도

  • 새로운 공격 객체

  • 노후된 공격 객체 삭제

이 주제에는 다음 섹션이 포함됩니다.

사전 정의된 공격 객체

사전 정의된 공격 객체는 알파벳 순으로 나열됩니다. 이러한 공격 객체에는 공격을 식별하는 데 도움이 되는 고유한 이름이 있습니다. 이름의 첫 부분은 공격 개체가 속한 그룹을 나타냅니다. 예를 들어:

  • FTP:USER:ROOT- 그룹에 속합니다 FTP:USER . 계정을 사용하여 FTP 서버에 로그인하려는 시도를 감지합니다 root .

  • HTTP:HOTMAIL:FILE-UPLOAD- 그룹에 속합니다 HTTP:HOTMAIL . 웹 기반 이메일 서비스를 Hotmail통해 전송된 전자 메일에 첨부된 파일을 감지합니다.

사전 정의된 공격 객체 그룹

사전 정의된 공격 그룹 목록은 아래에 설명된 범주에 공격 객체를 표시합니다. 주니퍼 네트웍스 심각한 위협으로 간주하는 권장 공격 객체 세트도 이 목록에서 사용할 수 있습니다. 권장 공격 객체는 다음 범주로 구성됩니다.

표 10: 사전 정의된 공격 객체 그룹

공격 객체 그룹

설명

공격 유형

유형(이상 또는 서명)으로 개체를 공격합니다. 각 유형 내에서 공격 객체는 심각도로 그룹화됩니다.

범주

그룹은 사전 정의된 범주별로 객체를 공격합니다. 각 범주 내에서 공격 객체는 심각도로 그룹화됩니다.

운영 체제

BSD, Linux, Solaris 또는 Windows와 같은 운영 체제에 의해 개체를 공격합니다. 각 운영 체제 내에서 공격 객체는 서비스와 심각도에 따라 그룹화됩니다.

심각도

공격에 할당된 심각도에 의한 공격 객체를 그룹화합니다. IDP에는 중요, 주요, 사소한, 경고, 정보 등 5가지 심각도 수준이 있습니다. 각 심각도 내에서 공격 객체는 범주별로 그룹화됩니다.

웹 서비스

공통 웹 서비스에 의한 공격 객체를 그룹화합니다. 이러한 서비스는 심각도 수준(경고, 중요, 주요, 마이너, 정보)으로 그룹화됩니다.

기타

성능 수준별로 객체를 공격합니다. 특정 수준에서 IDP 성능에 영향을 미치는 공격 객체는 이 범주에 따라 그룹화됩니다.

응답

그룹은 서버에서 클라이언트 방향으로 흐르는 트래픽 개체를 공격합니다.

사용자 지정 공격 객체 이해하기

사용자 지정 공격 객체를 생성하여 새로운 공격을 탐지하거나 사전 정의된 공격 객체를 사용자 정의하여 네트워크의 고유한 요구 사항을 충족할 수 있습니다.

사용자 지정 공격 객체를 구성하려면 고유한 이름을 지정한 다음 일반 설명 및 키워드와 같은 추가 정보를 지정합니다. 이를 통해 공격 객체를 쉽게 찾고 유지할 수 있습니다.

공격 객체 정의의 특정 속성은 공격 이름, 설명, 심각도 수준, 서비스 또는 애플리케이션 바인딩, 시간 바인딩, 권장 조치, 프로토콜 또는 포트 바인딩과 같은 모든 유형의 공격에 공통적입니다. 일부 필드는 공격 유형에 따라 특정 공격 정의에 대해서만 사용할 수 있습니다.

참고:

IDP 기능은 기본적으로 활성화되어 있으며 라이선스가 필요하지 않습니다. IDP 정책의 사용자 지정 공격 및 사용자 지정 공격 그룹도 디바이스에 유효한 라이선스 및 서명 데이터베이스가 설치되지 않은 경우에도 구성하고 설치할 수 있습니다.

이 주제에는 다음 섹션이 포함됩니다.

공격 이름

개체의 영숫자 이름을 지정합니다. 공격 이름에 공격이 사용하는 프로토콜을 포함할 수 있습니다.

Junos OS 릴리스 15.1X49-D140부터 사용자 지정 공격 객체 이름에 허용되는 최대 문자 수는 60개입니다. 명령을 사용하여 set security idp custom-attack 문을 확인할 수 있습니다.

심각도

네트워크에 대한 공격의 만행을 지정합니다. 심각도 범주는 잔인함이 증가하기 때문에 정보, 경고, 사소한, 주요, 중요합니다. 중요 공격은 가장 위험합니다. 일반적으로 이러한 공격은 서버 충돌 또는 네트워크 제어를 시도합니다. 정보 공격은 가장 위험하기 때문에 일반적으로 네트워크 관리자가 자체 보안 시스템의 허점을 발견하는 데 사용됩니다.

서비스 및 애플리케이션 바인딩

서비스 또는 애플리케이션 바인딩 필드는 공격이 네트워크를 입력하는 데 사용하는 서비스를 지정합니다.

참고:

사용자 지정 공격에 서비스 또는 프로토콜 바인딩을 지정합니다. 두 가지 모두를 지정할 경우 서비스 바인딩이 우선합니다.

  • any-올바른 서비스를 잘 모르고 모든 서비스의 시그니처를 일치시킬 것인지 지정 any 합니다. 일부 공격은 네트워크를 공격하기 위해 여러 서비스를 사용하기 때문에 공격이 연결에 대해 어떤 서비스를 선택하든 공격을 탐지할 서비스 바인딩을 선택할 Any 수 있습니다.

  • service—대부분의 공격은 특정 서비스를 사용하여 네트워크를 공격합니다. 공격을 저지르는 데 사용되는 특정 서비스를 서비스 바인딩으로 선택할 수 있습니다.

    서비스 목록, 서비스 바인딩 및 컨텍스트는 IDP 사용자 정의 공격 객체 서비스 컨텍스트 이해를 참조하십시오.

프로토콜 및 포트 바인딩

프로토콜 또는 포트 바인딩을 사용하면 공격이 네트워크를 입력하는 데 사용하는 프로토콜을 지정할 수 있습니다. 네트워크 프로토콜의 이름 또는 프로토콜 번호를 지정할 수 있습니다.

참고:

사용자 지정 공격에 서비스 또는 프로토콜 바인딩을 지정합니다. 두 가지 모두를 지정할 경우 서비스 바인딩이 우선합니다.

  • IP - 프로토콜 번호를 사용하여 지원되는 네트워크 레이어 프로토콜을 지정할 수 있습니다. 표 11 은 다른 프로토콜에 대한 프로토콜 번호를 나열합니다.

    표 11: 지원되는 프로토콜 및 프로토콜 번호

    프로토콜 이름

    프로토콜 번호

    Igmp

    2

    IP-IP

    4

    Egp

    8

    강아지

    12

    Tp

    29

    IPV6

    41

    라우팅

    43

    조각

    44

    Rsvp

    46

    Gre

    47

    Esp

    50

    51

    ICMPV6

    58

    없음

    59

    DSTOPTS

    60

    Mtp

    92

    캡슐화

    98

    Pim

    103

    광고

    108

    원시

    255

  • ICMP, TCP 및 UDP — 특정 서비스를 사용하지 않는 공격은 특정 포트를 사용하여 네트워크를 공격할 수 있습니다. 일부 TCP 및 UDP 공격은 표준 포트를 사용하여 네트워크를 입력하고 연결을 설정합니다.

  • RPC — 원격 프로시저 호출(RPC) 프로토콜은 분산 처리 애플리케이션에서 프로세스 간의 상호 작용을 원격으로 처리하는 데 사용됩니다. 클라이언트가 RPC 서버에 원격 프로시저 호출을 하면 서버가 원격 프로그램으로 응답합니다. 각 원격 프로그램은 다른 프로그램 번호를 사용합니다. RPC를 사용하는 공격을 감지하려면 서비스 바인딩을 RPC로 구성하고 RPC 프로그램 ID를 지정합니다.

표 12 에는 주요 프로토콜에 대한 샘플 형식이 표시됩니다.

표 12: 프로토콜에 대한 샘플 형식

프로토콜 이름

프로토콜 번호

설명

Icmp

<Port>ICMP</Port>

프로토콜 이름을 지정합니다.

Ip

<Port>IP/protocol-number</Port>

네트워크 레이어 프로토콜 번호를 지정합니다.

Rpc

<Port>RPC/program-number</Port>

RPC 프로그램 번호를 지정합니다.

TCP 또는 UDP

  • <Port>TCP </Port>

  • <Port>TCP/port </Port>

  • <Port>TCP/minport-maxport </Port>

포트 지정은 TCP 및 UDP 프로토콜의 선택 사항입니다. 예를 들어, 다음 중 어느 것을 지정할 수 있습니다.

  • <Port>UDP</Port>

  • <Port>UDP/10</Port>

  • <Port>UDP/10-100</Port>

시간 바인딩

시간 바인딩을 사용하여 사용자 정의 공격 객체에 바인딩하는 시간에 대한 시간 속성을 구성합니다. 시간 속성은 공격 개체가 특정 횟수에 반복되는 공격을 식별하는 방식을 제어합니다. 공격의 범위와 수를 구성하면 세션 전반에서 일정 시간 동안 동일한 공격의 시퀀스를 감지할 수 있습니다.

릴리스 18.4R1 Junos OS 시작하여 사용자 정의 공격을 바인딩하는 시간의 두 인스턴스 간에 최대 시간 간격을 구성할 수 있으며 최대 시간 간격의 범위는 0분 및 0초에서 60분 및 0초입니다. 18.4R1 이전의 Junos OS 릴리스에서 시간 바인딩 공격의 두 인스턴스 간의 최대 시간 간격은 60초이며, 공격 트리거 수는 시간 바인딩에서 구성된 수에 도달합니다. interval interval-value 명령문은 사용자 정의 시간 바인딩을 [edit security idp custom-attack attack-name time-binding] 구성하기 위해 계층에서 도입됩니다.

범위

공격 수가 발생하는 범위를 지정합니다.

  • 소스 - 대상 주소에 관계없이 지정된 횟수에 대한 소스 주소에서 공격을 감지하도록 이 옵션을 지정합니다. 즉, 주어진 공격의 경우 소스 주소의 각 공격에 대해 임계값이 유지됩니다. 대상 주소는 무시됩니다. 예를 들어, 소스 주소가 동일하지만 대상 주소와 은(는) 두 개의 서로 다른 페어(ip-a, ip-bip-c) 및 ip-c(ip-a)에서 이상이 감지됩니다ip-b.ip-a 그런 다음 으로 증분할 ip-a 일치 항목 수를 지정합니다2. 임계값 또는 count 도 2로 설정된 경우 서명이 공격 이벤트를 트리거합니다.

  • 대상 - 소스 주소에 관계없이 지정된 횟수에 대해 대상 주소로 전송되는 공격을 감지하려면 이 옵션을 지정합니다. 즉, 주어진 공격의 경우 대상 주소의 각 공격에 대해 임계값이 유지됩니다. 소스 주소는 무시됩니다. 예를 들어, 대상 주소가 동일하지만 다른 소스 주소 ip-cip-b ip-a 및 을(를) 포함하는 두 개의 서로 다른 페어(ip-a, ip-b) 및 (ip-c, ip-b)에서 이상이 감지되는 경우. 그런 다음 으로 증분할 ip-b 일치 항목 수를 지정합니다2. 임계값 또는 count 도 (으로2)로 설정된 다음 서명이 공격 이벤트를 트리거한다고 가정합니다.

  • 피어 - 지정된 횟수에 대한 세션의 소스 및 대상 IP 주소 간의 공격을 감지하도록 이 옵션을 지정합니다. 즉, 임계값은 한 쌍의 소스 및 대상 주소에 적용됩니다. 두 개의 서로 다른 소스 및 대상 쌍(, ip-b) 및 (ip-aip-a, ip-c)에서 이상이 감지되었다고 가정합니다. 그런 다음 두 페어 모두 공통 소스 주소를 가지고 있더라도 각 페어의 일치 항목 수는 으로 설정1됩니다.

횟수

카운트 또는 임계값은 디바이스가 공격 객체를 공격과 일치시키는 것으로 간주하기 전에 공격 객체가 지정된 범위 내에서 공격을 감지해야 하는 횟수를 지정합니다. 공격 객체를 여러 포트에 바인딩하고 공격 개체가 다른 포트에 대한 공격을 감지하면 각 포트의 각 공격은 별도의 발생으로 간주됩니다. 예를 들어, 공격 객체가 에 대한 TCP/80 공격을 감지한 다음 에 TCP/8080대한 공격을 감지하면 카운트는 2개입니다.

일치에 count 도달하면 기준과 일치하는 각 공격은 공격 수를 하나씩 증가하게 합니다. 이 카운트 주기는 사용자 정의 기간(옵션을 사용하여 interval 구성)에 지속되며, 그 후 주기가 반복됩니다.

간격

간격은 시간 바인딩 사용자 지정 공격의 두 인스턴스 간의 최대 시간 간격을 지정합니다. 시간 간격의 범위는 0초~1시간이며 기본값은 60초입니다.

공격 속성(서명 공격)

서명 공격 객체는 스테이트풀 공격 시그니처(공격의 특정 섹션 내에 항상 존재하는 패턴)를 사용하여 알려진 공격을 탐지합니다. 또한 공격을 저지르는 데 사용되는 프로토콜 또는 서비스와 공격이 발생하는 컨텍스트도 포함합니다. 다음 속성은 서명 공격에 따라 지정되며 서명 공격을 구성할 때 구성할 수 있습니다.

참고:

공격 컨텍스트, 플로우 유형 및 방향은 서명 공격 정의에 필수적인 필드입니다.

공격 컨텍스트

공격 컨텍스트는 서명의 위치를 정의합니다. 서비스와 특정 서비스 컨텍스트를 알고 있는 경우 해당 서비스를 지정한 다음 적절한 서비스 컨텍스트를 지정합니다. 서비스를 알고 있지만 특정 서비스 컨텍스트를 잘 모르는 경우 다음 일반적인 컨텍스트 중 하나를 지정합니다.

  • first-data-packet-첫 번째 데이터 패킷에서만 공격을 감지하도록 이 컨텍스트를 지정합니다.

  • first-packet-스트림의 첫 번째 패킷에서만 공격을 감지하도록 이 컨텍스트를 지정합니다. 공격 객체의 플로우 방향이 로 any설정되면 디바이스는 서버 투 클라이언트 및 클라이언트-서버 플로우의 첫 번째 패킷을 확인합니다. 세션의 첫 번째 패킷에 공격 시그니처가 나타난다는 것을 알고 있는 경우, 디바이스가 모니터링해야 하는 트래픽 양을 줄이는 대신 packetfirst packet(를) 선택하여 성능을 향상시킵니다.

  • packet- 패킷 내의 공격 패턴과 일치하도록 이 컨텍스트를 지정합니다. 이 옵션을 선택하면 서비스 헤더 옵션을 정의하기 위해 서비스 바인딩을 지정해야 합니다. 필요하지는 않지만 이러한 추가 매개 변수를 지정하면 공격 객체의 정확도가 향상되고 성능이 향상됩니다.

  • line- 네트워크 트래픽 내의 특정 라인 내에서 패턴 일치를 감지하도록 이 컨텍스트를 지정합니다.

  • normalized-stream-이 컨텍스트를 지정하여 전체 정규화된 스트림에서 공격을 감지합니다. 표준화된 스트림은 정보를 전송하는 여러 방법 중 하나입니다. 이 스트림에서는 일치가 수행되기 전에 패킷의 정보가 표준화됩니다. 은(는) 와 ()로 동일하다고 www.yahoo.com/s%70orts가정합니다www.yahoo.com/sports. 이러한 URL 모두를 나타내는 정규화된 형식은 일 수 있습니다www.yahoo.com/sports. 정확한 형식의 stream패턴을 감지하고 싶지 않는 한, 대신 을(를) 선택합니다normalized stream. 예를 들어, 정확한 패턴을 www.yahoo.com/s%70orts감지하려면 을(를) 선택합니다stream.

  • normalized-stream256- 정규화된 스트림의 처음 256바이트에서만 공격을 감지하도록 이 컨텍스트를 지정합니다.

  • normalized-stream1k- 정규화된 스트림의 첫 번째 1024바이트에서만 공격을 감지하도록 이 컨텍스트를 지정합니다.

  • normalized-stream-8k- 정규화된 스트림의 처음 8192바이트에서만 공격을 감지하도록 이 컨텍스트를 지정합니다.

  • stream- 패킷을 조합하고 데이터를 추출하여 패턴 일치를 검색하도록 이 컨텍스트를 지정합니다. 그러나 디바이스는 스트림 컨텍스트에 대한 패킷 경계를 인식할 수 없으므로 여러 패킷에 대한 데이터가 결합됩니다. 공격을 포함하는 다른 컨텍스트 옵션이 없을 때만 이 옵션을 지정합니다.

  • stream256-패킷을 조립하고 트래픽 스트림의 처음 256바이트 내에서 패턴 일치를 검색하기 위해 이 컨텍스트를 지정합니다. 플로우 방향이 로 any설정되면 디바이스는 서버-클라이언트 및 클라이언트-서버 플로우 모두의 처음 256바이트를 확인합니다. 공격 시그니처가 세션의 첫 256바이트에 나타납니다. 디바이스가 모니터링 및 캐시해야 하는 트래픽 양을 줄이는 대신 stream 을(를) 선택하면 stream256 성능이 향상됩니다.

  • stream1k-이 컨텍스트를 지정하여 패킷을 조립하고 트래픽 스트림의 첫 번째 1024바이트 내에서 패턴 일치를 검색합니다. 플로우 방향이 로 any설정되면 디바이스는 서버-클라이언트 및 클라이언트-서버 플로우 모두의 첫 번째 1024바이트를 확인합니다. 공격 시그니처가 세션의 첫 1024바이트에 나타날 것이라는 것을 알고 있는 경우, 디바이스가 모니터링 및 캐시해야 하는 트래픽 양을 줄이는 대신 streamstream1024(를) 선택하여 성능을 향상합니다.

  • stream8k-이 컨텍스트를 지정하여 패킷을 조립하고 트래픽 스트림의 첫 번째 8192바이트 내에서 패턴 일치를 검색합니다. 플로우 방향이 로 any설정되면 디바이스는 서버 투 클라이언트 및 클라이언트-서버 플로우 모두의 첫 번째 8192바이트를 확인합니다. 공격 시그니처가 세션의 첫 번째 8192바이트에 나타납니다. 디바이스가 모니터링 및 캐시해야 하는 트래픽 양을 줄이는 대신 stream 을(를) 선택하면 stream8192 성능이 향상됩니다.

공격 방향

공격의 연결 방향을 지정할 수 있습니다. 대신 단일 방향을 Any사용하면 성능이 향상되고 오탐이 감소하며 탐지 정확도가 향상됩니다.

  • 클라이언트-서버(클라이언트-서버 트래픽에서만 공격 감지)

  • 클라이언트에 서버(서버-클라이언트 트래픽에서만 공격 감지)

  • 모두(어느 방향으로든 공격을 감지합니다)

공격 패턴

공격 패턴은 탐지하려는 공격의 시그니처입니다. 서명은 공격 내에 항상 존재하는 패턴입니다. 공격이 존재하면 서명도 마찬가지입니다. 공격 패턴을 생성하려면 먼저 공격을 분석하여 패턴(예: 코드 세그먼트, URL 또는 패킷 헤더의 값)을 감지한 다음, 이러한 패턴을 나타내는 구문 표현식을 생성해야 합니다. 또한 패턴을 무효화할 수 있습니다. 패턴을 부정한다는 것은 공격에 정의된 패턴이 지정된 패턴과 일치할 경우 공격이 일치하는 것으로 간주됨을 의미합니다 not .

참고:

패턴 부정은 스트림 및 표준화된 스트림 컨텍스트가 아닌 패킷, 라인 및 애플리케이션 기반 컨텍스트에 대해서만 지원됩니다.

프로토콜별 매개 변수

패킷 헤더 내에 존재하는 특정 값과 옵션을 지정합니다. 이러한 매개 변수는 서로 다른 프로토콜에 대해 다릅니다. 사용자 지정 공격 정의에서 TCP, UDP 또는 ICMP와 같은 프로토콜 중 하나에 대해서만 필드를 지정할 수 있습니다. 하지만 사용자 지정 공격 정의에서 TCP 또는 UDP를 사용하여 IP 프로토콜 필드를 정의할 수 있습니다.

참고:

패킷 또는 첫 번째 패킷 컨텍스트를 사용하는 공격 객체에 대해서만 헤더 매개 변수를 정의할 수 있습니다. 라인, 스트림, 스트림 256 또는 서비스 컨텍스트를 지정한 경우 헤더 매개 변수를 지정할 수 없습니다.

악성 패킷에 대한 옵션이나 플래그 설정을 잘 모르는 경우, 모든 필드를 비워 두고 침입 탐지 및 방지(IDP)는 모든 헤더 내용에 대한 서명을 일치시키려고 시도합니다.

표 13 은 IP 프로토콜을 사용하는 공격에 대해 설정할 수 있는 필드와 플래그를 표시합니다.

표 13: IP 프로토콜 필드 및 플래그

필드

설명

서비스 유형

서비스 유형에 대한 값을 지정합니다. 일반적인 서비스 유형은 다음과 같습니다.

  • 0000 기본

  • 0001 비용 최소화

  • 0002 안정성 극대화

  • 0003 처리량 극대화

  • 0004 지연 최소화

  • 0005 보안 극대화

총 길이

모든 헤더 필드 및 데이터 페이로드를 포함하여 패킷의 바이트 수에 대한 값을 지정합니다.

자료

단편화된 패킷을 재조립하기 위해 대상 시스템에서 사용하는 고유한 값에 대한 값을 지정합니다.

라이브 시간

패킷의 TTL(Time-to-Live) 값에 대해 0~255 범위의 정수 값을 지정합니다. 이 값은 패킷이 통과할 수 있는 디바이스의 수를 나타냅니다. 패킷을 처리하는 각 라우터는 에 의해 1TTL을 감소시킵니다. TTL이 0에 도달하면 패킷은 폐기됩니다.

프로토콜

사용되는 프로토콜에 대한 값을 지정합니다.

소스

공격 디바이스의 소스 주소를 입력합니다.

대상

공격 대상의 대상 주소를 입력합니다.

예약 비트

이 비트는 사용되지 않습니다.

더 많은 부분

설정(1)이면, 이 옵션은 패킷에 더 많은 패킷 조각이 포함되어 있음을 나타냅니다. 설정 해제(0)은 더 이상 패킷 조각이 남아 있지 않음을 나타냅니다.

단편화하지 마십시오

설정(1)이면, 이 옵션은 패킷이 전송을 위해 단편화될 수 없음을 나타냅니다.

표 14 에는 TCP 프로토콜을 사용하는 공격에 대해 설정할 수 있는 패킷 헤더 필드와 플래그가 표시됩니다.

표 14: TCP 헤더 필드 및 플래그

필드

설명

소스 포트

공격 디바이스의 포트 번호에 대한 값을 지정합니다.

대상 포트

공격 대상의 포트 번호에 대한 값을 지정합니다.

시퀀스 번호

패킷의 시퀀스 번호에 대한 값을 지정합니다. 이 숫자는 전체 데이터 시퀀스와 관련하여 데이터의 위치를 식별합니다.

ACK 번호

패킷의 ACK 수에 대한 값을 지정합니다. 이 숫자는 다음 시퀀스 번호를 식별합니다. ACK 플래그가 이 필드를 활성화하도록 설정해야 합니다.

헤더 길이

TCP 헤더에서 바이트 수에 대한 값을 지정합니다.

데이터 길이

데이터 페이로드의 바이트 수에 대한 값을 지정합니다. SYN, ACK 및 FIN 패킷의 경우 이 필드는 비어 있어야 합니다.

창 크기

TCP 창 크기의 바이트 수에 대한 값을 지정합니다.

긴급 포인터

긴급 포인터에 대한 값을 지정합니다. 이 값은 패킷의 데이터가 시급하다는 것을 나타냅니다. URG 플래그는 이 필드를 활성화하도록 설정해야 합니다.

URG

설정 시 긴급 플래그는 패킷 데이터가 시급하다는 것을 나타냅니다.

Ack

설정 시 승인 플래그는 패킷 수신을 인정합니다.

Psh

설정 시 푸시 플래그는 수신기가 시퀀스의 나머지 패킷을 기다리지 않고 현재 시퀀스의 모든 데이터를 대상 애플리케이션(포트 번호로 식별)으로 푸시해야 함을 나타냅니다.

Rst

설정 시 재설정 플래그는 TCP 연결을 재설정하여 기존 시퀀스에서 모든 패킷을 삭제합니다.

Syn

설정 시 SYN 플래그는 새 세션에 대한 요청을 나타냅니다.

지 느 러 미

설정 시 최종 플래그는 패킷 전송이 완료되었고 연결이 닫혀 있음을 나타냅니다.

R1

이 예약 비트(2 중 1)는 사용되지 않습니다.

R2

이 예약 비트(2/2)는 사용되지 않습니다.

표 15 에는 UDP 프로토콜을 사용하는 공격에 대해 설정할 수 있는 패킷 헤더 필드와 플래그가 표시됩니다.

표 15: UDP 헤더 필드 및 플래그

필드

설명

소스 포트

공격 디바이스의 포트 번호에 대한 값을 지정합니다.

대상 포트

공격 대상의 포트 번호에 대한 값을 지정합니다.

데이터 길이

데이터 페이로드의 바이트 수에 대한 값을 지정합니다.

표 16 은 ICMP 프로토콜을 사용하는 공격에 대해 설정할 수 있는 패킷 헤더 필드와 플래그를 표시합니다.

표 16: ICMP 헤더 필드 및 플래그

필드

설명

ICMP 유형

요청 또는 응답 패킷의 기능을 식별하는 기본 코드에 대한 값을 지정합니다.

ICMP 코드

주어진 유형 내에서 요청 또는 응답 패킷의 기능을 식별하는 보조 코드의 값을 지정합니다.

시퀀스 번호

패킷의 시퀀스 번호에 대한 값을 지정합니다. 이 번호는 전체 시퀀스와 관련하여 요청 또는 응답 패킷의 위치를 식별합니다.

ICMP ID

식별 번호에 대한 값을 지정합니다. 식별 번호는 요청 및 응답 패킷을 연결하기 위해 대상 시스템에서 사용하는 고유한 값입니다.

데이터 길이

데이터 페이로드의 바이트 수에 대한 값을 지정합니다.

샘플 서명 공격 정의

다음은 샘플 서명 공격 정의입니다.

공격 속성(프로토콜 이상 공격)

프로토콜 이상 공격 객체는 프로토콜 사양(RFC 및 공통 RFC 확장)을 위반하는 알려지지 않거나 정교한 공격을 감지합니다. 새로운 프로토콜 이상을 만들 수는 없지만 감지될 때 디바이스가 사전 정의된 프로토콜 이상을 처리하는 방법을 제어하는 새로운 공격 개체를 구성할 수 있습니다.

참고:

서비스 또는 애플리케이션 바인딩은 프로토콜 이상 공격에 대한 필수 필드입니다.

다음 속성은 프로토콜 이상 공격에 따라 다릅니다. 공격 방향과 테스트 조건 모두 이상 공격 정의를 구성하기 위한 필수 필드입니다.

공격 방향

공격 방향은 공격의 연결 방향을 지정할 수 있게 해줍니다. 단일 방향(대신 Any)을 사용하면 성능이 향상되고 오탐이 감소하며 탐지 정확도가 높아질 수 있습니다.

  • 클라이언트-서버(클라이언트-서버 트래픽에서만 공격 감지)

  • 클라이언트에 서버(서버-클라이언트 트래픽에서만 공격 감지)

  • 모두(어느 방향으로든 공격을 감지합니다)

테스트 조건

테스트 조건은 이상 공격에 대해 일치할 수 있는 조건입니다. 주니퍼 네트웍스 특정 사전 정의된 테스트 조건을 지원합니다. 다음 예에서 조건은 너무 긴 메시지입니다. 메시지 크기가 이 테스트 조건에 대해 사전 구성된 값보다 긴 경우 공격이 일치합니다.

샘플 프로토콜 이상 공격 정의

다음은 샘플 프로토콜 이상 공격 정의입니다.

공격 속성(복합 또는 체인 공격)

복합 또는 체인 공격 객체는 여러 방법을 사용하여 취약점을 악용하는 공격을 감지합니다. 이 개체는 여러 시그니처 및/또는 프로토콜 이상 징후를 단일 공격 객체로 결합하여 트래픽이 공격으로 식별되기 전에 복합 공격 개체 내에서 결합된 서명 및 이상 패턴과 일치하도록 트래픽을 강요합니다. 서명 또는 이상이 일치해야 하는 순서를 결합하고 지정함으로써 디바이스가 트래픽을 공격으로 식별하기 전에 수행해야 하는 이벤트에 대해 매우 구체적으로 지정할 수 있습니다.

복합 공격에 최소 2명의 멤버(공격)를 지정해야 합니다. 복합 공격에 최대 32명의 멤버를 지정할 수 있습니다. 구성원은 서명 또는 이상 공격일 수 있습니다.

다음 속성은 복합 공격에 따라 다릅니다.

범위

범위는 공격이 세션 내 또는 세션의 트랜잭션 전반에 걸쳐 일치하는지 지정할 수 있도록 합니다. 지정된 서비스가 단일 세션 내에서 여러 트랜잭션을 지원하는 경우, 단일 세션에서 일치가 발생해야 하는지 아니면 세션 내의 여러 트랜잭션에서 이루어질 수 있는지 여부를 지정할 수도 있습니다.

  • 동일한 세션 내에서 개체에 대해 여러 일치를 허용하도록 지정 session 합니다.

  • 동일한 세션 내에서 발생하는 여러 트랜잭션에서 개체를 일치하도록 지정 transaction 합니다.

순서

정렬된 일치를 사용하여 지정한 순서대로 각 멤버 서명 또는 프로토콜 이상과 일치해야 하는 복합 공격 객체를 생성합니다. 정렬된 일치를 지정하지 않는 경우, 복합 공격 객체는 여전히 모든 멤버와 일치해야 하지만 공격 패턴 또는 프로토콜 이상이 무작위로 공격에 나타날 수 있습니다.

재설정

동일한 세션 내에서 공격이 감지될 때마다 새로운 로그가 생성되도록 지정합니다. 이 필드가 로 no 설정된 경우 공격이 세션에 대해 한 번만 기록됩니다.

표현식(Boolean 표현식)

Boolean 표현식 필드를 사용하면 정렬된 일치 기능이 비활성화됩니다. Boolean 표현식 필드는 멤버 이름 또는 멤버 인덱스 속성을 사용합니다. 다음 3개의 Boolean 연산자는 괄호와 함께 지원되며, 이는 우선순위를 결정하는 데 도움이 됩니다.

  • or-멤버 이름 패턴 중 하나가 일치하는 경우 표현식이 일치합니다.

  • and-두 멤버 이름 패턴이 모두 일치하면 표현식이 일치합니다. 멤버가 나타나는 순서는 중요하지 않습니다.

  • oand (ordered and)-두 멤버 이름 패턴이 모두 일치하는 경우, 불린 표현식에 지정된 순서대로 표시되는 경우 표현식이 일치합니다.

-라고 표시된 5명의 서명 멤버를 s1s5만들었습니다. 공격에 항상 패턴s1이 포함되어 있으며 그 다음 s2 으로 또는 s3을(를) 포함하고 있다고 가정해봅니다. 공격에는 항상 포함 s4s5이(가) 있지만 공격에 대한 위치는 다양할 수 있습니다. 이 경우 다음 Boolean 표현식을 생성할 수 있습니다.

참고:

사용자 지정 공격 정의에서 정렬된 일치 또는 표현식(둘 다 아님)을 정의할 수 있습니다.

멤버 인덱스

멤버 인덱스는 멤버(공격)를 고유하게 식별하기 위해 연쇄 공격에 지정됩니다. 다음 예에서 멤버 인덱스는 멤버 m01m02 정의된 표현식을 식별하는 데 사용됩니다.

참고:

식을 정의할 때, 모든 멤버에 대해 멤버 인덱스 를 지정해야 합니다.

샘플 복합 공격 정의

다음은 복합 공격 정의 샘플입니다.

복합 공격 객체 생성

다음과 같은 경우에 복합 공격 객체를 사용합니다.

  • 공격은 취약점을 악용하기 위해 여러 방법을 사용하며 독립적으로 검사하면 개별 컨텍스트가 양성으로 보입니다.

  • 여러 컨텍스트를 일치시키면 오탐이 줄어듭니다.

  • 시그니처를 프로토콜 이상과 결합하면 오탐이 감소합니다.

서명 공격 객체 또는 사전 정의된 이상 징후를 복합 객체의 "멤버"로 선택하고, 부울 식을 사용하여 일치하는 논리를 지정합니다.

복합 공격 객체를 구성하려면,

  1. 서명 공격 객체에 대해 설명된 바와 같이 일반적인 공격 객체 속성 및 참조 정보를 구성합니다.

    대상 플랫폼 및 유형 페이지에서 대상 플랫폼을 선택하고 복합 공격을 선택하고 다음을 클릭합니다.

  2. 사용자 지정 공격 – 일반 속성 페이지에서 표 17에 설명된 설정을 구성합니다.
    표 17: 사용자 지정 공격 – 일반 속성

    속성

    설명

    시간 바인딩

    서명 공격 객체와 동일한 지침.

    다음을 클릭합니다.

  3. 복합 멤버 페이지에서 복합 공격 매개 변수를 지정하고 멤버를 추가합니다. 표 18 은 설정을 완료하기 위한 지침을 제공합니다.
    표 18: 복합 공격 매개 변수

    설정

    설명

    범위

    세션 내 또는 세션의 트랜잭션 간에 공격이 일치하는지 지정합니다. 다음 중 하나를 선택합니다.

    • 세션 –동일한 세션 내에서 개체에 대해 여러 일치를 허용합니다.

    • 트랜잭션 –동일한 세션 내에서 발생하는 여러 트랜잭션의 개체와 일치합니다.

    재설정

    이 옵션을 사용하여 동일한 세션 내에서 공격이 감지될 때마다 새 로그를 생성합니다. 이 옵션을 선택하지 않으면 공격이 세션당 한 번만 기록됩니다.

    Boolean 표현식

    공격 멤버의 일치 방식을 식별하는 데 사용되는 공격 멤버의 Boolean 표현을 입력합니다. 다음 Boolean 연산자를 사용하여 Boolean 표현식을 입력합니다.

    • OR- 멤버 이름 패턴 중 하나가 일치하는 경우 표현식이 일치합니다.

    • AND- 두 멤버 이름 패턴이 모두 일치하면 표현식이 일치합니다. 멤버가 나타나는 순서는 중요하지 않습니다.

    • OAND–두 멤버 이름 패턴이 일치하는 경우 및 불린 표현식과 동일한 순서로 표시되는 경우 표현식이 일치합니다.

    예를 들어, Boolean 표현식(s1 OAND s2) 또는 (s1 OAND s3)) AND(s4 AND s5)는 s1을 포함하는 공격과 일치하며 s2 또는 s3이 뒤따르는 공격과 일치하며, 모든 위치에 s4 및 s5가 포함됩니다.

    멤버 추가

    + 아이콘을 클릭하고 서명 또는 프로토콜 이상 징후를 선택하고 구성 세부 정보를 완료합니다.

    서명 멤버의 경우, 서명 공격 객체에 대해와 동일한 컨텍스트 정보를 지정합니다.

    프로토콜 이상 멤버의 경우 사전 정의된 프로토콜 이상 목록 중에서 을(를) 선택합니다.

    모범 사례:

    멤버의 명명 규칙의 예는 m01, m02, m03 등입니다. 이 동일한 명명 규칙을 사용하는 것이 좋습니다.

    순서

    이 옵션을 사용하여 지정한 순서대로 각 멤버 서명 또는 프로토콜 이상과 일치해야 하는 복합 공격 객체를 생성할 수 있습니다. 순서를 지정하지 않으면, 복합 공격 객체는 여전히 모든 멤버와 일치해야 하지만 패턴 또는 프로토콜 이상은 어떤 순서로 공격에 나타날 수 있습니다.

    복합 공격 객체는 여러 방법을 사용하여 취약점을 악용하는 공격을 감지합니다.

    프로토콜 바인딩

    어떤 공격이 탐지될지 에 대한 프로토콜 바인딩.

  4. 완료를 클릭합니다.

서명 업데이트에 도입된 변경으로 인해 사용자 지정 공격 객체 수정

이 주제에서는 HTTP 프로토콜 디코더에 의해 생성되는 일부 서비스 컨텍스트의 변경 사항에 대해 설명합니다. 서명 업데이트 #1972부터 HTTP 프로토콜 디코더는 더 이상 일부 컨텍스트를 생성하지 않습니다. IDP 보안 정책에 제거된 컨텍스트를 사용하는 사용자 지정 시그니처가 포함된 경우, 정책 편집 오류를 피하기 위해 아래에 설명된 대로 공격 객체 정의를 수정해야 합니다. 이 주제에는 다음 정보가 포함됩니다.

참조: 제거된 컨텍스트

성능을 개선하기 위해 HTTP 프로토콜 디코더는 더 이상 표 19의 첫 번째 열에 나열된 컨텍스트를 생성하지 않습니다. 사용자 지정 공격 객체의 컨텍스트 교체에 대한 지침은 이 표를 참조하십시오.

표 19: HTTP 서비스 컨텍스트

제거

을 (으로)

지침

http-text-html-body

http-text-html

컨텍스트를 사용하는 시그니처를 http-text-html-body로 변경합니다. 서명 패턴 또는 기타 속성을 변경할 필요가 없습니다.

  • http-get-url-parsed-param

  • http-post-url-parsed-param

  • http-head-url-parsed-param

  • http-get-url-parsed-param-parsed

  • http-post-url-parsed-param-parsed

  • http-head-url-parsed-param-parsed

다음 컨텍스트의 조합을 사용합니다.

  • http-request-method

  • http-url-parsed

  • http-variable-parsed

부울 앤(Boolean AND)이 포함된 복합 시그니처를 사용하여 시그니처 패턴을 여러 조각으로 나누십시오. 범위 필드가 트랜잭션으로 설정되었는지 확인합니다.

http-request-method 컨텍스트를 사용하는 것은 선택 사항입니다. http-request-method 컨텍스트를 사용하여 탐지를 http GET 또는 POST 또는 HEAD 트랜잭션에 바인딩합니다. GET 방법의 경우, 우리는 패턴 \[GET\](경우 무감각한 GET)을 사용합니다. 요청 방법에서 이전에 일치했던 결과를 보존할 가치가 있는 경우에만 http-request-method를 사용합니다. 그렇지 않다면 성능을 개선하기 위해 생략합니다. http-request-method를 사용하는 경우 컴파운드 체인에서 먼저 주문하십시오.

URL에서 식별 가능한 공격 서명에 일치하려면 http-url-parsed 컨텍스트를 사용합니다. 이 컨텍스트를 사용하여 변수 매개 변수 앞에 나타나는 URL의 패턴(물음표 앞에 있는 URL 부분)을 일치시킬 수 있습니다.

하나 이상의 http-variable-parsed 컨텍스트를 사용하여 URL 변수 매개 변수 매개 변수(일반적으로 ampersands(&)로 구분된 물음표(?) 다음 URL의 일부입니다.

예: HTML 텍스트에 나타나는 패턴의 컨텍스트 대체

HTTP 디텍트 엔진에서 생성된 각 컨텍스트에는 성능 비용이 있습니다. 컨텍스트 http-text-html 및 http-text-html-body도 동일한 목적을 제공합니다. 컨텍스트 수를 줄이면 성능이 향상됩니다.

표 20업데이트 #1972 이전 서명의 속성과 이후 서명의 속성을 보여줍니다. 이는 단순한 변화입니다. 컨텍스트만 변경합니다. 패턴 또는 기타 속성을 변경할 필요가 없습니다.

표 20: HTTP 서비스 컨텍스트: HTML 텍스트

업데이트 전

업데이트 후

컨텍스트

http-text-html-body

http-text-html

패턴

.*<span></span>.*

.*<span></span>.*

예: URL에 나타나는 패턴에 대한 컨텍스트 대체

이 섹션에는 다음 두 가지 부분이 있습니다.

요청 방법과 일치하는 서명

이전에 요청 방법과 일치했던 사용자 지정 공격 개체를 수정할 때 GET, POST 또는 HEAD는 이러한 요청 방법 패턴과의 일치가 효과적인지 고려합니다. 생성된 각 컨텍스트에는 성능 비용이 발생합니다. 요청 방법이 결과에 필수적인 것이 아닌 경우, 이 기회를 통해 서명 없이 서명을 다시캐스트하십시오.

표 21표 22업데이트 #1972 이전 서명의 속성과 이후의 복합 시그니처를 보여줍니다. 이 예는 요청 방법에 대한 관심을 유지합니다.

표 21: HTTP 서비스 컨텍스트: 업데이트 전 요청 방법

업데이트 전 서명

범위

컨텍스트

http-get-url-parsed-param

패턴

\[/viper/vegaspalms/\].*

표 22: HTTP 서비스 컨텍스트: 업데이트 후 요청 방법

업데이트 후 복합 서명

m01

m02

범위

트랜잭션

 

컨텍스트

http-request-method

http-url-parsed

패턴

\[GET\]

\[/viper/vegaspalms/\].*

URL 문자열 및 URL 변수와 일치하는 서명

일반적으로 단일 패턴을 여러 컨텍스트로 나누면 성능에 긍정적이거나 부정적인 영향을 미칠 수 있습니다. 프로덕션 네트워크에 공격 객체를 구축하기 전에 성능 영향을 이해하기 위해 변경 사항을 테스트해야 합니다. 표 23표 24 에 표시된 예는 URL 매칭을 여러 컨텍스트로 나누어 줍니다. 주니퍼 보안 팀은 여기에 설명된 권장 사항에 대한 성능을 테스트했습니다.

표 23: HTTP 서비스 컨텍스트: 업데이트 전 URL 문자열 및 변수

업데이트 전 서명

범위

컨텍스트

http-get-url-param-parsed-param

패턴

\[/cvs/index[0-9]?\.php\?option=com_content&do_pdf=1&id=1\]

표 24: HTTP 서비스 컨텍스트: 업데이트 후 URL 문자열 및 변수

업데이트 후 복합 서명

 

m01

m02

m03

m04

범위

트랜잭션

     

컨텍스트

http-url-parsed

http-variable-parsed

http-variable-parsed

http-variable-parsed

패턴

\[/cvs/index[0-9]?\.php\]

\[option=com_content\]

\[do_pdf=1\]

\[id=1\]

예: 복합 또는 체인 공격 구성

이 예는 특정 일치 기준에 대해 복합 또는 체인 공격을 구성하는 방법을 보여줍니다. 취약점을 악용하기 위해 여러 방법을 사용하는 공격을 탐지하도록 복합 또는 체인 공격 객체를 구성할 수 있습니다.

요구 사항

시작하기 전에 디바이스에서 IDP를 지원하고 활성화해야 합니다.

개요

복합 공격 객체 또는 체인 공격 객체는 서명과 이상을 결합하여 단일 공격 객체를 형성할 수 있습니다. 단일 공격 객체는 다음을 포함할 수 있습니다.

  • 2개 이상의 시그니처

  • 2개 이상의 이상 징후

  • 서명 및 이상 징후의 조합

복합 또는 체인 공격 객체는 여러 시그니처 및/또는 프로토콜 이상을 단일 공격 객체로 결합하여 트래픽이 공격으로 식별되기 전에 복합 공격 객체 내에서 결합된 서명 및 이상 패턴과 일치하도록 트래픽을 강요합니다. 이러한 개체는 오탐을 줄이고 탐지 정확도를 높이는 데에도 사용됩니다. 이를 통해 IDP가 트래픽을 공격으로 식별하기 전에 발생해야 하는 이벤트에 대해 구체적으로 파악할 수 있습니다.

구성

절차

CLI 빠른 구성

이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브러브를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 변경한 다음 계층 수준에서 명령을 CLI [edit] 로 복사해 붙여 넣은 다음, 구성 모드에서 을(를) 입력합니다 commit .

단계별 절차

다음 예제에서는 구성 계층에서 다양한 수준의 탐색이 필요합니다. 이를 수행하는 방법에 대한 지침은 CLI 사용자 가이드의 구성 모드에서 CLI 편집기 사용을 참조하십시오.

특정 일치 기준에 대한 복합 또는 체인 공격 구성 방법:

  1. IDP 정책을 생성합니다.

  2. 규칙 베이스를 정책과 연결합니다.

  3. 규칙 베이스에 규칙을 추가합니다.

  4. 규칙에 대한 일치 기준을 정의합니다.

  5. 규칙 기준과 일치하도록 애플리케이션 세트 이름을 지정합니다.

  6. 공격 객체의 일치 공격 객체 및 이름을 지정합니다.

  7. 규칙에 대한 작업을 지정합니다.

  8. 규칙에 대한 알림 또는 로깅 옵션을 지정합니다.

  9. IDP 정책을 활성화합니다.

  10. 사용자 지정 공격의 이름을 지정합니다.

  11. 사용자 지정 공격의 심각도를 설정합니다.

  12. 사용자 지정 공격에 대한 공격 유형 및 애플리케이션 이름을 설정합니다.

  13. 공격이 정의되는 범위와 순서를 설정합니다.

  14. 체인 공격 객체의 첫 번째 멤버에 대한 이름을 지정합니다.

  15. 체인 공격 객체의 첫 번째 멤버에 대한 컨텍스트, 패턴 및 방향을 설정합니다.

  16. 체인 공격 객체의 두 번째 멤버에 대한 이름을 지정합니다.

  17. 체인 공격 객체의 두 번째 멤버에 대한 컨텍스트, 패턴 및 방향을 설정합니다.

  18. 체인 공격 객체의 세 번째 멤버에 대한 이름을 지정합니다.

  19. 체인 공격 객체의 세 번째 멤버에 대한 공격 유형 및 방향을 지정합니다.

  20. IDP 서비스에 대한 추적 옵션 및 추적 파일 정보를 지정합니다.

  21. 추적 출력에 포함해야 하는 이벤트 및 기타 정보를 지정합니다.

결과

구성 모드에서 명령을 입력하여 구성을 확인합니다 show security idp . 출력에 의도한 구성이 표시되지 않으면 이 예의 구성 지침을 반복하여 수정합니다.

디바이스 구성이 완료되면 구성 모드에서 을(를) 입력합니다 commit .

참고:

구성 모드에 들어가 commit 면 구성이 내부적으로 확인되고 커밋됩니다. 오류가 발생하면 커밋이 실패하고 오류가 보고됩니다.

확인

체인 공격 구성이 제대로 작동하는지 확인하려면 다음 작업을 수행하십시오.

구성 확인

목적

체인 공격 구성이 올바른지 확인합니다.

작업

운영 모드에서 명령을 입력 show security idp policy-commit-status 하여 정책 컴파일 또는 로드 상태를 확인합니다.

참고:

명령의 show security idp policy-commit-status 출력은 동적이므로 이 명령에 대한 단일 출력이 없습니다.

구성에 따라 공격이 탐지되는지 확인하고, 디바이스를 통해 트래픽을 전달하여 공격 일치를 트리거합니다. 예를 들어, 명령을 입력 show security idp status 하여 정책이 로드되었는지 여부를 확인합니다.

user@host> show security idp status

show security idp attack table 명령을 입력하여 공격 트래픽을 전달한 다음 공격이 탐지되었는지 여부를 확인합니다.

참고:

명령은 공격이 감지된 경우에만 출력을 표시합니다.

user@host> show security idp attack table

예: 동적 공격 그룹 및 사용자 지정 공격 그룹으로 공격 그룹 구성

이 예는 IDP 정책에서 동적 공격 그룹 및 사용자 지정 공격 그룹으로 공격 그룹을 구성하여 FTP 또는 Telnet 서버를 보호하는 방법을 보여줍니다.

요구 사항

시작하기 전에 다음 문 중 하나가 true인 경우에만 디바이스에 보안 패키지를 설치합니다.

  • 동적 공격 그룹이 구성됩니다.

  • 사용자 지정 공격 그룹에는 사전 정의된 공격 또는 공격 그룹이 포함되어 있습니다.

참고:

사용자 지정 공격 그룹에 사용자 지정 공격만 포함된 경우 보안 패키지 라이선스가 필요하지 않으며 보안 패키지를 디바이스에 설치할 필요가 없습니다. 보안 패키지를 설치하려면 IDP 보안 패키지 라이선스가 필요합니다.

개요

IDP에는 많은 사전 정의된 공격 객체가 포함되어 있습니다. IDP 정책을 관리하고 구성하려면 공격 객체를 그룹화할 수 있습니다. 공격 객체 그룹은 두 개 이상의 공격 객체 유형을 포함할 수 있습니다. 공격 그룹은 다음과 같이 분류됩니다.

  • 동적 공격 그룹 - 특정 일치 기준에 따라 공격 객체를 포함합니다. 서명 업데이트 중에 동적 그룹 구성원은 해당 그룹의 일치하는 기준에 따라 자동으로 업데이트됩니다. 예를 들어, 동적 공격 그룹 필터를 사용하여 특정 애플리케이션과 관련된 공격을 동적으로 그룹화할 수 있습니다.

  • 사용자 지정 공격 그룹 - 공격 정의에 지정된 공격 목록을 포함합니다. 또한 사용자 지정 공격 그룹에는 특정 사전 정의된 공격, 사용자 지정 공격, 사전 정의된 공격 그룹 또는 동적 공격 그룹이 포함될 수 있습니다. 사용자 지정 공격 그룹은 공격이 그룹에 지정되어 있으므로 본질적으로 정적입니다. 따라서 보안 데이터베이스가 업데이트되면 공격 그룹은 변경되지 않습니다. 구성원은 서명 데이터베이스 또는 기타 사용자 지정 공격 및 동적 공격 그룹에서 사전 정의된 공격 또는 사전 정의된 공격 그룹이 될 수 있습니다.

이 예에서는 사용자 정의 및 동적 공격으로부터 FTP 또는 Telnet 서버를 보호하기 위해 IDP 정책에서 공격 그룹을 구성합니다.

구성

절차

CLI 빠른 구성

이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브러브를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 변경한 다음 계층 수준에서 명령을 CLI [edit] 로 복사해 붙여 넣은 다음, 구성 모드에서 을(를) 입력합니다 commit .

단계별 절차

다음 예제에서는 구성 계층에서 다양한 수준의 탐색이 필요합니다. 이를 수행하는 방법에 대한 지침은 CLI 사용자 가이드의 구성 모드에서 CLI 편집기 사용을 참조하십시오.

동적 공격 그룹 및 사용자 지정 공격 그룹으로 공격 그룹을 구성하려면 다음을 수행합니다.

  1. IDP 정책을 생성합니다.

  2. 규칙 베이스를 정책과 연결합니다.

  3. 규칙 베이스에 규칙을 추가합니다.

  4. 규칙에 대한 일치 기준을 정의합니다.

  5. 규칙 기준과 일치하도록 애플리케이션 세트 이름을 지정합니다.

  6. 사용자 지정 공격 그룹에 대한 일치를 지정합니다.

  7. 동적 공격 그룹에 대한 일치를 지정합니다.

  8. 규칙에 대한 작업을 지정합니다.

  9. 규칙에 대한 알림 또는 로깅 옵션을 지정합니다.

  10. IDP 정책을 활성화합니다.

  11. 사용자 지정 공격의 이름을 지정합니다.

  12. 사용자 지정 공격의 심각도를 설정합니다.

  13. 공격에 대한 공격 유형과 컨텍스트를 설정합니다.

  14. 공격에 대한 패턴을 지정합니다.

  15. 공격의 방향을 지정합니다.

  16. 사용자 지정 공격 그룹의 이름을 지정합니다.

  17. 사용자 지정 공격 그룹에 속한 공격 또는 공격 그룹 목록을 지정합니다.

  18. 첫 번째 동적 공격 그룹의 이름을 지정합니다.

  19. 필터를 구성하고 필터에 대한 범주 값을 설정합니다.

  20. 두 번째 동적 공격 그룹의 이름을 지정합니다.

  21. 두 번째 동적 공격 그룹에 대한 필터를 구성하고 이 필드에 대한 방향과 값을 설정합니다.

  22. IDP 서비스에 대한 추적 옵션 및 추적 파일 정보를 지정합니다.

  23. 추적 출력에 포함해야 하는 이벤트 및 기타 정보를 지정합니다.

결과

구성 모드에서 명령을 입력하여 구성을 확인합니다 show security idp . 출력에 의도한 구성이 표시되지 않으면 이 예의 구성 지침을 반복하여 수정합니다.

디바이스 구성이 완료되면 구성 모드에서 을(를) 입력합니다 commit .

참고:

구성 모드에 들어가 commit 면 구성이 내부적으로 확인되고 커밋됩니다. 오류가 발생하면 커밋이 실패하고 오류가 보고됩니다.

확인

구성 확인

목적

구성이 올바른지 확인합니다.

작업

운영 모드에서 명령을 입력 show security idp policy-commit-status 하여 정책 컴파일 또는 로드 상태를 확인합니다.

참고:

명령의 show security idp policy-commit-status 출력은 동적이므로 이 명령에 대한 단일 출력이 없습니다.

구성에 따라 공격이 탐지되는지 확인하고, 공격 일치를 트리거하는 디바이스를 통해 트래픽을 전달합니다. 예를 들어, 명령을 입력 show security idp status 하여 정책이 로드되었는지 여부를 확인합니다.

user@host> show security idp status

show security idp attack table 명령을 입력하여 공격 트래픽을 전달한 다음 공격이 탐지되었는지 여부를 확인합니다.

참고:

명령은 공격이 감지된 경우에만 출력을 표시합니다.

user@host> show security idp attack table

사용자 지정 공격 객체 DFA 표현식

표 25는 공격 패턴과 일치하기 위한 구문의 예를 제공합니다.

표 25: 예: 사용자 지정 공격 객체 정규 표현식

구문 예

설명

일치 예

안녕하세요.. \B.0.1.. 00\B... 세계

일치하는 데는 두 가지 측면이 있습니다.

비트마스크 패턴을 일치시켜야 합니다: \B.0.0.1.. 00\B

비트마스크 패턴 전후의 바이트 수(.로 표시)를 일치시켜야 합니다.

일치:

안녕하세요.. \B.0.11100\B... 세계를안녕하세요. \B.0.10000\B... 세계

일치하지 않음:

Hello.\B.0.1.입니다. 00\B.worldHello.. \B.0.1.. 11\B... 세계

\X01 86A5 00 00\X

5개의 지정된 바이트의 패턴입니다.

01 86A5 00 00

(Hello|world)

안녕하세요 또는 세계가 한 번 발생하는 패턴.

안녕하세요

세계

(Hello|world)+

안녕하세요 또는 세계가 한 번 이상 발생하는 패턴.

Helloworld

월드헬로

Hellohello

\[안녕하세요\]

패턴 Hello, 대소소개 무감각.

안녕하세요

안녕하세요

안녕하세요

\uHello\u

패턴 Hello, 유니코드는 무감각합니다.

안녕하세요

68656c6c6f

Hello\sworld

패턴 Hello 세계, 공백으로 구분된 두 단어.

전 세계 여러분 안녕하세요

[c-e]a(d|t)

c, d 또는 e의 첫 글자를 가진 패턴; 중앙 문자 a; d 또는 t로 끝납니다.

고양이

아빠

먹을

[^c-d]a(d|t)

c, d 또는 e 이외의 문자로 시작하는 패턴 두 번째 문자는 a; d 또는 t로 끝납니다.

유행

zad (광고)

a*b+c

문자 수(0 포함)의 패턴, 그 다음으로 하나 이상의 b 문자가 뒤따릅니다. 그 뒤에 c 문자가 표시됩니다.

기원전

Abc

aaaabbbbc

T[Kk]

대문자 T로 시작하는 패턴에 이어 케이스 무감각 k가 뒤따릅니다.

Tk

Tk

([Tt])k

패턴은 케이스에 무감각한 t로 시작하여 소문자 k가 뒤따릅니다.

Tk

Tk

바다[In]

바다에서 시작하는 패턴과 소문자 l, m 또는 n이 뒤따릅니다.

물개

솔 기

([B-D])에서

대문자 B, C 또는 D로 시작하는 패턴과 을(를) 소문자로 이어지는 패턴입니다.

박쥐

고양이

Dat

\0133\[hello\]\0135

오프닝 브래킷으로 시작하는 패턴과 대소문자 무감각한 Hello가 뒤따르는 닫기 브래킷으로 끝납니다. 이 표현식은 \0 표현식을 사용하여 다음 식이 옥탈 코드임을 의미하고, 오프닝 브래킷(133) 또는 마감 브래킷(135)에 대한 옥탈 코드가 뒤따릅니다.

[안녕하세요]

[HeLLo]

예: 패턴 부정 사용

패턴 부정을 사용하여 안전하다고 알려진 패턴을 배제하고 다른 모든 패턴을 일치시킬 수 있습니다.

예를 들어, FTP 서버에 대한 트래픽을 검사하기 위해 공격 객체를 설계하고 있다고 가정해 보겠습니다. 계정 사용자 이름과 암호는 승인된 사용자만 내부 리소스에 액세스할 수 있도록 잘 유지 관리됩니다. 그러나 네트워크가 성장하고 새로운 구성 요소가 추가되면 사용자 계정이 확산되어 특정 구성 요소에 대한 네트워크 액세스가 증가할 수 있습니다. 이 예에서는 여러 사용자 계정이 활성화된 내부 네트워크에 FTP 서버가 있습니다. 보안을 개선하기 위해 FTP 관리자에 대한 액세스를 제한해야 합니다.

FTP 서비스, ftp-username 컨텍스트 및 패턴 admin에 대한 공격 객체를 생성하고 Negate 확인란을 선택합니다. 결과는 을(를) 제외한 admin사용자의 로그인 시도에 플래그를 지정할 수 있는 공격 객체입니다. 일치하는 트래픽을 기록하거나 삭제하는 규칙에서 이 공격 객체를 사용할 수 있습니다.

예: 일치하는 파일 확장자

이 예에서는 확장 .emf(Windows Enhanced Metafiles) 및 .wmf(Microsoft Windows Metafile)를 사용하는 Microsoft Windows 메타파일을 감지하려고 합니다.

이러한 파일 유형 중 하나를 일치시키려면 간단한 DFA 표현식을 사용합니다.

이 표현식에서 다음을 수행합니다.

  • 별표(.*)와 결합된 기간은 하나 이상의 문자가 나타나야 함을 나타냅니다(와일드카드 일치).

  • 기간 문자(\.)와 결합된 백슬래스는 기간 문자가 탈출되었음을 나타냅니다(기간은 패턴에 나타납니다).

  • 표현식의 시작과 끝()의 괄호는 그룹을 나타냅니다. e와 w(e|w) 사이의 파이프 문자는 문자 간의 OR 관계를 나타냅니다. 이 표현식의 경우, e 또는 w가 이 표현식과 일치하려면 패턴에 나타나야 합니다. 반드시 하나만 존재해야 합니다.

  • 오프닝 브래킷(\[)은 마감 브래킷(\])이 나타날 때까지 모든 문자에 대해 대소문자 무감각한 일치의 시작을 나타냅니다.

  • 마감 브래킷(\])은 대소문을 무감각한 일치가 끝나는 것을 나타냅니다.

예: Apache Tomcat 서비스 거부 공격

이 예에서는 Apache Tomcat을 실행하는 웹 서버가 있는 것으로 가정합니다. 보안 관리자는 Apache Tomcat에 대해 취약점이 방금 공지되었음을 알 수 있으며, 서버 패치를 위한 다운타임 예약이 가능할 때까지 네트워크를 보호하기 위해 사용자 지정 공격 객체를 생성하기로 결정합니다.

취약점에 대한 CVE 권고(http://nvd.nist.gov/nvd.cfm?cvename=CAN-2002-0682)에는 다음과 같은 견적이 포함되어 있습니다.

이 정보에서 공격이 HTTP를 사용한다는 것을 알 수 있습니다. 이제 공격 코드를 찾아야 합니다. 이 권고에는 공격에 대한 자세한 정보로 연결되는 참조도 포함됩니다. 안타깝게도 언급된 웹 페이지에는 익스플로잇 코드가 포함되어 있지 않습니다. CVE 권고에서 학습한 정보를 사용하여 웹을 검색한 후 http://packetstormsecurity.nl/0210-exploits/neuter.c 일부 익스플로잇 코드를 찾습니다. 스크립트를 복사하여 테스트 랩의 공격자 컴퓨터로 이동합니다.

이 공격 객체를 개발하려면 다음을 수행합니다.

  1. 공격을 재현하여 공격 컨텍스트, 방향 및 패턴을 결정합니다. 이상적으로는 Wireshark를 동시에 사용하여 scio ccap 공격을 한 번만 실행해야 하는 것이 이상적입니다.
  2. 공격 시그니처의 다음 요소를 확인해보십시오.
    • 서비스. CVE 권고에서는 공격이 HTTP 프로토콜을 사용한다는 것을 알고 있습니다. 패킷 캡처를 검토하여 프로토콜을 확인합니다.

    • 컨텍스트. 을(를) 사용하여 scio ccap 특정 서비스 컨텍스트를 일치시킬 수 있는지 여부를 결정합니다. 이 예에서 서명 패턴은 서비스 컨텍스트 HTTP URL Parsed에서 발생합니다.

    • 패턴. 이 권고에서는 HTTP 프로토콜에서 익스플로잇된 GET 방법을 사용하여 공격이 발생한다는 것을 알고 있습니다. GET 방법을 포함하는 프레임을 선택하여 패킷의 해당 섹션에 대한 세부 정보를 확인합니다. 서명 패턴을 examples/servlet/AUX로 빠르게 식별할 수 있습니다.

    • 방향. 세션을 시작한 소스 IP를 찾습니다. 이 공격은 TCP를 사용하기 때문에 Wireshark에서 TCP 스트림 팔로우 옵션을 사용하여 세션을 시작한 소스 IP를 빠르게 발견할 수 있습니다. 공격 방향은 클라이언트 투 서버입니다.

  3. 공격 시그니처와 일치하도록 공격 객체를 생성합니다. 이 예는 서명과 일치하도록 다음 정규 표현식을 사용합니다.

    이 표현식에서 다음을 수행합니다.

    • dot star 조합(.*)은 와일드카드 일치를 나타냅니다.

    • /examples/servlet/ 섹션은 패킷 캡처에서 직접 수행됩니다.

    • 괄호()는 항목 그룹을 나타내고 파이프 문자(|)는 OR을 나타냅니다. 이러한 문자는 공격이 그룹의 한 항목을 포함해야 한다는 것을 나타내기 위해 함께 사용되는 경우가 많습니다. 이 예에서 공격은 문자열 /examples/servlet/) 다음의 단어 aux, lpt1, con 또는 prn을 포함해야 합니다.

      이 예에서는 그룹을 사용합니다. 패킷 캡처는 서명 패턴을 /examples/servlet/AUX로 표시합니다. AUX는 Windows 디바이스입니다. LPT1, CON 및 PRN 디바이스를 악용하려는 시도에 대해 경계해야 할 충분한 이유가 있습니다.

  4. 공격 객체를 테스트합니다.

특정 프로토콜에 대한 IDP 테스트 조건 목록

IDP 사용자 지정 공격을 구성할 때 특정 프로토콜에 대한 목록 테스트 조건을 지정할 수 있습니다. ICMP에 대한 테스트 조건을 나열하려면:

  1. ICMP에 지원되는 테스트 조건을 나열하고 구성하려는 테스트 조건을 선택합니다. 지원되는 테스트 조건은 계층 수준의 CLI에서 [edit security idp custom-attack test1 attack-type anomaly] 사용할 수 있습니다.

  2. 테스트 조건을 구성할 서비스를 구성합니다.

  3. 테스트 조건을 구성합니다(프로토콜 이름 지정은 필요하지 않습니다).

  4. 디바이스 구성이 완료되면 구성 모드에서 을(를) 입력합니다 commit .

IDP 프로토콜 디코더 이해

침입 탐지 및 방지(IDP)는 프로토콜 디코더를 사용하여 이상 징후를 찾고 RFC 표준이 충족되는지 확인하여 프로토콜 무결성 및 프로토콜 컨텍스트 정보를 확인합니다. 이상 징후는 헤더, 메시지 본문 또는 해당 프로토콜에 대한 RFC 표준에서 벗어난 다른 개별 필드와 같은 프로토콜의 일부일 수 있습니다. 예를 들어 SMTP의 경우, SMTP MAIL에서 SMTP HELO 앞에 오는 경우, 이는 SMTP 프로토콜의 이상입니다.

프로토콜 컨텍스트 정보를 사용할 수 있는 경우 프로토콜 디코더는 이러한 컨텍스트 내에서 공격을 확인합니다. 예를 들어 SMTP의 경우 전자 메일이 user@company.com 전송되는 경우, user@company.com 컨텍스트 정보이며 TO의 SMTP MAIL이 컨텍스트입니다. 공격 탐지를 위해 전체 패킷이 아닌 프로토콜 상황별 데이터를 사용하여 프로토콜 디코더는 전반적인 성능과 정확성을 향상합니다.

SMTP에 대한 프로토콜 디코더 검사와 일치하는 규칙으로 구성된 정책이 있는 경우, 규칙이 트리거되고 적절한 작업이 수행됩니다.

IDP 모듈에는 사전 구성된 프로토콜 디코더 세트가 함께 표시됩니다. 이러한 프로토콜 디코더는 수행하는 다양한 프로토콜별 컨텍스트 확인에 대한 기본 설정을 가지고 있습니다. 이러한 기본값을 사용하거나 사이트의 특정 요구 사항을 충족하도록 조정할 수 있습니다. 사용 가능한 프로토콜 디코더 목록을 표시하려면 다음 명령을 입력합니다.

현재 프로토콜 디코더 세트와 기본 컨텍스트 값을 자세히 보려면 디바이스의 /ar/db/idpd/sec-download 폴더에 있는디텍터-capabilities.xml 파일을 볼 수 있습니다. 새로운 보안 패키지를 다운로드할 때 현재 프로토콜과 기본 디코더 컨텍스트 값을 나열하는 이 파일도 수신됩니다.

예: UNIX CDE/dtlogin 취약점

이 예에서 네트워크에는 UNIX를 실행하는 여러 사용자 워크스테이션과 서버가 포함됩니다. 많은 UNIX 운영 체제는 일반 데스크톱 환경(CDE)을 그래픽 사용자 인터페이스로 사용합니다. 보안 관리자는 CDE의 dtlogin 프로세스에 새로운 취약점을 알릴 수 있습니다(dtlogin 프로세스는 CDE에 대한 GUI 로그인 프로세스를 처리함).

취약점에 대한 CERT 권고(http://www.kb.cert.org/vuls/id/179804)에는 다음 정보가 포함됩니다.

이 정보에서 공격은 XDMCP 프로토콜 패킷을 사용하고 UDP/177에서 실행된다는 것을 알고 있습니다. 이제 공격 코드를 찾아야 합니다. 이 권고에는 공격에 대한 자세한 정보로 연결되는 참조도 포함됩니다. http://lists.immunitysec.com/pipermail/dailydave/2004-March/000402.html 한 참조는 공격을 처음 보고한 사람도 공격을 복제하는 스크립트를 작성했음을 나타냅니다. 스크립트를 얻고 테스트 랩에서 공격자 컴퓨터로 이동합니다.

이 공격 객체를 개발하려면 다음을 수행합니다.

  1. 공격을 재현하여 공격 컨텍스트, 방향 및 패턴을 결정합니다. 이상적으로는 Wireshark를 동시에 사용하여 scio ccap 공격을 한 번만 실행해야 하는 것이 이상적입니다.
  2. 공격 시그니처 요소에 대해 알아보십시오.
    • 서비스. CERT 권고에서 공격이 XDMCP 프로토콜을 사용한다는 것을 알고 있습니다. Wireshark의 패킷 캡처를 검토하여 프로토콜을 확인합니다.

    • 컨텍스트. 을(를) 사용하여 scio ccap 특정 서비스 컨텍스트를 일치시킬 수 있는지 여부를 결정합니다. 이 예에서 XMCP 서비스 컨텍스트는 IDP 시스템에서 지원되지 않으며 출력 scio ccap 은 비어 있습니다. 공격에 대한 패킷 컨텍스트를 지정해야 합니다.

    • 패턴. XDMCP 프로토콜에 대한 지식을 사용하여 공격이 NUL이 아닌 문자(16진수 코드 00 1b)를 사용하여 유효하지 않은 연결 유형을 지정하는 것을 식별합니다(NUL 문자는 XDMCP의 인터넷 연결 유형을 나타남). 서명 패턴에서 비 NUL 문자를 고정하려면 앞의 바이트 중 일부를 패턴의 일부로 포함합니다. 이 예에서는 버전 번호(16진수 코드 00 01)와 요청 옵션 코드(16진수 코드 00 07)로 비 NUL 문자를 고정하도록 선택합니다. 전체 공격 패턴은 00 01 00 07이고 그 다음으로 모든 유형의 문자가 5개이며, 다음으로 여섯 번째 문자와 비 NUL 문자(위의 00 1b 참조) 또는 비 NUL 문자 및 다른 문자가 뒤따릅니다.

    • 방향. 세션을 시작한 소스 IP를 찾습니다. 이 예에서는 공격 방향을 결정할 수 없습니다.

  3. 공격 시그니처와 일치하도록 공격 객체를 생성합니다. 서명과 일치하려면 다음 정규 표현식을 사용합니다.

    이 표현식에서 다음을 수행합니다.

    • \x 표현식은 16진수 값을 나타냅니다.

    • XDMP 프로토콜의 숫자 00 01 00 07은 버전 번호(16진수 코드 00 01 및 요청 옵션 코드(16진수 코드 00 07)를 나타냅니다.

    • 5개의 기간(.....)은 모든 종류의 5자를 나타냅니다.

    • 괄호()는 항목 그룹을 나타내고 파이프 문자(|)는 OR를 나타냅니다. 이러한 문자는 공격이 그룹의 한 항목을 포함해야 한다는 것을 나타내기 위해 함께 사용되는 경우가 많습니다.

    • 개폐 브래킷과 캐리 [^ 결합된 괄호는 부정을 나타냅니다.

    • 0(\0)과 결합된 백슬래스는 옥탈 코드 번호를 나타냅니다.

    • 00자 은(는) NUL 문자에 대한 16진수 코드입니다. 이 예에서 공격에는 NUL이 아닌 문자가 포함되어야 합니다. 앞에 있거나 다른 문자([^\000] 또는 [^\000])가 뒤따릅니다.

    • dot star 조합(.*)은 와일드카드 일치를 나타냅니다. 표현식의 끝에서 사용할 때 와일드카드는 모든 것이 지정된 식을 따를 수 있음을 나타냅니다.

  4. 공격 객체를 테스트합니다.

예: 웜 감지

웜과 트로이 목마는 종종 네트워크를 입력하기 위해 방화벽 및 기타 기존 보안 조치를 우회합니다. 이 예에서는 사용자 정의 공격 객체를 생성하여 네트워크에서 Blaster 웜을 감지합니다.

Blaster 웜에 대한 CERT 자문(http://www.cert.org/advisories/CA-2003-20.html)은 다음과 같은 정보를 제공합니다.

이 정보에서, 당신은 공격이 DCOM 익스플로잇을 사용한다는 것을 알고 있습니다, 이전에 식별 된 보안 구멍. 이제 공격 코드를 찾아야 합니다. 이 권고에는 공격에 대한 자세한 정보로 연결되는 참조도 포함됩니다. 안타깝게도 언급된 웹 페이지에는 익스플로잇 코드가 포함되어 있지 않습니다. CERT 권고에서 학습한 정보를 사용하여 웹을 검색한 후 PacketStorm(http://packetstormsecurity.com/0307-exploits/dcom.c)에서 익스플로잇 코드를 찾습니다.

이 공격 객체를 개발하려면 다음을 수행합니다.

  1. 공격을 재현하여 공격 컨텍스트, 방향 및 패턴을 결정합니다. 이상적으로는 Wireshark를 동시에 사용하여 scio ccap 공격을 한 번만 실행해야 하는 것이 이상적입니다.
  2. 공격 시그니처 요소에 대해 알아보십시오.
    • 서비스. CERT 권고에서 IDP OS가 서비스 컨텍스트를 지원하지 않는 ICMP를 사용한다는 것을 알고 있습니다. 패킷 캡처를 검토하여 프로토콜을 ICMP로 확인합니다.

    • 컨텍스트. 을(를) 사용하여 scio ccap 특정 서비스 컨텍스트를 일치시킬 수 있는지 여부를 결정합니다. 이 예에서 ICMP 서비스 컨텍스트는 IDP 시스템에서 지원되지 않으며 scio ccap 출력은 비어 있습니다. 공격에 대한 첫 번째 패킷 컨텍스트를 지정해야 합니다.

    • 패턴. Wireshark에 나열된 첫 번째 프레임을 선택하고 두 번째 섹션에서 정보를 검토합니다. ICMP 패킷에 데이터가 포함되어서는 안 된다는 것을 알고 있기 때문에 64바이트 데이터 페이로드를 조사합니다. 불규칙한 페이로드가 여러 개의 "AA" 문자인 것을 쉽게 볼 수 있습니다. 이는 아마도 버퍼를 오버플로우하려는 코드일 것입니다. 이 패턴은 ICMP 패킷의 맥락에서 이례적이기 때문에 서명으로 선택합니다.

    • 방향. 세션을 시작한 소스 IP를 찾습니다. 이 예에서는 공격 방향을 결정할 수 없습니다.

  3. 공격 시그니처와 일치하도록 공격 객체를 생성합니다. 이 예에서는 서명과 일치하도록 다음 정규 표현식을 사용합니다.

    이 표현식에서 다음을 수행합니다.

    • \X 표현식은 16진수 값이 따라야 함을 나타냅니다.

    • dot star 조합(.*)은 와일드카드 일치를 나타냅니다. 표현식의 끝에서 사용할 때 와일드카드는 모든 것이 지정된 식을 따를 수 있음을 나타냅니다.

  4. 공격 객체를 테스트합니다.

예: HTTP 취약점 악용을 감지하는 복합 서명

일부 공격은 패킷별 수준에서 볼 때 양성으로 보이도록 생성됩니다. 이러한 공격의 경우 여러 컨텍스트(서비스, 비서비스 또는 두 가지 모두)에서 여러 서명 패턴을 감지하는 복합 시그니처를 생성할 수 있습니다.

이 예에서는 Microsoft 프론트페이지 서버 확장을 사용하는 웹 서버가 있습니다. 보안 관리자는 프론트페이지 서버 확장에서 새로운 버퍼 오버플로우 취약점을 알 수 있습니다.

취약점에 대한 BugTraq 권고(http://www.securityfocus.com/bid/9007/discussion/)에는 다음 정보가 포함됩니다.

다음 개념 증명 예도 제공됩니다.

또한 컴파일된 익스플로잇에 대한 링크가 포함되어 있습니다.

이 정보에서는 공격이 HTTP 프로토콜을 사용하며 공격의 적어도 일부가 POST 방법을 사용한다는 것을 알고 있습니다. 컴파일된 익스플로잇에 대한 링크를 사용하여 스크립트를 얻고 테스트 랩의 공격자 컴퓨터로 이동합니다.

이 공격 객체를 개발하려면 다음을 수행합니다.

  1. 공격을 재현하여 공격 컨텍스트, 방향 및 패턴을 결정합니다. 가장 좋은 것은 Wireshark를 동시에 사용하여 scio ccap 공격을 한 번만 실행하면 되는 것입니다.
  2. 공격 시그니처 요소에 대해 알아보십시오.
    • 서비스. BugTraq 권고에서 공격이 HTTP 프로토콜을 사용한다는 것을 알고 있습니다. 패킷 캡처를 검토하고 HTTP 프로토콜 사용을 찾습니다.

    • 컨텍스트. 을(를) 사용하여 scio ccap 특정 서비스 컨텍스트를 일치시킬 수 있는지 여부를 결정합니다. 이 예에서 서비스 컨텍스트는 HTTP URL Parsed입니다.

    • 패턴. HTTP 서비스 내에서 서명 패턴 POST /_vti_bin/_vti_aut/fp30reg.dll을 신속하게 식별합니다.

      그러나 이 패턴은 오탐을 유발할 수 있으므로 두 번째 서명 패턴을 결정하여 규칙에서 공격만 감지하도록 보장합니다. 이 경우, 두 번째 서명(BugTraq 자문에 명시)은 입니다 Transfer-Encoding: chunked.

    • 방향. 세션을 시작한 소스 IP를 찾습니다. 이 예에서 두 시그니처 패턴 모두에 대한 공격 방향은 클라이언트 투 서버입니다.

  3. 공격 시그니처와 일치하도록 공격 객체를 생성합니다. 다음 정규 표현식을 사용하여 첫 번째 서명과 일치합니다.

    이 표현식에서 다음을 수행합니다.

    • 오프닝 브래킷(\[)은 마감 브래킷이 나타날 때까지 모든 문자에 대해 대소문자 무감각한 일치의 시작을 나타냅니다.

    • 패턴 /_vti_bin/_vti_aut/fp30reg는 직접 문자 일치입니다.

    • 기간(\.)과 결합된 백슬래스는 기간이 탈출되었음을 나타냅니다(기간은 패턴으로 나타 나타).

    • 마감 브래킷(\])은 케이스 무감각 일치의 끝을 나타냅니다.

    • 별표 문자(.*)와 결합된 기간은 하나 이상의 문자가 나타나야 함을 나타냅니다.

  4. 두 번째 서명을 추가합니다. 다음 정규 표현식을 사용하여 두 번째 서명과 일치합니다.

    이 표현식에서 다음을 수행합니다.

    • 오프닝 브래킷(\[)은 마감 브래킷이 나타날 때까지 모든 문자에 대해 대소문자 무감각한 일치의 시작을 나타냅니다.

    • 패턴 전송-인코딩: 은(는) 직접 문자 일치입니다.

    • 플러스 기호(+)는 공백 문자가 패턴 내에서 하나 이상 나타나야 함을 나타냅니다.

    • 청크 패턴은 직접 문자 일치입니다.

    • 마감 브래킷(\])은 케이스 무감각 일치의 끝을 나타냅니다.

  5. 공격 객체를 테스트합니다.

예: 시간 바인딩 매개 변수를 사용하여 무차별 공격 탐지

시간 바인딩 제약 조건은 트래픽이 일치로 간주되기 위해서는 패턴이 1분 이내에 특정 수의 시간을 발생하도록 요구합니다.

시그니처와 함께 시간 바인딩 매개 변수를 사용하여 무차별 대입 공격의 징후를 감지할 수 있습니다. 암호를 변경하는 사용자는 무해한 이벤트로, 일반적으로 네트워크에서 종종 볼 수 있습니다. 그러나 1분 만에 수천 권의 암호 변경이 의심스럽습니다.

무차별적인 공격으로 공격자는 대개 대상 서버 용량을 압도하거나 인증 자격 증명을 일치시키려는 반복된 시행착오 시도에 의해 엄청난 힘으로 시스템 방어를 뚫으려고 시도합니다. 무차별 로그인 공격에서 공격자는 먼저 사용자 이름과 암호 사전 목록을 수집합니다. 다음으로 공격자는 목록의 첫 번째 사용자에 대해 사전의 첫 번째 암호를 입력하는 도구를 사용한 다음 일치할 때까지 모든 사용자에 대해 모든 암호를 시도합니다. 공격자가 사용자 이름과 암호의 모든 조합을 시도하면 항상 성공합니다. 그러나 암호 사전은 일반적으로 제한되고(가능한 모든 암호를 포함하지 않음) 공격 도구가 암호에 순열을 수행하지 않기 때문에 무차별 공격(예: 문자 뒤집기 또는 케이스 변경)이 실패하는 경우가 많습니다.

이 예에서 HTTP(웹 기반 애플리케이션)를 통해 인증된 사용자의 과도한 암호 변경 사항을 감지하는 서명 공격 객체를 생성합니다.

첫째, 공격 패턴을 구성합니다.

이 표현식에서 다음을 수행합니다.

  • dot star 조합(.*)은 와일드카드 일치를 나타냅니다.

  • 문자 앞의 백슬래스는 문자가 정규 표현식을 나타내고 이스케이프되어야 함을 나타냅니다. 이 경우, 문자는 개괄호입니다. 백슬래시는 파일 확장자 마커(점) 앞과 닫는 괄호 앞에 이 표현식에도 사용됩니다.

  • 사용자 암호를 변경하는 데 사용되는 cgi 스크립트의 이름과 cgi 확장이 포함되어 있습니다.

  • 웹 기반 애플리케이션에 대해 발생하는 암호 변경을 감지하려고 시도하기 때문에 컨텍스트를 위해 목록에서 HTTP-URL-PARSED 를 선택합니다. changepassword.cgi 스크립트를 사용할 때 URL의 일부로 나타나지만 이름을 찾으려면 IDP 시리즈 디바이스에 URL을 구문 분석하도록 지시해야 합니다.

다음으로 시간 바인딩을 구성합니다.

이러한 설정에서 다음을 수행합니다.

  • 범위는 피어 로 설정되므로 공격 패턴이 소스 또는 대상에 관계없이 이벤트와 일치할 수 있습니다.

  • 카운트는 오탐을 피하기 위해 높은 수(1000)로 설정됩니다. 이 값은 공격 개체가 일치하기 전에 changepassword.cgi 스크립트가 URL에 1000번 표시되어야 한다는 것을 의미합니다.

참조: 사용자 지정 공격 개체 프로토콜 번호

IDP 시스템에서 사용되는 표 26 프로토콜 번호입니다.

표 26: IDP 공격 객체: 프로토콜 번호

프로토콜 이름

프로토콜 번호

HOPOPT

0

Icmp

1

Igmp

2

Ggp

3

IPIP

4

세인트

5

Tcp

6

Cbt

7

Egp

8

Igp

9

BBN-RCC-MON

10

NVP-II

11

강아지

12

아르고스

13

EMCON

14

Xnet

15

혼돈

16

Udp

17

멀티플렉서

18

DCN-MEAS

19

Hmp

20

Prm

21

XND-IDP

22

트렁크-1

23

트렁크-2

24

리프-1

25

리프-2

26

Rdp

27

IRTP

28

ISO-TP4

29

NETBLT

30

MFE-NSP

31

MERIT-INP

32

SEP

33

3pc

34

IDPR

35

Xtp

36

Ddp

37

TP_PLUS_PLUS

39

Il

40

IPV6

41

SDRP

42

IPV6 라우팅

43

IDV6-FRAGMENT

44

IDRP

45

Rsvp

46

Gre

47

MHRP

48

Bna

49

Esp

50

51

I-NLSP

52

슬쩍

53

NARP

54

모바일

55

TLSP

56

건너뛸

57

IPV6-ICMP

58

IPV6-NONXT

59

IPV6-OPTS

60

AHIP

61

CFTP

62

ALNP

63

SAT-EXPAK

64

KRYPTOLAN

65

RVD

66

IPPC

67

ADFSP

68

토-몬

69

비자

70

IPCV

71

CPNX

72

CPHB

73

Wsn

74

Pvp

75

BR-SAT-MON

76

SUN-ND

77

WB-MON

78

WB-EXPAK

79

ISO-IP

80

VMTP

81

SECURE-VMTP

82

덩굴

83

Ttp

84

NSFNET-IBP

85

DGP

86

Tcf

87

Eigrp

88

OSPFIGP

89

SPRITE-RPC

90

라프 (5)

91

Mtp

92

AX_25

93

IPIP

94

MICP

95

SCC-SP

96

ETHERIP

97

캡슐화

98

원숭이

99

GMTP

100

IFMP

101

PNNI

102

Pim

103

ARIS

104

SCPS

105

Qnx

106

A/N

107

IP 컴포지션

108

Snp

109

COMPAT-PEER

110

IPZ-IN-IP

111

Vrrp

112

Pgm

113

HOP-O

114

L2tp

115

Ddx

116

Iatp

117

Stp

118

Srp

119

Uti

120

Smp

121

Ssm

122

Ptp

123

이시스

124

화재

125

CRTP

126

CRUDP

127

SSCOPMCE

128

IPLT

129

Sps

130

파이프

131

SCTP

132

Fc

133

RSVP-E2E-IGNORE

134

해당(n/a)

 

해당(n/a)

 

해당(n/a)

 

예약

255

참조: 인쇄할 수 없는 및 인쇄할 수 없는 ASCII 문자

다음 표에서는 인쇄할 수 없는 문자와 인쇄할 수 없는 문자를 ASCII에 대한 세부 정보를 제공합니다.

표 27: ASCII 참조: 인쇄할 수 없는 문자

12월

16 진수

Oct

Char

코멘트

0

0

000

Nul

Null

1

1

001

Soh

제목 시작

2

2

002

Stx

텍스트 시작

3

3

003

ETX

텍스트 끝

4

4

004

Eot

전송 종료

5

5

005

ENQ

문의

6

6

006

Ack

인정

7

7

007

8

8

010

모텔

백스페이스

9

9

011

수평 탭

10

A

012

Lf

라인 피드

11

B

013

Vt

수직 탭

12

C

014

Ff 로

양식 피드

13

D

015

Cr

캐리지 리턴

14

전자

016

그래서

시프트 아웃

15

F

017

Si

시프트 인

16

10

020

Dle

데이터 링크 이스케이프

17

11

021

DC1

디바이스 제어 1

18

12

022

DC2

디바이스 제어 2

19

13

023

DC3

디바이스 제어 3

20

14

024

DC4

디바이스 제어 4

21

15

025

Nak

부정적인 인정

22

16

026

Syn

동기식 유휴 상태

23

17

027

Etb

전송 블록 끝

24

18

030

Cna

취소

25

19

031

그들

매체의 끝

26

1A

032

하위

대체

27

1B

033

Esc

탈출

28

1C

034

Fs

파일 분리자

29

1d

035

Gs

그룹 분리자

30

1e

036

Rs

기록 분리자

31

1f

037

우리

유닛 분리자

표 28: ASCII 참조: 인쇄 가능한 문자

12월

16 진수

Oct

Char

32

20

040

공간

33

21

041

!

34

22

042

 

35

23

043

#

36

24

044

$

37

25

045

%

38

26

046

&

39

27

047

 

40

28

050

(

41

29

051

)

42

2a

052

*

43

2B

053

+

44

2C

054

,

45

2d

055

-

46

2e

056

.

47

2f

057

/

48

30

060

0

49

31

061

1

50

32

062

2

51

33

063

3

52

34

064

4

53

35

065

5

54

36

066

6

55

37

067

7

56

38

070

8

57

39

071

9

58

3a

072

:

59

3B

073

;

60

3c

074

<

61

3d

075

=

62

3e

076

>

63

3f

077

?

64

40

100

@

65

41

101

A

66

42

102

B

67

43

103

C

68

44

104

D

69

45

105

전자

70

46

106

F

71

47

107

G

72

48

110

H

73

49

111

74

4A

112

J

75

4B

113

K

76

4C

114

L

77

4D

115

M

78

4E

116

N

79

4f

117

O

80

50

120

P

81

51

121

Q

82

52

122

R

83

53

123

S

'84

54

124

T

85

55

125

U

86

56

126

V

87

57

127

W

88

58

130

X

89

59

131

Y

90

5a

132

Z

91

5B

133

[

92

5C

134

\

93

5d

135

]

94

5E

136

^

95

5f

137

_

96

60

140

`

97

61

141

a

98

62

142

B

99

63

143

C

100

64

144

D

101

65

145

전자

102

66

146

F

103

67

147

G

104

68

150

H

105

69

151

106

6a

152

J

107

6B

153

k

108

6c

154

L

109

6d

155

M

110

6E

156

N

111

6f

157

O

112

70

160

P

113

71

161

Q

114

72

162

R

115

73

163

s

116

74

164

T

117

75

165

U

118

76

166

V

119

77

167

W

120

78

170

X

121

79

171

Y

122

7a

172

Z

123

7b

173

{

124

7C

174

|

125

7d

175

}

126

7e

176

~

127

7f

177

128

80

200

Ç

129

81

201

Ü

130

82

202

É

131

83

203

Â

132

84

204

Ä

133

85

205

À

134

86

206

Å

135

87

207

ç

136

88

210

ê

137

89

211

ë

138

8a

212

È

139

8B

213

Ï

140

8c

214

î

141

8D

215

ì

142

8e

216

Ä

143

8f

217

Å

144

90

220

É

145

91

221

Æ

146

92

222

Æ

147

93

223

ô

148

94

224

Ö

149

95

225

ò

150

96

226

û

151

97

227

ù

152

98

230

Ÿ

153

99

231

Ö

154

9a

232

Ü

155

9B

233

¢

156

9C

234

£

157

9D

235

¥

158

9E

236

P

159

9f

237

Ƒ

160

A0

240

á

161

A1

241

Í

162

A2

242

ó

163

A3

243

ú

164

A4

244

Ñ

165

A5

245

Ñ

166

A6

246

ª

167

A7

247

º

168

A8

250

¿

169

A9

251

¬

170

Aa

252

 

171

Ab

253

½

172

Ac

254

¼

173

광고

255

¡

174

Ae

256

"

175

Af

257

"

176

B0

260

¦

177

B1

262

¦

178

B2

262

¦

179

B3

263

¦

180

B4

264

¦

181

B5

265

¦

182

B6

266

¦

183

B7

267

+

184

B8

270

+

185

B9

271

¦

186

272

¦

187

Bb

273

+

188

기원전

274

+

189

Bd

275

+

190

BE

276

+

191

Bf

277

+

192

C0

300

+

193

C1

301

-

194

C2

302

-

195

C3

303

+

196

C4

304

-

197

C5

305

+

198

C6

306

¦

199

C7

307

¦

200

C8

310

+

201

C9

311

+

202

Ca

312

-

203

Cb

313

-

204

Cc

314

¦

205

Cd

315

-

206

Ce

316

+

207

Cf

317

-

208

D0

320

-

209

D1

321

-

210

D2

322

-

211

D3

323

+

212

D4

324

+

213

D5

325

+

214

D6

326

+

215

D7

327

+

216

D8

330

+

217

D9

331

+

218

332

+

219

Db

333

¦

220

Dc

334

_

221

Dd

335

¦

222

336

¦

223

Df

337

¯

224

E0

340

a

225

E1

341

ß

226

E2

342

G

227

E3

343

P

228

E4

344

S

229

E5

345

s

230

E6

346

µ

231

E7

347

T

232

E8

350

F

233

E9

351

T

234

Ea

352

O

235

Eb

353

D

236

Ec

354

8

237

Ed

355

F

238

Ee

356

전자

239

Ef

357

N

240

F0

360

=

241

F1

361

+/-

242

F2

362

=

243

F3

363

=

244

F4

364

(

245

F5

365

)

246

F6

366

÷

247

F7

367

˜

248

F8

370

°

249

F9

371

250

Fa

372

251

Fb

373

V

252

Fc

374

N

253

Fd

375

²

254

Fe

376

¦

255

Ff 로

377

 

예: IDP 프로토콜 디코더 구성

이 예는 IDP 프로토콜 디코더 튜닝을 구성하는 방법을 보여줍니다.

요구 사항

시작하기 전에 IDP 프로토콜 디코더 기능을 검토하십시오. IDP 프로토콜 디코더 이해를 참조하십시오.

개요

Junos IDP 모듈에는 사전 구성된 프로토콜 디코더 세트가 함께 표시됩니다. 이러한 프로토콜 디코더는 수행하는 다양한 프로토콜별 컨텍스트 확인에 대한 기본 설정을 가지고 있습니다. 기본 설정을 사용하거나 튜닝하여 사이트의 특정 요구 사항을 충족할 수 있습니다. 이 예에서는 FTP에 대한 프로토콜 디코더를 조정하는 방법을 보여줍니다.

구성

절차

단계별 절차

IDP 프로토콜 디코더 튜닝 구성 방법:

  1. 조정 가능한 매개 변수가 있는 프로토콜 목록을 확인합니다.

  2. FTP 프로토콜에 대한 조정 가능한 매개 변수를 구성합니다.

  3. 디바이스 구성이 완료되면 구성을 커밋합니다.

확인

구성이 제대로 작동하는지 확인하려면 명령을 입력합니다 show security idp status .

여러 IDP 탐지기 지원 이해

새로운 보안 패키지가 수신되면 공격 정의 및 탐지기가 포함됩니다. 특정 버전의 보안 패키지에서 공격 정의는 포함된 탐지기의 기능에 해당합니다. 디바이스에서 정책 에이징이 비활성화되면(정책 에이징 명령에 대한 정책 재설정 명령문 참조), 주어진 시간에는 하나의 정책만 적용됩니다. 그러나 정책 에이징이 활성화되어 있고 정책 업데이트가 있는 경우 새 정책이 로드될 때 기존 정책이 언로드되지 않습니다. 따라서 두 정책 모두 디바이스에 적용될 수 있습니다. 이 경우 기존 모든 세션은 기존 정책에 의해 계속 검사되고 새로운 세션은 새 정책으로 검사됩니다. 이전 정책을 사용하는 기존 세션이 모두 종료되거나 만료되면 이전 정책이 언로드됩니다.

정책이 로드되면 디텍트와도 연결됩니다. 새 정책이 로드되는 경우 기존 정책에서 이미 사용 중인 감지기와 일치하는 관련 탐지기가 있으면 새 감지기가 로드되지 않고 두 정책 모두 하나의 관련 탐지기를 사용합니다. 그러나 새로운 탐지기가 현재 감지기와 일치하지 않으면 새로운 감지기가 새 정책과 함께 로드됩니다. 이 경우 로드된 각 정책은 자체 관련 탐지기를 사용하여 공격 탐지를 수행합니다.

지정된 시간에 최대 2개의 탐지기를 로드할 수 있습니다. 2개의 감지기가 이미 로드되어 있고(정책 둘 이상에 의해) 새 정책을 로드하려면 새로운 감지기를 로딩해야 하는 경우, 새 감지기를 로드하기 전에 로드된 디텍트 중 적어도 하나를 언로드해야 합니다. 탐지기가 언로드되기 전에 해당 탐지기를 사용하는 모든 정책도 로드되지 않습니다.

다음 명령을 입력하여 현재 정책 및 해당 탐지기 버전을 볼 수 있습니다.

릴리스 18.4R1 Junos OS 시작하여 새로운 IDP 정책이 로드되면 새롭게 로드된 정책과 IDP 처리에 대해 무시되지 않는 기존 세션을 사용하여 기존 세션이 검사됩니다. IDP 검사는 새로운 IDP 정책이 로드된 후 탐지기에 의해 생성된 컨텍스트 기반 공격에 대해 계속되며, 새로운 디텍트와 함께 로드된 새로운 정책은 예외입니다.

콘텐츠 압축 해제 이해하기

HTTP와 같은 애플리케이션 프로토콜에서는 컨텐츠를 압축한 다음 네트워크를 통해 전송할 수 있습니다. 서명 패턴은 코드되지 않은 트래픽 데이터와 일치하도록 작성되므로 패턴은 압축된 콘텐츠와 일치하지 않습니다. 이 경우 IDP 탐지가 회피됩니다. HTTP 압축 콘텐츠에서 IDP 탐지 회피를 피하기 위해 프로토콜 컨텐츠의 압축을 해제하는 IDP 하위 구성요소가 추가되었습니다. 시그니처 패턴 매칭은 압축 해제된 컨텐츠에서 수행됩니다.

모든 IPS 카운터 값의 상태를 표시하려면 다음 명령을 입력합니다.

일부 공격은 압축된 콘텐츠를 통해 도입됩니다. 콘텐츠가 압축 해제되면 중요한 시스템 리소스를 차지하여 서비스 거부가 발생하는 매우 큰 크기로 팽창할 수 있습니다. 이러한 유형의 공격은 압축 해제된 데이터 크기와 압축된 데이터 크기 비율로 인식할 수 있습니다. 콘텐츠 압축 해제-비율-제한 카운터는 이 비율을 초과한 인시던트 수를 식별합니다. 기본 비율은 일반적인 환경과 일치하는 것으로 간주됩니다. 그러나 어떤 경우에는 값을 재설정 content-decompress-ratio-over-limit 하여 이 비율을 조정해야 할 수도 있습니다. 그러나 비율이 높을수록 이러한 유형의 공격을 탐지할 가능성이 줄어듭니다.

content-decompress-memory-over-limit 카운터는 압축 해제된 데이터의 양이 할당된 메모리를 초과하는 인시던트 수를 식별합니다. 기본 메모리 할당은 디압축이 필요한 평균 세션 수에 대해 세션당 33KB를 제공합니다. 이 값이 사용자 환경과 일치하는지 확인하려면 압축 해제 관련 카운터의 값과 디바이스를 통과하는 총 IDP 세션 수를 분석하고 동시에 압축 해제가 필요한 세션 수를 추정합니다. 각 세션에 압축 해제를 위해 33KB의 메모리가 필요하다고 가정하면 예상 요구 사항을 기본값과 비교합니다. 필요한 경우 값을 재설정하여 메모리 할당을 content-decompression-max-memory-kb 조정할 수 있습니다. 콘텐츠 압축 해제에는 상당한 메모리 할당이 필요하므로 시스템 성능은 감압에 대한 최대 메모리 할당을 늘려서 영향을 받습니다.

예: IDP 컨텐츠 압축 해제 구성

이 예는 IDP 콘텐츠 압축 해제를 구성하는 방법을 보여줍니다.

요구 사항

시작하기 전에 IDP 콘텐츠 압축 해제 기능을 검토하십시오. 콘텐츠 압축 해제 이해하기 참조

개요

압축 해제 기능은 기본적으로 비활성화됩니다. 이 예에서 탐지기를 활성화하고 최대 메모리를 50,000킬로바이트로 구성하며 최대 감압 비율을 16:1로 구성합니다.

참고:

감압을 활성화하면 디바이스의 성능이 저하됩니다.

구성

절차

단계별 절차

IDP 콘텐츠 압축 해제 구성 방법:

  1. 탐지기를 활성화합니다.

    참고:

    탐지기를 비활성화하려면 을(를 tunable‑value ) 0으로 설정합니다.

  2. 필요한 경우 최대 메모리를 킬로바이트 단위로 수정합니다.

  3. 필요한 경우 최대 감압 비율을 구성합니다.

  4. 디바이스 구성이 완료되면 구성을 커밋합니다.

확인

구성이 제대로 작동하는지 확인하려면 명령을 입력합니다 show security idp status ips . 콘텐츠 압축 해제 카운터는 압축 해제 처리에 대한 통계를 제공합니다.

IDP 서명 기반 공격 이해

사용자 지정 공격 객체를 구성하려면 고유한 이름을 지정한 다음 추가 정보를 지정하면 공격 객체를 더 쉽게 찾고 유지할 수 있습니다.

공격 객체 정의의 특정 속성은 공격 이름, 심각도 수준, 서비스 또는 애플리케이션 바인딩, 시간 바인딩, 프로토콜 또는 포트 바인딩과 같은 모든 유형의 공격에 공통적입니다. 일부 필드는 공격 유형에 따라 특정 공격 정의에 대해서만 사용할 수 있습니다.

서명 공격 객체는 스테이트풀 공격 시그니처(공격의 특정 섹션 내에 항상 존재하는 패턴)를 사용하여 알려진 공격을 탐지합니다. 또한 공격을 저지르는 데 사용되는 프로토콜 또는 서비스와 공격이 발생하는 컨텍스트도 포함합니다. 다음 속성은 서명 공격에 특정되어 있으며, 공격 컨텍스트, 공격 방향, 공격 패턴 및 프로토콜별 매개 변수(TCP, UDP, ICMP 또는 IP 헤더 필드)와 같은 서명 공격을 구성할 때 이를 구성할 수 있습니다.

서명 기반 공격을 구성할 때 다음 사항을 염두에 두십시오.

  • 공격 컨텍스트 및 방향은 서명 공격 정의에 필수적인 필드입니다.

  • 패턴 부정은 스트림 및 정규화된 스트림 컨텍스트가 아닌 패킷, 라인 및 애플리케이션 기반 컨텍스트에 대해서만 지원됩니다.

  • 프로토콜별 매개 변수를 구성할 때 IP, TCP, UDP 또는 ICMP와 같은 프로토콜 중 하나에 대해서만 필드를 지정할 수 있습니다.

  • 프로토콜 바인딩을 구성할 때 IP, ICMP, TCP, UDP, RPC 또는 애플리케이션 중 하나만 지정할 수 있습니다.

    • IP — 프로토콜 번호는 필수 필드입니다.

    • TCP 및 UDP - 단일 포트() 또는 포트 범위minimum-port(minimum-portmaximum-port) 중 하나를 지정할 수 있습니다. 포트를 지정하지 않으면 기본값이 적용됩니다(0-65535).

    • RPC - 프로그램 번호는 필수 필드입니다.

릴리스 19.1R1 Junos OS Hyperscan 확장 매개 변수를 사용하여 서명 기반 공격을 구성할 수 있습니다. Hyperscan 확장 매개 변수에 대한 최적의 값을 설정하면 공격 패턴 일치 프로세스를 크게 향상시킬 수 있습니다.

확장 매개 변수를 구성하려면 계층 수준에서 옵션을 [edit security idp custom-attack attack-name attack-type signature] 포함합니다optional-parameters. 옵션에서 다음 매개 변수를 optional-parameters 구성할 수 있습니다.

  • min-offset

  • max-offset

  • min-length

Hyperscan API의 간략한 작업 원칙 – Hyperscan은 고성능과 유연성을 제공하도록 설계된 소프트웨어 정규 표현식 매칭 엔진입니다. 패턴의 서명이 IDP 정책의 일부로 구성되면 패턴은 정규 표현식으로 식별됩니다. 라우팅 엔진 Hyperscan은 이 정규 표현식을 입력으로 사용하여 컴파일하여 패킷 전달 엔진 푸시되는 데이터베이스를 형성합니다. 패킷이 패킷 전달 엔진 들어가면 패킷의 데이터가 검사되어 데이터베이스를 사용하여 정규식과 일치하는지 확인합니다.

IDP 정책이 일련의 서명으로 구성된 경우, DFA(결정론적 한정자 자동화) 그룹이 형성됩니다. DFA 그룹의 모든 서명 패턴은 하이퍼스캔으로 전달되어 단일 데이터베이스를 형성할 수 있으며, 이를 사용하여 패킷의 모든 공격을 한 번에 확인할 수 있습니다. 각 공격에 대해 별도의 데이터베이스 대신 단일 데이터베이스가 사용되므로 패턴 일치 프로세스가 효율적입니다.

서명이 확장 매개 변수로 구성되면 구성된 매개 변수를 고려하여 Hyperscan API가 데이터베이스를 형성합니다. 패턴 일치 프로세스는 이 새 데이터베이스를 통해 패킷 전달 엔진 발생합니다. 이러한 매개 변수를 사용하면 패턴에 의해 생성된 일치 세트가 런타임에서 원치 않는 일치를 처리하기 위해 애플리케이션에 의존하기보다는 컴파일 시간에 제약을 받을 수 있습니다.

예: IDP 서명 기반 공격 구성

이 예는 서명 기반 공격 객체를 만드는 방법을 보여줍니다.

요구 사항

시작하기 전에 네트워크 인터페이스를 구성합니다.

개요

이 예에서 sig1이라는 서명 공격을 생성하여 다음 속성을 할당합니다.

  • 권장 조치(패킷 드롭) - 일치하는 패킷이 목적지에 도달하기 전에 드롭하지만 연결을 닫지는 않습니다.

  • 시간 바인딩 - 범위는 으로, 수는 으로 source 10지정합니다. 범위가 인 source경우, 동일한 소스의 모든 공격이 계산되고 공격 수가 지정된 수(10)에 도달하면 공격이 기록됩니다. 이 예에서는 동일한 소스의 모든 10번째 공격이 기록됩니다.

  • 공격 컨텍스트(패킷) - 패킷 내의 공격 패턴과 일치합니다.

  • 공격 방향(임의의) - 클라이언트-서버 및 서버-클라이언트 트래픽 등 양방향으로 공격을 감지합니다.

  • 프로토콜(TCP) - TTL 값 128을 지정합니다.

  • 쉘코드(Intel) - Intel 플랫폼의 쉘코드를 감지하는 플래그를 설정합니다.

  • 프로토콜 바인딩 - TCP 프로토콜 및 포트 50~100을 지정합니다.

서명 기반 공격 객체를 구성한 후에는 IDP 정책 규칙에서 공격을 일치 기준으로 지정합니다. 예: IDP IPS 규칙 베이스에 대한 규칙 정의 를 참조하십시오.

구성

절차

CLI 빠른 구성

이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브러브를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 변경한 다음 계층 수준에서 명령을 CLI [edit] 로 복사해 붙여 넣은 다음, 구성 모드에서 을(를) 입력합니다 commit .

단계별 절차

다음 예제에서는 구성 계층에서 다양한 수준의 탐색이 필요합니다. 이를 수행하는 방법에 대한 지침은 CLI 사용자 가이드의 구성 모드에서 CLI 편집기 사용을 참조하십시오.

서명 기반 공격 객체를 생성하려면 다음을 수행합니다.

  1. 공격의 이름을 지정합니다.

  2. 공격에 대한 공통 속성을 지정합니다.

  3. 공격 유형 및 컨텍스트를 지정합니다.

  4. 공격 방향과 쉘코드 플래그를 지정합니다.

  5. 프로토콜과 해당 필드를 설정합니다.

  6. 프로토콜 바인딩 및 포트를 지정합니다.

  7. 방향을 지정합니다.

결과

구성 모드에서 명령을 입력하여 구성을 확인합니다 show security idp . 출력에 의도한 구성이 표시되지 않으면 이 예의 구성 지침을 반복하여 수정합니다.

디바이스 구성이 완료되면 구성 모드에서 을(를) 입력합니다 commit .

확인

구성이 제대로 작동하는지 확인합니다.

구성 확인

목적

서명 기반 공격 객체가 생성되었는지 확인합니다.

작업

운영 모드에서 명령을 입력합니다 show security idp status .

IDP 프로토콜 이상 기반 공격 이해

프로토콜 이상 공격 객체는 프로토콜 사양(RFC 및 공통 RFC 확장)을 위반하는 알려지지 않거나 정교한 공격을 감지합니다. 새로운 프로토콜 이상을 만들 수는 없지만 감지될 때 디바이스가 사전 정의된 프로토콜 이상을 처리하는 방법을 제어하는 새로운 공격 개체를 구성할 수 있습니다.

다음 속성은 프로토콜 이상 공격에 따라 다릅니다.

  • 공격 방향

  • 테스트 조건

프로토콜 이상 기반 공격을 구성할 때 다음 사항을 염두에 두십시오.

  • 서비스 또는 애플리케이션 바인딩은 프로토콜 이상 공격에 대한 필수 필드입니다. 지원되는 애플리케이션 외에도 서비스에는 IP, TCP, UDP, ICMP 및 RPC도 포함됩니다.

  • 공격 방향 및 테스트 조건 속성은 이상 공격 정의를 구성하기 위한 필수 필드입니다.

예: IDP 프로토콜 이상 기반 공격 구성

이 예는 프로토콜 이상 기반 공격 객체를 생성하는 방법을 보여줍니다.

요구 사항

시작하기 전에 네트워크 인터페이스를 구성합니다.

개요

이 예에서 이상1이라는 프로토콜 이상 공격을 생성하여 다음 속성을 할당합니다.

  • 시간 바인딩 - 지정된 횟수에 대한 세션의 소스 및 대상 IP 주소 간의 이상 징후를 감지하기 위해 범위를 로 peer 지정하고 계산 2 합니다.

  • 심각도(정보) - 조건과 일치하는 모든 공격에 대한 정보를 제공합니다.

  • 공격 방향(임의의) - 클라이언트-서버 및 서버-클라이언트 트래픽 등 양방향으로 공격을 감지합니다.

  • 서비스(TCP) - TCP 서비스를 사용한 공격과 일치합니다.

  • 테스트 조건(OPTIONS_UNSUPPORTED) - 특정 사전 정의된 테스트 조건과 일치합니다. 이 예에서 공격은 지원되지 않는 옵션을 포함하는 경우 조건이 일치합니다.

  • 쉘코드(sparc) - Sparc 플랫폼의 쉘 코드를 감지하도록 플래그를 설정합니다.

프로토콜 이상 기반 공격 객체를 구성했으면 IDP 정책 규칙에서 공격을 일치 기준으로 지정합니다. 예: IDP IPS 규칙 베이스에 대한 규칙 정의 를 참조하십시오.

구성

절차

CLI 빠른 구성

이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브러브를 제거하고, 네트워크 구성을 일치하는 데 필요한 세부 사항을 변경한 다음 계층 수준에서 명령을 CLI [edit] 로 복사해 붙여 넣은 다음, 구성 모드에서 을(를) 입력합니다 commit .

단계별 절차

다음 예제에서는 구성 계층에서 다양한 수준의 탐색이 필요합니다. 이를 수행하는 방법에 대한 지침은 CLI 사용자 가이드의 구성 모드에서 CLI 편집기 사용을 참조하십시오.

프로토콜 이상 기반 공격 객체를 생성하려면 다음을 수행합니다.

  1. 공격의 이름을 지정합니다.

  2. 공격에 대한 공통 속성을 지정합니다.

  3. 공격 유형 및 테스트 조건을 지정합니다.

  4. 이상 공격에 대한 다른 속성을 지정합니다.

결과

구성 모드에서 명령을 입력하여 구성을 확인합니다 show security idp . 출력에 의도한 구성이 표시되지 않으면 이 예의 구성 지침을 반복하여 수정합니다.

디바이스 구성이 완료되면 구성 모드에서 을(를) 입력합니다 commit .

확인

구성이 제대로 작동하는지 확인하려면 다음 작업을 수행하십시오.

구성 확인

목적

프로토콜 이상 기반 공격 개체가 생성되었는지 확인합니다.

작업

운영 모드에서 명령을 입력합니다 show security idp status .

IDP 정책 구성 개요

Junos OS 침입 탐지 및 방지(IDP) 정책을 사용하면 IDP 지원 디바이스를 통과하는 네트워크 트래픽에 다양한 공격 탐지 및 방지 기술을 선택적으로 적용할 수 있습니다. 이를 통해 영역, 네트워크 및 애플리케이션에 기반한 트래픽 섹션과 일치하는 정책 규칙을 정의한 다음 해당 트래픽에 대해 능동적이거나 수동적인 예방 조치를 취할 수 있습니다.

IDP 정책은 디바이스가 네트워크 트래픽을 처리하는 방법을 정의합니다. 네트워크를 통과하는 트래픽에 다양한 공격 탐지 및 방지 기술을 적용할 수 있습니다.

정책은 규칙 베이스로 구성되며 각 규칙 베이스에는 규칙 집합이 포함되어 있습니다. 트래픽 일치 조건, 작업 및 로깅 요구 사항과 같은 규칙 매개 변수를 정의한 다음 규칙 베이스에 규칙을 추가합니다. 하나 이상의 규칙 베이스에 규칙을 추가하여 IDP 정책을 생성한 후 해당 정책을 디바이스에서 활성 정책으로 선택할 수 있습니다.

IDP 정책을 구성하려면 다음 단계를 수행합니다.

  1. 보안 정책에서 IDP를 활성화합니다.

  2. IDP 정책 규칙, IDP 규칙 베이스 및 IDP 규칙 작업을 구성합니다. 예: IDP 규칙 베이스에 규칙 삽입 , 예: IDP IPS 규칙 베이스에 대한 규칙 정의예: 보안 디바이스 주제에 대한 규칙 구성 및 적용 을 참조하십시오.

  3. IDP 사용자 지정 서명을 구성합니다. IDP 서명 기반 공격 이해예: IDP 서명 기반 공격 구성 주제를 참조하십시오.

  4. IDP 서명 데이터베이스를 업데이트합니다. IDP 서명 데이터베이스 업데이트 개요를 참조하십시오.

IPv6 비밀 채널 개요

비밀 채널은 무단 또는 불법적인 방식으로 기존 정보 채널을 통해 개체를 전송하여 정보 통신을 허용하는 공격 기법입니다. 공격자는 비밀 채널의 도움으로 네트워크에서 악의적인 활동을 수행할 수 있습니다.

Junos OS 릴리스 19.1R1부터는 침입 탐지 및 방지(IDP)에서 IPv6 확장 헤더에 대한 비밀 채널 식별 및 완화가 지원됩니다. 이는 기존 보안 시스템을 위반하는 정보의 전송입니다. IDP의 보안 패키지에는 IDP 정책에서 트래픽과 공격을 일치시키는 데 사용할 수 있는 비밀 채널을 위한 사전 정의된 IDP 공격 객체의 데이터베이스가 포함되어 있습니다.

이 지원의 일환으로, IPv6 확장 헤더 이상을 감지하고 플래그를 지정할 수 있으며, 이는 은밀한 채널을 설정하고 정책에 지정된 조치를 취할 수 있습니다. 비밀 채널 공격은 다른 공격과 함께 표시됩니다 Show security idp attack table .

릴리스 기록 테이블
릴리스
설명
18.4R1
릴리스 18.4R1 Junos OS 시작하여 사용자 정의 공격을 바인딩하는 시간의 두 인스턴스 간에 최대 시간 간격을 구성할 수 있으며 최대 시간 간격의 범위는 0분 및 0초에서 60분 및 0초입니다. 18.4R1 이전의 Junos OS 릴리스에서 시간 바인딩 공격의 두 인스턴스 간의 최대 시간 간격은 60초이며, 공격 트리거 수는 시간 바인딩에서 구성된 수에 도달합니다. interval interval-value 명령문은 사용자 정의 시간 바인딩을 [edit security idp custom-attack attack-name time-binding] 구성하기 위해 계층에서 도입됩니다.
15.1X49-D140
Junos OS 릴리스 15.1X49-D140부터 사용자 지정 공격 객체 이름에 허용되는 최대 문자 수는 60개입니다. 명령을 사용하여 set security idp custom-attack 문을 확인할 수 있습니다.