이 페이지의 내용
침입 탐지 및 방지(IDP) 정책에 대한 공격 객체 및 객체 그룹
공격 객체, 애플리케이션 시그니처 객체 및 서비스 객체는 침입 탐지 및 방지(IDP) 정책 규칙을 정의하는 데 사용됩니다. 새로운 취약점에 대응하기 위해 주니퍼 네트웍스는 공격 데이터베이스 업데이트가 포함된 파일을 주니퍼 웹 사이트에 주기적으로 제공하고 있습니다. 이 파일을 다운로드하여 새로운 위협으로부터 네트워크를 보호할 수 있습니다. 이러한 공격 객체 및 그룹은 네트워크 트래픽 내에서 알려진 공격 패턴과 프로토콜 이상을 탐지하도록 설계되었습니다. 침입 탐지 및 방지(IDP) 정책 규칙의 일치 조건으로 공격 객체 및 그룹을 구성할 수 있습니다.
자세한 내용은 다음 항목을 참조하세요.
알려지거나 알려지지 않은 취약점을 해결하기 위한 당사의 접근 방식 이해
이 항목에는 다음 섹션이 포함되어 있습니다.
알려진 취약점
알려진 취약점은 인터넷 보안 커뮤니티에 문서화된 취약점입니다. 인터넷 보안 커뮤니티는 여러 보안 조직, 보안 분석가 및 보안 포럼으로 구성됩니다. 보안 커뮤니티는 지속적으로 새로운 공격을 발견 및 분석하고 인터넷을 통해 이 정보를 교환합니다. 이러한 방식으로 공격을 신속하게 찾고, 식별하고, 진정으로 이해할 수 있습니다.
일부 보안 권고에는 실제 공격 코드가 포함되어 있습니다. 공격 정보 및 공격 코드를 사용하여 패킷 정보 및 서비스 컨텍스트를 캡처할 수 있습니다. 이 정보를 사용하여 사용자 지정 서명 공격 객체를 생성할 수 있습니다.
안타깝게도 대부분의 권고는 공격 설명과 함께 공격 코드를 게시하지 않습니다. 공격 코드를 얻을 수 없는 경우 공지를 주의 깊게 읽고 공격 패킷의 기본 사항을 재구성해 보십시오.
알 수 없는 소스에서 가져온 코드를 격리해야 합니다.
다음 조직은 보안 커뮤니티에서 활발히 활동하며 공격 정보를 찾는 데 유용한 리소스입니다.
NVD - 국가 취약성 데이터베이스(http://nvd.nist.gov). SCAP(Security Content Automation Protocol)를 사용하여 표시되는 취약성 관리 데이터의 미국 정부 리포지토리입니다.
SANS - SysAdmin, Audit, Network, Security Institute(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) 보안 이벤트 로그가 의심스러운 활동 및 비정상적인 트래픽에 대해 경고합니다. 프로덕션 환경에서는 패킷 로깅 도구를 사용하여 패킷 및 서비스 컨텍스트 정보를 캡처하고 나중에 랩에서 분석하고 실험할 수 있습니다.
사용자 지정 공격 객체 테스트
사용자 지정 공격 객체를 테스트하기 위해 다음 워크플로를 사용하는 것이 좋습니다. 다음 절차는 일반적인 단계로 구성되어 있으며 이러한 작업에 익숙한 전문 사용자를 위한 것입니다.
사용자 지정 공격 객체를 테스트하려면 다음을 수행합니다.
- 테스트할 사용자 지정 공격 객체만 포함하는 새 보안 정책 및 새 침입 탐지 및 방지(IDP) 규칙 기반 규칙을 생성합니다. 로깅 및 패킷 로깅을 활성화합니다.
- 정책을 침입 탐지 및 방지(IDP) 시리즈 랩 디바이스로 푸시합니다.
- 공격자 컴퓨터에서 피해자 컴퓨터를 대상으로 하는 공격을 재현합니다.
- Security Director 로그 뷰어를 사용하여 트래픽이 예상대로 로그를 생성했는지 확인합니다.
테스트가 실패하면 공격 권고, 프로토콜 RFC, 공격 코드 또는 패킷 캡처를 검토하여 설정을 미세 조정하는 데 도움이 될 수 있는 추가 정보를 식별합니다. 조정이 필요한 가장 빈번한 문제는 DFA 표현식의 구문입니다.
시그니처 공격 객체 생성
시그니처 공격 객체는 시스템이 탐지할 패턴입니다. DFA 표현식을 사용하여 패턴을 나타냅니다. 설정할 수 있는 다른 모든 시그니처 속성(예: 서비스 또는 프로토콜 컨텍스트, 방향 및 기타 제약 조건)이 제공되므로 패턴을 탐지하고 오탐을 제거하는 데 있어 시스템의 성능을 최적화할 수 있습니다. 일반적으로, 시그니처 공격 객체의 설정을 조정하여 시스템이 공격 대상이 발생할 수 있는 모든 컨텍스트에서 해당 객체를 찾고 다른 컨텍스트에서는 찾지 않도록 하려고 합니다.
시그니처 공격 객체를 구성하려면 다음을 수행합니다.
사전 정의된 침입 탐지 및 방지(IDP) 공격 객체 및 객체 그룹 이해
침입 탐지 및 방지(IDP)용 보안 패키지에는 알려진 공격과 알려지지 않은 공격에 대한 트래픽을 일치시키기 위해 침입 탐지 및 방지(IDP) 정책에서 사용할 수 있는 사전 정의된 침입 탐지 및 방지(IDP) 공격 객체 그룹의 데이터베이스가 포함되어 있습니다. 주니퍼 네트웍스는 새롭게 발견된 공격 패턴으로 사전 정의된 공격 객체 및 그룹을 정기적으로 업데이트합니다.
공격 객체 데이터베이스에 대한 업데이트에는 다음이 포함될 수 있습니다.
기존 공격 객체에 대한 새로운 설명 또는 심각도
새로운 공격 객체
사용되지 않는 공격 객체 삭제
이 항목에는 다음 섹션이 포함되어 있습니다.
사전 정의된 공격 객체
사전 정의된 공격 객체는 알파벳 순으로 나열됩니다. 이러한 공격 객체에는 공격을 식별하는 데 도움이 되는 고유한 이름이 있습니다. 이름의 첫 부분은 공격 객체가 속한 그룹을 나타냅니다. 예를 들어:
FTP:USER:ROOT
- 그룹에 속합니다FTP:USER
. 계정을 사용하여 FTP 서버에 로그인하려는 시도를 감지합니다root
.HTTP:HOTMAIL:FILE-UPLOAD
- 그룹에 속합니다HTTP:HOTMAIL
. 웹 기반 이메일 서비스를Hotmail
통해 전송된 이메일에 첨부된 파일을 감지합니다.
사전 정의된 공격 객체 그룹
사전 정의된 공격 그룹 목록에는 아래에 설명된 범주의 공격 객체가 표시됩니다. 주니퍼 네트웍스가 심각한 위협으로 간주하는 권장 공격 객체 집합도 이 목록에서 확인할 수 있습니다. 권장 공격 객체는 다음과 같은 범주로 구성됩니다.
공격 객체 그룹 |
묘사 |
---|---|
공격 유형 |
그룹은 유형(이상 또는 시그니처)별로 객체를 공격합니다. 각 유형 내에서 공격 객체는 심각도에 따라 그룹화됩니다. |
범주 |
그룹은 사전 정의된 범주별로 객체를 공격합니다. 각 범주 내에서 공격 객체는 심각도에 따라 그룹화됩니다. |
운영 체제 |
그룹은 적용되는 운영 체제(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: 지원되는 프로토콜 및 프로토콜 번호 프로토콜 이름
프로토콜 번호
증권 시세 표시기
2
IP-IP
4
증권 시세 표시기
8
강아지
12
휴지
29
IPV6
41
라우팅
43
조각
44
증권 시세 표시기
46
GRE
47
증권 시세 표시기
50
아
51
ICMPV6
58
없음
59
디스토프트
60
증권 시세 표시기
92
캡슐화
98
핌(PIM)
103
광고
108
날것의
255
ICMP, TCP 및 UDP - 특정 서비스를 사용하지 않는 공격은 특정 포트를 사용하여 네트워크를 공격할 수 있습니다. 일부 TCP 및 UDP 공격은 표준 포트를 사용하여 네트워크에 진입하고 연결을 설정합니다.
RPC - 원격 프로시저 호출(RPC) 프로토콜은 분산 처리 애플리케이션에서 프로세스 간의 상호 작용을 원격으로 처리하는 데 사용됩니다. 클라이언트가 RPC 서버에 대한 원격 프로시저 호출을 하면 서버는 원격 프로그램으로 응답합니다. 각 원격 프로그램은 다른 프로그램 번호를 사용합니다. RPC를 사용하는 공격을 탐지하려면 서비스 바인딩을 RPC로 구성하고 RPC 프로그램 ID를 지정합니다.
표 12 에는 주요 프로토콜의 샘플 형식이 표시되어 있습니다.
프로토콜 이름 |
프로토콜 번호 |
묘사 |
---|---|---|
증권 시세 표시기 |
|
프로토콜 이름을 지정합니다. |
IP (영어) |
|
네트워크 계층 프로토콜 번호를 지정합니다. |
RPC (영문) |
|
RPC 프로그램 번호를 지정합니다. |
TCP 또는 UDP |
|
포트 지정은 TCP 및 UDP 프로토콜의 경우 선택 사항입니다. 예를 들어 다음 중 하나를 지정할 수 있습니다.
|
시간 바인딩
시간 바인딩을 사용하여 시간 바인딩 사용자 지정 공격 객체에 대한 시간 속성을 구성합니다. 시간 속성은 공격 객체가 특정 횟수만큼 반복되는 공격을 식별하는 방법을 제어합니다. 공격의 범위와 횟수를 구성하면 여러 세션에서 일정 기간 동안 동일한 공격의 시퀀스를 탐지할 수 있습니다.
Junos OS 릴리스 18.4R1부터 시간 바인딩 사용자 지정 공격의 두 인스턴스 간에 최대 시간 간격을 구성할 수 있으며 최대 시간 간격의 범위는 0분 0초에서 60분 0초입니다. 18.4R1 이전의 Junos OS 릴리스에서는 공격 트리거 수가 시간 바인딩에 구성된 수에 도달하기 위해 시간 바인딩 공격의 두 인스턴스 간 최대 시간 간격은 60초입니다. 명령문은 interval interval-value
사용자 지정 시간 바인딩을 [edit security idp custom-attack attack-name time-binding]
구성하기 위해 계층에 도입됩니다.
범위
공격 횟수가 발생하는 범위를 지정합니다.
Source(소스) - 대상 주소에 관계없이 지정된 횟수만큼 소스 주소에서 오는 공격을 탐지하려면 이 옵션을 지정합니다. 즉, 지정된 공격에 대해 소스 주소의 각 공격에 대해 임계값이 유지됩니다. 대상 주소는 무시됩니다. 예를 들어, 소스 주소는
ip-a
같지만 대상 주소가ip-b
다른 두 개의 서로 다른 쌍 (ip-a
,ip-b
) 및 (ip-a
,ip-c
)에서 이상 징후가ip-c
감지됩니다. 그런 다음 증분2
에 대한ip-a
일치 항목 수를 . 임계값 또는 count 이 2로 설정되었다고 가정하면 서명이 공격 이벤트를 트리거합니다.Destination(대상) - 소스 주소에 관계없이 지정된 횟수만큼 대상 주소로 전송된 공격을 탐지하려면 이 옵션을 지정합니다. 즉, 지정된 공격에 대해 대상 주소의 각 공격에 대해 임계값이 유지됩니다. 소스 주소는 무시됩니다. 예를 들어, 대상 주소는
ip-b
같지만 소스 주소가ip-a
다른 두 개의 서로 다른 쌍 (ip-a
,ip-b
) 및 (ip-c
,ip-b
)에서 이상이 감지되는 경우, 그리고ip-c
. 그런 다음 증분2
에 대한ip-b
일치 항목 수를 . 임계값 또는 count 도 로2
설정되어 있다고 가정하면, 시그니처가 공격 이벤트를 트리거합니다.Peer(피어) - 지정된 횟수만큼 세션의 소스 및 대상 IP 주소 간의 공격을 탐지하려면 이 옵션을 지정합니다. 이는 임계값이 소스 및 대상 주소 쌍에 적용될 수 있음을 의미합니다. 두 개의 서로 다른 소스 및 대상 쌍 (
ip-a
,ip-b
) 및 (ip-a
,ip-c
)에서 이상이 탐지되었다고 가정해 보겠습니다. 그런 다음 두 쌍 모두 공통 소스 주소를 가지고 있더라도 각 쌍에 대한 일치 항목 수는 로 설정됩니다1
.
세다
개수 또는 임계값은 디바이스가 공격 객체가 공격과 일치하는 것으로 간주하기 전에 공격 객체가 지정된 범위 내에서 공격을 탐지해야 하는 횟수를 지정합니다. 공격 객체를 여러 포트에 바인딩하고 공격 객체가 다른 포트에서 해당 공격을 탐지하면 각 포트에 대한 각 공격은 별도의 발생으로 계산됩니다. 예를 들어, 공격 객체가 에 TCP/80
대한 공격을 탐지한 다음 에 대한 TCP/8080
공격을 탐지하면 카운트는 2입니다.
count
일치 항목에 도달하면 기준과 일치하는 각 공격으로 인해 공격 횟수가 하나씩 증가합니다. 이 카운트 주기는 사용자 정의 기간(옵션을 사용하여 interval
구성) 동안 지속되며, 그 후 주기가 반복됩니다.
간
간격은 시간 바인딩 사용자 지정 공격의 두 인스턴스 사이의 최대 시간 간격을 지정합니다. 시간 간격의 범위는 0초에서 1시간까지이며 기본값은 60초입니다.
공격 속성(시그니처 공격)
시그니처 공격 객체는 상태 저장 공격 시그니처(공격의 특정 섹션 내에 항상 존재하는 패턴)를 사용하여 알려진 공격을 탐지합니다. 또한 공격을 저지르는 데 사용되는 프로토콜 또는 서비스와 공격이 발생하는 컨텍스트도 포함됩니다. 다음 속성은 서명 공격과 관련이 있으며 서명 공격을 구성할 때 구성할 수 있습니다.
공격 컨텍스트, 플로우 유형 및 방향은 시그니처 공격 정의의 필수 필드입니다.
공격 컨텍스트
공격 컨텍스트는 시그니처의 위치를 정의합니다. 서비스 및 특정 서비스 컨텍스트를 알고 있는 경우 해당 서비스를 지정한 다음 적절한 서비스 컨텍스트를 지정합니다. 서비스를 알고 있지만 특정 서비스 컨텍스트를 잘 모르는 경우 다음과 같은 일반 컨텍스트 중 하나를 지정합니다.
first-data-packet
- 첫 번째 데이터 패킷에서만 공격을 탐지하려면 이 컨텍스트를 지정합니다.first-packet
- 스트림의 첫 번째 패킷에서만 공격을 탐지하려면 이 컨텍스트를 지정합니다. 공격 객체의 흐름 방향이 로any
설정되면, 디바이스는 서버-클라이언트 및 클라이언트-서버 흐름 모두의 첫 번째 패킷을 확인합니다. 공격 시그니처가 세션의 첫 번째 패킷에 나타나는 것을 알고 있는 경우, 대신 을packet
(를) 선택하면first 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바이트에 나타난다는 것을 알고 있는 경우, 대신stream
을(를) 선택하면stream1024
디바이스가 모니터링하고 캐싱해야 하는 트래픽 양이 줄어들어 성능이 향상됩니다.stream8k
- 패킷을 리어셈블하고 트래픽 스트림의 처음 8192바이트 내에서 패턴 일치를 검색하려면 이 컨텍스트를 지정합니다. 흐름 방향이 로 설정any
되면, 디바이스는 서버-클라이언트 및 클라이언트-서버 흐름 모두의 처음 8192바이트를 확인합니다. 공격 시그니처가 세션의 첫 8192바이트에 나타난다는 것을 알고 있는 경우, 대신stream
을(를) 선택하면stream8192
디바이스가 모니터링하고 캐시해야 하는 트래픽 양이 줄어들어 성능이 향상됩니다.
공격 방향
공격의 연결 방향을 지정할 수 있습니다. ( 대신 Any
) 단일 방향을 사용하면 성능이 향상되고, 오탐이 감소하며, 탐지 정확도가 높아집니다.
클라이언트-서버(클라이언트-서버 트래픽에서만 공격 탐지)
서버 대 클라이언트(서버 대 클라이언트 트래픽에서만 공격 탐지)
임의(어느 방향으로든 공격 탐지)
공격 패턴
공격 패턴은 탐지하려는 공격의 시그니처입니다. 시그니처는 공격 내에 항상 존재하는 패턴입니다. 공격이 존재하면 시그니처도 존재합니다. 공격 패턴을 만들려면 먼저 공격을 분석하여 패턴(예: 코드 세그먼트, URL 또는 패킷 헤더의 값)을 감지한 다음 해당 패턴을 나타내는 구문 표현식을 만들어야 합니다. 패턴을 부정할 수도 있습니다. 패턴을 부정한다는 것은 공격에 정의된 패턴이 지정된 패턴과 일치할 경우 공격이 일치하는 것으로 간주됨 not 을 의미합니다.
패턴 부정은 패킷, 라인 및 애플리케이션 기반 컨텍스트에서만 지원되며 스트림 및 정규화된 스트림 컨텍스트에서는 지원되지 않습니다.
프로토콜별 매개 변수
패킷 헤더 내에 존재하는 특정 값과 옵션을 지정합니다. 이러한 매개 변수는 프로토콜마다 다릅니다. 사용자 지정 공격 정의에서 TCP, UDP 또는 ICMP 프로토콜 중 하나에 대해서만 필드를 지정할 수 있습니다. 그러나 사용자 지정 공격 정의에서 TCP 또는 UDP를 사용하여 IP 프로토콜 필드를 정의할 수 있습니다.
헤더 파라미터는 패킷 또는 첫 번째 패킷 컨텍스트를 사용하는 공격 객체에 대해서만 정의할 수 있습니다. 줄, 스트림, 스트림 256 또는 서비스 컨텍스트를 지정한 경우 헤더 매개 변수를 지정할 수 없습니다.
악성 패킷에 대한 옵션이나 플래그 설정을 잘 모를 경우 모든 필드를 비워 두면 침입 탐지 및 방지(IDP)가 모든 헤더 내용의 서명과 일치시키려고 시도합니다.
표 13 에는 IP 프로토콜을 사용하는 공격에 대해 설정할 수 있는 필드와 플래그가 표시되어 있습니다.
밭 |
묘사 |
---|---|
서비스 유형 |
서비스 유형에 대한 값을 지정합니다. 일반적인 서비스 유형은 다음과 같습니다.
|
총 길이 |
모든 헤더 필드와 데이터 페이로드를 포함한 패킷의 바이트 수에 대한 값을 지정합니다. |
아이디 |
단편화된 패킷을 리어셈블하기 위해 대상 시스템에서 사용하는 고유한 값의 값을 지정합니다. |
Time to Live |
패킷의 TTL(Time-to-Live) 값에 대해 0–255 범위의 정수 값을 지정합니다. 이 값은 패킷이 통과할 수 있는 디바이스 수를 나타냅니다. 패킷을 처리하는 각 라우터는 TTL |
프로토콜 |
사용되는 프로토콜의 값을 지정합니다. |
근원 |
공격 디바이스의 소스 주소를 입력합니다. |
목적지 |
공격 대상의 대상 주소를 입력합니다. |
예약 비트 |
이 비트는 사용되지 않습니다. |
더 많은 조각 |
()로 설정되면, |
조각화하지 마십시오 |
()로 설정하면, |
표 14 에는 TCP 프로토콜을 사용하는 공격에 대해 설정할 수 있는 패킷 헤더 필드와 플래그가 표시되어 있습니다.
밭 |
묘사 |
---|---|
소스 포트 |
공격 디바이스의 포트 번호 값을 지정합니다. |
목적지 포트 |
공격 대상의 포트 번호에 대한 값을 지정합니다. |
시퀀스 번호 |
패킷의 시퀀스 번호 값을 지정합니다. 이 번호는 전체 데이터 시퀀스와 관련된 데이터의 위치를 식별합니다. |
ACK 번호 |
패킷의 ACK 번호 값을 지정합니다. 이 번호는 다음 시퀀스 번호를 식별합니다. 이 필드를 활성화하려면 ACK 플래그를 설정해야 합니다. |
헤더 길이 |
TCP 헤더의 바이트 수에 대한 값을 지정합니다. |
데이터 길이 |
데이터 페이로드의 바이트 수에 대한 값을 지정합니다. SYN, ACK 및 FIN 패킷의 경우 이 필드는 비어 있어야 합니다. |
창 크기 |
TCP 창 크기의 바이트 수에 대한 값을 지정합니다. |
긴급 포인터 |
긴급 포인터의 값을 지정합니다. 값은 패킷의 데이터가 긴급함을 나타냅니다. 이 필드를 활성화하려면 URG 플래그를 설정해야 합니다. |
우르 |
긴급 플래그를 설정하면 패킷 데이터가 긴급함을 나타냅니다. |
증권 시세 표시기 |
설정하면 승인 플래그가 패킷 수신을 승인합니다. |
증권 시세 표시기 |
푸시 플래그를 설정하면, 수신자가 시퀀스의 나머지 패킷을 기다리지 않고 현재 시퀀스의 모든 데이터를 대상 애플리케이션(포트 번호로 식별)으로 푸시해야 함을 나타냅니다. |
증권 시세 표시기 |
설정하면 재설정 플래그가 TCP 연결을 재설정하여 기존 시퀀스의 모든 패킷을 삭제합니다. |
증권 시세 표시기 |
설정된 경우 SYN 플래그는 새 세션에 대한 요청을 나타냅니다. |
지느러미 |
설정하면 최종 플래그는 패킷 전송이 완료되고 연결을 닫을 수 있음을 나타냅니다. |
R1 |
이 예약된 비트(1/2)는 사용되지 않습니다. |
R2 |
이 예약된 비트(2/2)는 사용되지 않습니다. |
표 15 에는 UDP 프로토콜을 사용하는 공격에 대해 설정할 수 있는 패킷 헤더 필드와 플래그가 표시되어 있습니다.
밭 |
묘사 |
---|---|
소스 포트 |
공격 디바이스의 포트 번호 값을 지정합니다. |
목적지 포트 |
공격 대상의 포트 번호에 대한 값을 지정합니다. |
데이터 길이 |
데이터 페이로드의 바이트 수에 대한 값을 지정합니다. |
표 16 에는 ICMP 프로토콜을 사용하는 공격에 대해 설정할 수 있는 패킷 헤더 필드와 플래그가 표시되어 있습니다.
밭 |
묘사 |
---|---|
ICMP 유형 |
요청 또는 응답 패킷의 기능을 식별하는 기본 코드의 값을 지정합니다. |
ICMP 코드 |
주어진 유형 내에서 요청 또는 응답 패킷의 기능을 식별하는 보조 코드에 대한 값을 지정하십시오. |
시퀀스 번호 |
패킷의 시퀀스 번호 값을 지정합니다. 이 번호는 전체 시퀀스와 관련하여 요청 또는 응답 패킷의 위치를 식별합니다. |
ICMP 아이디 |
식별 번호에 대한 값을 지정합니다. 식별 번호는 대상 시스템에서 요청 및 응답 패킷을 연결하는 데 사용하는 고유 값입니다. |
데이터 길이 |
데이터 페이로드의 바이트 수에 대한 값을 지정합니다. |
샘플 시그니처 공격 정의
다음은 샘플 시그니처 공격 정의입니다.
<Entry> <Name>sample-sig</Name> <Severity>Major</Severity> <Attacks><Attack> <TimeBinding><Count>2</Count> <Scope>dst</Scope></TimeBinding> <Application>FTP</Application> <Type>signature</Type> <Context>packet</Context> <Negate>true</Negate> <Flow>Control</Flow> <Direction>any</Direction> <Headers><Protocol><Name>ip</Name> <Field><Name>ttl</Name> <Match>==</Match><Value>128</Value></Field> </Protocol><Name>tcp</Name> <Field><Name><Match><</Match> <value>1500</Value> </Field></Protocol></Headers> </Attack></Attacks> </Entry>
공격 속성(프로토콜 이상 공격)
프로토콜 이상 공격 객체는 프로토콜 사양(RFC 및 일반적인 RFC 확장)을 위반하는 알려지지 않았거나 정교한 공격을 탐지합니다. 새로운 프로토콜 변칙을 생성할 수는 없지만, 탐지 시 디바이스가 사전 정의된 프로토콜 변칙을 처리하는 방법을 제어하는 새로운 공격 객체를 구성할 수 있습니다.
서비스 또는 응용 프로그램 바인딩은 프로토콜 이상 공격에 대한 필수 필드입니다.
다음 속성은 프로토콜 이상 공격과 관련이 있습니다. 공격 방향과 테스트 조건은 모두 변칙 공격 정의를 구성하기 위한 필수 필드입니다.
공격 방향
공격 방향을 사용하면 공격의 연결 방향을 지정할 수 있습니다. (대신 Any
) 단일 방향을 사용하면 성능이 향상되고, 오탐이 감소하며, 탐지 정확도가 향상됩니다.
클라이언트-서버(클라이언트-서버 트래픽에서만 공격 탐지)
서버 대 클라이언트(서버 대 클라이언트 트래픽에서만 공격 탐지)
임의(어느 방향으로든 공격 탐지)
테스트 조건
테스트 조건은 변칙 공격에 대해 일치시켜야 하는 조건입니다. 주니퍼 네트웍스는 사전 정의된 특정 테스트 조건을 지원합니다. 다음 예제에서 조건은 너무 긴 메시지입니다. 메시지 크기가 이 테스트 조건에 대해 미리 구성된 값보다 길면 공격이 일치합니다.
<Attacks> <Attack> <Type>anomaly</Type> ... <Test>MESSAGE_TOO_LONG</Test> <Value>yes</Value> ... </Attack> </Attacks>
샘플 프로토콜 변칙 공격 정의
다음은 프로토콜 변칙 공격 정의 샘플입니다.
<Entry> <Name>sample-anomaly</Name> <Severity>Info</Severity> <Attacks><Attack> <TimeBinding><Count>2</Count> <Scope>peer</Scope></TimeBinding> <Application>TCP</Application> <Type>anomaly</Type> <Test>OPTIONS_UNSUPPORTED</Test> <Direction>any</Direction> </Attack></Attacks> </Entry>
공격 속성(복합 또는 연쇄 공격)
복합 또는 연쇄 공격 객체는 여러 가지 방법을 사용하여 취약점을 악용하는 공격을 탐지합니다. 이 객체는 여러 시그니처 및/또는 프로토콜 이상을 단일 공격 객체로 결합하여, 트래픽이 공격으로 식별되기 전에 트래픽이 복합 공격 객체 내에서 결합된 시그니처 및 이상 패턴과 일치하도록 합니다. 시그니처 또는 이상이 일치해야 하는 순서를 조합하고 지정함으로써 디바이스가 트래픽을 공격으로 식별하기 전에 수행해야 하는 이벤트에 대해 매우 구체적으로 파악할 수 있습니다.
복합 공격에서 최소 2개의 멤버(공격)를 지정해야 합니다. 복합 공격에서 최대 32개의 멤버를 지정할 수 있습니다. 멤버는 시그니처 또는 이상 공격이 될 수 있습니다.
다음 속성은 복합 공격과 관련이 있습니다.
범위
범위를 사용하면 공격이 세션 내에서 일치하는지 또는 세션의 트랜잭션 간에 일치하는지 여부를 지정할 수 있습니다. 지정된 서비스가 단일 세션 내에서 여러 트랜잭션을 지원하는 경우 단일 세션에서 일치가 발생해야 하는지 또는 세션 내의 여러 트랜잭션에서 수행될 수 있는지 여부를 지정할 수도 있습니다.
동일한 세션 내에서 객체에 대해 여러 일치 항목을 허용하려면 지정합니다 session .
동일한 세션 내에서 발생하는 여러 트랜잭션에서 개체를 일치시키도록 지정합니다 transaction .
주문
순서가 지정된 일치를 사용하여 지정한 순서대로 각 멤버 서명 또는 프로토콜 이상을 일치시켜야 하는 복합 공격 객체를 생성합니다. 정렬된 일치를 지정하지 않으면 복합 공격 객체는 여전히 모든 멤버와 일치해야 하지만 공격 패턴 또는 프로토콜 이상이 공격에 무작위 순서로 나타날 수 있습니다.
재설정
동일한 세션 내에서 공격이 탐지될 때마다 새 로그가 생성되도록 지정합니다. 이 필드가 로 no
설정된 경우 공격은 세션에 대해 한 번만 기록됩니다.
식(부울 식)
Boolean 표현식 필드를 사용하면 정렬된 일치 함수가 비활성화됩니다. Boolean 식 필드는 멤버 이름 또는 멤버 인덱스 속성을 사용합니다. 다음 세 개의 부울 연산자는 괄호와 함께 지원되며, 이는 우선 순위를 결정하는 데 도움이 됩니다.
or
- 멤버 이름 패턴 중 하나가 일치하면 표현식이 일치합니다.and
- 두 멤버 이름 패턴이 모두 일치하면 표현식이 일치합니다. 멤버가 어떤 순서로 나타나는지는 중요하지 않습니다.oand (ordered and)
- 두 멤버 이름 패턴이 모두 일치하고 Boolean 표현식에 지정된 순서대로 나타나면 표현식이 일치합니다.
-s5
라는 레이블이 지정된 5개의 서명 멤버를 만들었다고 가정해 s1
보겠습니다. 공격에 항상 패턴 s1
이 포함되어 있고 그 뒤에 또는 s2
가 s3
온다고 가정해 보겠습니다. 또한 공격에는 항상 및 이(가s5
) 포함 s4
되지만 공격에서의 위치는 다를 수 있습니다. 이 경우 다음과 같은 부울 식을 만들 수 있습니다.
((s1 oand s2) or (s1 oand s3)) and (s4 and s5)
사용자 지정 공격 정의에서 정렬된 일치 또는 표현식(둘 다 아님)을 정의할 수 있습니다.
회원 색인
구성원 인덱스는 구성원(공격)을 고유하게 식별하기 위해 연쇄 공격에 지정됩니다. 다음 예제에서 멤버 인덱스는 멤버 m01
와 m02
정의된 표현식을 식별하는 데 사용됩니다.
<Expression>m02 AND m01</Expression> <Order>no</Order> <Reset>no</Reset> <ScopeOption/> <Members> <Attack> <Member>m01</Member> <Type>Signature</Type> ... <Pattern><!CDATA[.*/getlatestversion]]></Pattern> <Regex/> </Attack> <Attack><Member>m02</Member> <Type>Signature</Type> ... <Pattern><!CDATA[\[Skype\'.*]]></Pattern> <Regex/> </Attack> <Attack>
식을 정의할 때 모든 멤버에 대한 멤버 인덱스를 지정해야 합니다.
샘플 복합 공격 정의
다음은 복합 공격 정의의 샘플입니다.
<Entry> <Name>sample-chain</Name> <Severity>Critical</Severity> <Attacks><Attack> <Application>HTTP</Application> <Type>Chain</Type> <Order>yes</Order> <Reset>yes</Reset> <Members><Attack> <Type>Signature</Type> <Context>packet</Context> <Pattern><![CDATA[Unknown[]></Pattern> <Flow>Control</Flow> <Direction>cts</Direction> </Attack><Attack> <Type>anomaly</Type> <Test>CHUNK_LENGTH_OVERFLOW</Test> <Direction>any</Direction> </Attack></Members> </Attack></Attacks> </Entry>
복합 공격 객체 생성
다음과 같은 경우 복합 공격 객체를 사용합니다.
공격은 여러 가지 방법을 사용하여 취약성을 악용하며, 개별 컨텍스트를 독립적으로 검사하면 무해한 것으로 보입니다.
여러 컨텍스트를 일치시키면 오탐이 줄어듭니다.
시그니처를 프로토콜 이상과 결합하면 오탐을 줄일 수 있습니다.
시그니처 공격 객체 또는 사전 정의된 이상 징후를 복합 객체의 "멤버"로 선택하고 부울 표현식을 사용하여 일치하는 로직을 지정합니다.
복합 공격 객체를 구성하려면 다음을 수행합니다.
또한보십시오
시그니처 업데이트에 도입된 변경 사항으로 인한 사용자 지정 공격 객체 수정
이 항목에서는 HTTP 프로토콜 디코더에서 생성된 일부 서비스 컨텍스트의 변경 내용에 대해 설명합니다. 서명 업데이트 #1972부터 HTTP 프로토콜 디코더는 더 이상 일부 컨텍스트를 생성하지 않습니다. 침입 탐지 및 방지(IDP) 보안 정책에 제거된 컨텍스트를 사용하는 사용자 지정 서명이 포함된 경우, 정책 컴파일 오류를 방지하기 위해 아래에 설명된 대로 공격 객체 정의를 수정해야 합니다. 이 항목에는 다음 정보가 포함됩니다.
참조: 제거된 컨텍스트
성능 향상을 위해 HTTP 프로토콜 디코더는 더 이상 표 19의 첫 번째 열에 나열된 컨텍스트를 생성하지 않습니다. 이 표에서 사용자 지정 공격 객체의 컨텍스트 교체에 대한 지침을 검토하십시오.
제거 |
대치할 내용 |
지침 |
---|---|---|
http-텍스트-html-본문 |
http-텍스트-html |
컨텍스트 http-text-html-body를 사용하는 서명을 http-text-html로 변경합니다. 서명 패턴이나 다른 속성을 변경할 필요가 없습니다. |
|
다음 컨텍스트의 조합을 사용합니다.
|
부울 AND와 함께 복합 서명을 사용하여 서명 패턴을 여러 조각으로 나눕니다. 범위 필드가 트랜잭션으로 설정되어 있는지 확인합니다. http-request-method 컨텍스트 사용은 선택 사항입니다. http-request-method 컨텍스트를 사용하여 검색을 http GET 또는 POST 또는 HEAD 트랜잭션에 바인딩합니다. GET 메서드의 경우 \[GET\](대소문자를 구분하지 않는 GET) 패턴을 사용합니다. 이전에 요청 메서드와 일치하는 것으로 기록한 결과를 보존할 가치가 있는 경우에만 http-request-method를 사용합니다. 그렇지 않은 경우 성능 향상을 위해 생략합니다. http-request-method를 사용하는 경우 화합물 체인에서 먼저 정렬합니다. http-url-parsed 컨텍스트를 사용하여 URL에서 식별 가능한 공격 시그니처를 일치시킵니다. 이 컨텍스트를 사용하여 변수 매개 변수 앞에 나타나는 URL의 패턴, 즉 물음표(?) 앞의 URL 부분을 일치시킵니다. 하나 이상의 http-variable-parsed 컨텍스트를 사용하여 URL 변수 매개 변수(일반적으로 앰퍼샌드(&)로 구분되는 물음표(?) 뒤의 URL 부분)와 일치시킵니다. |
예제: HTML 텍스트에 나타나는 패턴의 컨텍스트 바꾸기
HTTP 탐지기 엔진에서 생성된 각 컨텍스트에는 성능 비용이 있습니다. 컨텍스트 http-text-html 및 http-text-html-body는 동일한 용도로 사용됩니다. 컨텍스트 수를 줄이면 성능이 향상됩니다.
표 20 에서는 업데이트 #1972 이전 서명과 이후의 서명 속성을 보여 줍니다. 이것은 간단한 변화입니다. 컨텍스트만 변경합니다. 패턴이나 다른 속성을 변경할 필요가 없습니다.
업데이트 전 |
업데이트 후 |
|
---|---|---|
문맥 |
http-텍스트-html-본문 |
http-텍스트-html |
무늬 |
.*<span></span>.* |
.*<span></span>.* |
예: URL에 나타나는 패턴의 컨텍스트 바꾸기
이 섹션은 다음 두 부분으로 구성되어 있습니다.
요청 메서드와 일치하는 서명
이전에 요청 메서드 GET, POST 또는 HEAD와 일치했던 사용자 지정 공격 객체를 수정할 때는 이러한 요청 메서드 패턴과의 일치가 효과적인지 여부를 고려해야 합니다. 생성된 각 컨텍스트에는 성능 비용이 있습니다. 요청 방법이 결과에 필수적이지 않은 경우 이 기회에 요청 방법 없이 서명을 다시 캐스팅하십시오.
표 21 과 표 22 는 업데이트 #1972 이전의 서명과 이후의 복합 서명의 속성을 보여줍니다. 이 예제에서는 요청 메서드에 대한 관심을 유지합니다.
업데이트 전 서명 |
|
---|---|
범위 |
– |
문맥 |
http-get-url-parsed-param |
무늬 |
\[/viper/vegaspalms/\].* |
업데이트 후 복합 서명 |
||
---|---|---|
|
엠01 |
엠02 |
범위 |
거래 |
|
문맥 |
http 요청 메서드 |
http-url 구문 분석 |
무늬 |
|
\[/viper/vegaspalms/\].* |
URL 문자열 및 URL 변수와 일치하는 서명
일반적으로 단일 패턴을 여러 컨텍스트로 나누면 성능에 긍정적 또는 부정적 영향을 미칠 수 있습니다. 운영 네트워크에 공격 객체를 배포하기 전에 변경 사항을 테스트하여 성능에 미치는 영향을 파악해야 합니다. 표 23 및 표 24 에 표시된 예는 URL 일치를 여러 컨텍스트로 나눕니다. 보안 팀은 여기에 설명된 권장 사항에 대한 성능을 테스트했습니다.
업데이트 전 서명 |
|
---|---|
범위 |
– |
문맥 |
http-get-url-param-parsed-param |
무늬 |
|
업데이트 후 복합 서명 |
||||
---|---|---|---|---|
엠01 |
엠02 |
엠03 |
엠04 |
|
범위 |
거래 |
|||
문맥 |
http-url 구문 분석 |
http 변수 구문 분석 |
http 변수 구문 분석 |
http 변수 구문 분석 |
무늬 |
|
|
|
|
또한보십시오
예: 복합 또는 연쇄 공격 구성
이 예는 특정 일치 기준에 대해 복합 또는 연쇄 공격을 구성하는 방법을 보여줍니다. 복합 공격 또는 연쇄 공격 객체는 여러 가지 방법을 사용하여 취약점을 악용하는 공격을 탐지하도록 구성할 수 있습니다.
요구 사항
시작하기 전에 디바이스에서 IDP를 지원하고 활성화해야 합니다.
개요
복합 공격 또는 체인 공격 객체는 시그니처와 이상 징후를 결합하여 단일 공격 객체를 형성할 수 있습니다. 단일 공격 객체에는 다음이 포함될 수 있습니다.
두 개 이상의 서명
두 개 이상의 이상
시그니처와 변칙의 조합
복합 또는 연쇄 공격 객체는 여러 시그니처 및/또는 프로토콜 이상을 단일 공격 객체로 결합하여, 트래픽이 공격으로 식별되기 전에 트래픽이 복합 공격 객체 내에서 결합된 시그니처 및 이상 패턴과 일치하도록 강제합니다. 이러한 개체는 오탐을 줄이고 탐지 정확도를 높이는 데에도 사용됩니다. 이를 통해 침입 탐지 및 방지(IDP)가 트래픽을 공격으로 식별하기 전에 발생해야 하는 이벤트에 대해 구체적으로 파악할 수 있습니다.
구성
절차
CLI 빠른 구성
이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성과 일치시키는 데 필요한 세부 사항을 변경한 다음, 계층 수준에서 명령을 [edit]
CLI로 복사해 붙여 넣은 다음, 구성 모드에서 을 입력합니다 commit
.
set security idp idp-policy idpengine rulebase-ips rule 1 match from-zone any set security idp idp-policy idpengine rulebase-ips rule 1 match source-address any set security idp idp-policy idpengine rulebase-ips rule 1 match to-zone any set security idp idp-policy idpengine rulebase-ips rule 1 match destination-address any set security idp idp-policy idpengine rulebase-ips rule 1 match application default set security idp idp-policy idpengine rulebase-ips rule 1 match attacks custom-attacks ftpchain set security idp idp-policy idpengine rulebase-ips rule 1 then action no-action set security idp idp-policy idpengine rulebase-ips rule 1 then notification log-attacks set security idp active-policy idpengine set security idp custom-attack ftpchain severity info set security idp custom-attack ftpchain attack-type chain protocol-binding application ftp set security idp custom-attack ftpchain attack-type chain scope session set security idp custom-attack ftpchain attack-type chain order set security idp custom-attack ftpchain attack-type chain member m1 attack-type signature context ftp-banner set security idp custom-attack ftpchain attack-type chain member m1 attack-type signature pattern .*vsFTPd.* set security idp custom-attack ftpchain attack-type chain member m1 attack-type signature direction server-to-client set security idp custom-attack ftpchain attack-type chain member m2 attack-type signature context ftp-username set security idp custom-attack ftpchain attack-type chain member m2 attack-type signature pattern .*root.* set security idp custom-attack ftpchain attack-type chain member m2 attack-type signature direction client-to-server set security idp custom-attack ftpchain attack-type chain member m3 attack-type anomaly test LOGIN_FAILED set security idp custom-attack ftpchain attack-type chain member m3 attack-type anomaly direction any set security idp traceoptions file idpd set security idp traceoptions flag all
단계별 절차
다음 예제에서는 구성 계층의 다양한 수준을 탐색해야 합니다. 이를 수행하는 방법에 대한 지침은 CLI 사용자 가이드의 구성 모드에서 CLI 편집기 사용을 참조하십시오.
특정 일치 기준에 대해 복합 또는 연쇄 공격을 구성하는 방법:
침입 탐지 및 방지(IDP) 정책을 생성합니다.
[edit] user@host# set security idp idp-policy idpengine
규칙 베이스를 정책과 연결합니다.
[edit security idp idp-policy idpengine] user@host# edit rulebase-ips
규칙 베이스에 규칙을 추가합니다.
[edit security idp idp-policy idpengine rulebase-ips] user@host# edit rule 1
규칙에 대한 일치 기준을 정의합니다.
[edit security idp idp-policy idpengine rulebase-ips rule 1] user@host# set match from-zone any user@host# set match source-address any user@host# set match to-zone any user@host# set match destination-address any
규칙 기준과 일치하도록 응용 프로그램 집합 이름을 지정합니다.
[edit security idp idp-policy idpengine rulebase-ips rule 1] user@host# set match application default
일치 공격 객체와 공격 객체의 이름을 지정합니다.
[edit security idp idp-policy idpengine rulebase-ips rule 1] user@host# set match attacks custom-attacks ftpchain
규칙에 대한 작업을 지정합니다.
[edit security idp idp-policy idpengine rulebase-ips rule 1] user@host# set then action no-action
규칙에 대한 알림 또는 로깅 옵션을 지정합니다.
[edit security idp idp-policy idpengine rulebase-ips rule 1] user@host# set then notification log-attacks
침입 탐지 및 방지(IDP) 정책을 활성화합니다.
[edit] user@host# set security idp active-policy idpengine
사용자 지정 공격의 이름을 지정합니다.
[edit security idp] user@host# set custom-attack ftpchain
사용자 지정 공격의 심각도를 설정합니다.
[edit security idp custom-attack ftpchain] user@host# set severity info
사용자 지정 공격에 대한 공격 유형 및 애플리케이션 이름을 설정합니다.
[edit security idp custom-attack ftpchain] user@host# set attack-type chain protocol-binding application ftp
공격이 정의되는 범위와 순서를 설정합니다.
[edit security idp custom-attack ftpchain attack-type chain] user@host# set scope session user@host# set order
체인 공격 객체의 첫 번째 구성원에 대한 이름을 지정합니다.
[edit security idp custom-attack ftpchain attack-type chain] user@host# set member m1
체인 공격 객체의 첫 번째 구성원에 대한 컨텍스트, 패턴 및 방향을 설정합니다.
[edit security idp custom-attack ftpchain attack-type chain member m1] user@host# set attack-type signature context ftp-banner user@host# set attack-type signature pattern .*vsFTPd.* user@host# set attack-type signature direction server-to-client
체인 공격 객체의 두 번째 구성원에 대한 이름을 지정합니다.
[edit security idp custom-attack ftpchain attack-type chain] user@host# set member m2
체인 공격 객체의 두 번째 구성원에 대한 컨텍스트, 패턴 및 방향을 설정합니다.
[edit security idp custom-attack ftpchain attack-type chain member m2] user@host# set attack-type signature context ftp-username user@host# set attack-type signature pattern .*root.* user@host# set attack-type signature direction client-to-server
체인 공격 객체의 세 번째 구성원에 대한 이름을 지정합니다.
[edit security idp custom-attack ftpchain attack-type chain] user@host# set member m3
체인 공격 객체의 세 번째 멤버에 대한 공격 유형 및 방향을 지정합니다.
[edit security idp custom-attack ftpchain attack-type chain member m3] user@host# set attack-type anomaly direction any
침입 탐지 및 방지(IDP) 서비스에 대한 추적 옵션 및 추적 파일 정보를 지정합니다.
[edit] user@host# set security idp traceoptions file idpd
추적 출력에 포함되어야 하는 이벤트 및 기타 정보를 지정합니다.
[edit] user@host# set security idp traceoptions flag all
결과
구성 모드에서 명령을 입력하여 show security idp
구성을 확인합니다. 출력이 의도한 구성을 표시하지 않으면, 이 예의 구성 지침을 반복하여 수정합니다.
[edit] user@host# show security idp idp-policy idpengine { rulebase-ips { rule 1 { match { from-zone any; source-address any; to-zone any; destination-address any; application default; attacks { custom-attacks ftpchain; } } then { action { no-action; } notification { log-attacks; } } } } } active-policy idpengine; custom-attack ftpchain { severity info; attack-type { chain { protocol-binding { application ftp; } scope session; order; member m1 { attack-type { signature { context ftp-banner; pattern .*vsFTPd.*; direction server-to-client; } } } member m2 { attack-type { signature { context ftp-username; pattern .*root.*; direction client-to-server; } } } member m3 { attack-type { anomaly { test LOGIN_FAILED; direction any; } } } } } } traceoptions { file idpd; flag all; }
디바이스 구성을 마쳤으면 구성 모드에서 을 입력합니다 commit
.
구성 모드에 들어가 commit
면 구성이 내부적으로 검증되고 커밋됩니다. 오류가 있는 경우 커밋이 실패하고 오류가 보고됩니다.
확인
체인 공격 구성이 제대로 작동하는지 확인하려면 다음 작업을 수행하십시오.
구성 확인
목적
체인 공격 구성이 올바른지 확인합니다.
행동
운영 모드에서 명령을 입력하여 show security idp policy-commit-status
정책 컴파일 또는 로드 상태를 확인합니다.
명령의 show security idp policy-commit-status
출력은 동적이므로 이 명령에 대한 단일 출력이 없습니다.
구성에 따라 공격이 탐지되는지 확인하고 디바이스를 통해 트래픽을 전달하여 공격 일치를 트리거합니다. 예를 들어 명령을 입력하여 show security idp status
정책이 로드되었는지 여부를 확인합니다.
user@host>
show security idp status
IDP policy[/var/db/idpd/bins/test.bin.gz.v] and detector[/var/db/idpd/sec-repository/installed-detector/libidp-detector.so.tgz.v] loaded successfully. The loaded policy size is:785 Bytes
show security idp attack table
명령을 입력하여 공격 트래픽을 전달한 다음 공격이 탐지되는지 여부를 확인합니다.
명령은 공격이 탐지된 경우에만 출력을 표시합니다.
user@host>
show security idp attack table
IDP attack statistics: Attack name #Hits FTP:USER:ROOT 1
예: 동적 공격 그룹과 맞춤형 공격 그룹으로 공격 그룹 구성
이 예에서는 FTP 또는 Telnet 서버를 보호하기 위해 침입 탐지 및 방지(IDP) 정책에서 동적 공격 그룹 및 사용자 지정 공격 그룹으로 공격 그룹을 구성하는 방법을 보여줍니다.
요구 사항
시작하기 전에 다음 문 중 하나에 해당하는 경우에만 디바이스에 보안 패키지를 설치하십시오.
동적 공격 그룹이 구성됩니다.
사용자 지정 공격 그룹에는 미리 정의된 공격 또는 공격 그룹이 포함됩니다.
사용자 지정 공격 그룹에 사용자 지정 공격만 포함된 경우에는 보안 패키지 라이선스가 필요하지 않으며 디바이스에 보안 패키지를 설치할 필요도 없습니다. 보안 패키지를 설치하려면 침입 탐지 및 방지(IDP) 보안 패키지 라이선스가 필요합니다.
개요
침입 탐지 및 방지(IDP)에는 사전 정의된 공격 객체가 다수 포함되어 있습니다. 침입 탐지 및 방지(IDP) 정책을 관리하고 구성하기 위해 공격 객체를 그룹화할 수 있습니다. 공격 객체 그룹에는 두 가지 이상의 공격 객체 유형이 포함될 수 있습니다. 공격 그룹은 다음과 같이 분류됩니다.
동적 공격 그룹 - 특정 일치 기준에 따른 공격 객체를 포함합니다. 시그니처를 업데이트하는 동안 동적 그룹 구성원은 해당 그룹의 일치 기준에 따라 자동으로 업데이트됩니다. 예를 들어 동적 공격 그룹 필터를 사용하여 특정 애플리케이션과 관련된 공격을 동적으로 그룹화할 수 있습니다.
사용자 지정 공격 그룹 - 공격 정의에 지정된 공격 목록을 포함합니다. 사용자 지정 공격 그룹에는 미리 정의된 특정 공격, 사용자 지정 공격, 미리 정의된 공격 그룹 또는 동적 공격 그룹도 포함될 수 있습니다. 사용자 지정 공격 그룹은 공격이 그룹에 지정되므로 본질적으로 정적입니다. 따라서 보안 데이터베이스가 업데이트될 때 공격 그룹은 변경되지 않습니다. 구성원은 시그니처 데이터베이스의 사전 정의된 공격 또는 사전 정의된 공격 그룹 또는 기타 사용자 지정 공격 및 동적 공격 그룹일 수 있습니다.
이 예에서는 침입 탐지 및 방지(IDP) 정책에서 공격 그룹을 구성하여 사용자 지정 및 동적 공격으로부터 FTP 또는 Telnet 서버를 보호합니다.
구성
절차
CLI 빠른 구성
이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성과 일치시키는 데 필요한 세부 사항을 변경한 다음, 계층 수준에서 명령을 [edit]
CLI로 복사해 붙여 넣은 다음, 구성 모드에서 을 입력합니다 commit
.
set security idp idp-policy idpengine rulebase-ips rule 1 match from-zone any set security idp idp-policy idpengine rulebase-ips rule 1 match source-address any set security idp idp-policy idpengine rulebase-ips rule 1 match to-zone any set security idp idp-policy idpengine rulebase-ips rule 1 match destination-address any set security idp idp-policy idpengine rulebase-ips rule 1 match application default set security idp idp-policy idpengine rulebase-ips rule 1 match attacks custom-attack-groups cust-group set security idp idp-policy idpengine rulebase-ips rule 1 match attacks dynamic-attack-groups dyn2 set security idp idp-policy idpengine rulebase-ips rule 1 then action no-action set security idp idp-policy idpengine rulebase-ips rule 1 then notification log-attacks set security idp active-policy idpengine set security idp custom-attack customftp severity info set security idp custom-attack customftp attack-type signature context ftp-username set security idp custom-attack customftp attack-type signature pattern .*guest.* set security idp custom-attack customftp attack-type signature direction client-to-server set security idp custom-attack-group cust-group group-members customftp set security idp custom-attack-group cust-group group-members ICMP:INFO:TIMESTAMP set security idp custom-attack-group cust-group group-members "TELNET - Major" set security idp custom-attack-group cust-group group-members dyn1 set security idp dynamic-attack-group dyn1 filters category values TROJAN set security idp dynamic-attack-group dyn2 filters direction expression and set security idp dynamic-attack-group dyn2 filters direction values server-to-client set security idp dynamic-attack-group dyn2 filters direction values client-to-server set security idp dynamic-attack-group dyn2 filters age-of-attack less-than value 7 set security idp dynamic-attack-group dyn2 filters vulnerability-type values Injection set security idp dynamic-attack-group dyn2 filters vendor Microsoft set security idp dynamic-attack-group dyn2 filters cvss-score less-than value 7 set security idp traceoptions file idpd set security idp traceoptions flag all
단계별 절차
다음 예제에서는 구성 계층의 다양한 수준을 탐색해야 합니다. 이를 수행하는 방법에 대한 지침은 CLI 사용자 가이드의 구성 모드에서 CLI 편집기 사용을 참조하십시오.
동적 공격 그룹과 사용자 지정 공격 그룹으로 공격 그룹을 구성하는 방법:
침입 탐지 및 방지(IDP) 정책을 생성합니다.
[edit] user@host# set security idp idp-policy idpengine
규칙 베이스를 정책과 연결합니다.
[edit security idp idp-policy idpengine] user@host# set rulebase-ips
규칙 베이스에 규칙을 추가합니다.
[edit security idp idp-policy idpengine rulebase-ips] user@host# set rule 1
규칙에 대한 일치 기준을 정의합니다.
[edit security idp idp-policy idpengine rulebase-ips rule 1] user@host# set match from-zone any user@host# set match source-address any user@host# set match to-zone any user@host# set match destination-address any
규칙 기준과 일치하도록 응용 프로그램 집합 이름을 지정합니다.
[edit security idp idp-policy idpengine rulebase-ips rule 1] user@host# set match application default
사용자 지정 공격 그룹에 대한 일치 항목을 지정합니다.
[edit security idp idp-policy idpengine rulebase-ips rule 1] user@host# set match attacks custom-attack-groups cust-group
동적 공격 그룹에 대한 일치 항목을 지정합니다.
[edit security idp idp-policy idpengine rulebase-ips rule 1] user@host# set match attacks dynamic-attack-groups dyn2
규칙에 대한 작업을 지정합니다.
[edit security idp idp-policy idpengine rulebase-ips rule 1] user@host# set then action no-action
규칙에 대한 알림 또는 로깅 옵션을 지정합니다.
[edit security idp idp-policy idpengine rulebase-ips rule 1] user@host# set then notification log-attacks
침입 탐지 및 방지(IDP) 정책을 활성화합니다.
[edit] user@host# set security idp active-policy idpengine
사용자 지정 공격의 이름을 지정합니다.
[edit security idp] user@host# set custom-attack customftp
사용자 지정 공격의 심각도를 설정합니다.
[edit security idp custom-attack customftp] user@host# set severity info
공격에 대한 공격 유형 및 컨텍스트를 설정합니다.
[edit security idp custom-attack customftp] user@host# set attack-type signature context ftp-username
공격 패턴을 지정합니다.
[edit security idp custom-attack customftp] user@host# set attack-type signature pattern .*guest.*
공격 방향을 지정합니다.
[edit security idp custom-attack customftp] user@host# set attack-type signature direction client-to-server
사용자 지정 공격 그룹의 이름을 지정합니다.
[edit security idp] user@host# set custom-attack-group cust-group
사용자 지정 공격 그룹에 속하는 공격 또는 공격 그룹의 목록을 지정합니다.
[edit security idp custom-attack-group cust-group] user@host# set group-members customftp user@host# set group-members ICMP:INFO:TIMESTAMP user@host# set group-members "TELNET - Major" user@host# set group-members dyn1
첫 번째 동적 공격 그룹의 이름을 지정합니다.
[edit security idp] user@host# set dynamic-attack-group dyn1
필터를 구성하고 필터의 범주 값을 설정합니다.
[edit security idp dynamic-attack-group dyn1 ] user@host# set filters category values TROJAN
두 번째 동적 공격 그룹의 이름을 지정합니다.
[edit security idp] user@host# set dynamic-attack-group dyn2
두 번째 동적 공격 그룹에 대한 필터를 구성하고 이 필드에 대한 방향과 값을 설정합니다.
[edit security idp dynamic-attack-group dyn2 ] user@host# set filters direction expression and user@host# set filters direction values server-to-client user@host# set filters direction values client-to-server user@host# set filters age-of-attack less-than value 7 user@host# set filters cvss-score less-than value 7 user@host# set filters file-type MPEG user@host# set filters vendor Microsoft user@host# set filters vulnerability-type values Injection
침입 탐지 및 방지(IDP) 서비스에 대한 추적 옵션 및 추적 파일 정보를 지정합니다.
[edit] user@host# set security idp traceoptions file idpd
추적 출력에 포함되어야 하는 이벤트 및 기타 정보를 지정합니다.
[edit] user@host# set security idp traceoptions flag all
결과
구성 모드에서 명령을 입력하여 show security idp
구성을 확인합니다. 출력이 의도한 구성을 표시하지 않으면, 이 예의 구성 지침을 반복하여 수정합니다.
[edit] user@host# show security idp idp-policy idpengine { rulebase-ips { rule 1 { match { from-zone any; source-address any; to-zone any; destination-address any; application default; attacks { custom-attack-groups cust-group; dynamic-attack-groups dyn2; } } then { action { no-action; } notification { log-attacks; } } } } } active-policy idpengine; custom-attack customftp { severity info; attack-type { signature { context ftp-username; pattern .*guest.*; direction client-to-server; } } } custom-attack-group cust-group { group-members [ customftp ICMP:INFO:TIMESTAMP "TELNET - Major" dyn1 ]; } dynamic-attack-group dyn1 { filters { category { values TROJAN; } } } dynamic-attack-group dyn2 { filters { direction { expression and; values [ server-to-client client-to-server ]; } age-of-attack less-than { value 7; } vulnerability-type { values Injection; } vendor Microsoft; cvss-score less-than { value 7; } } } traceoptions { file idpd; flag all; }
디바이스 구성을 마쳤으면 구성 모드에서 을 입력합니다 commit
.
구성 모드에 들어가 commit
면 구성이 내부적으로 검증되고 커밋됩니다. 오류가 있는 경우 커밋이 실패하고 오류가 보고됩니다.
확인
구성 확인
목적
구성이 올바른지 확인합니다.
행동
운영 모드에서 명령을 입력하여 show security idp policy-commit-status
정책 컴파일 또는 로드 상태를 확인합니다.
명령의 show security idp policy-commit-status
출력은 동적이므로 이 명령에 대한 단일 출력이 없습니다.
구성에 따라 공격이 탐지되는지 확인하고 디바이스를 통해 트래픽을 전달하여 공격 일치를 트리거합니다. 예를 들어 명령을 입력하여 show security idp status
정책이 로드되었는지 여부를 확인합니다.
user@host>
show security idp status
IDP policy[/var/db/idpd/bins/test.bin.gz.v] and detector[/var/db/idpd/sec-repository/installed-detector/libidp-detector.so.tgz.v] loaded successfully. The loaded policy size is:785 Bytes
show security idp attack table
명령을 입력하여 공격 트래픽을 전달한 다음 공격이 탐지되는지 여부를 확인합니다.
명령은 공격이 탐지된 경우에만 출력을 표시합니다.
user@host>
show security idp attack table
IDP attack statistics: Attack name #Hits FTP:USER:ROOT 1
사용자 지정 공격 객체 DFA 표현식
표 25 에는 공격 패턴을 일치시키기 위한 구문의 예가 나와 있습니다.
예제 구문 |
묘사 |
예시 일치 |
---|---|---|
안녕하세요.. \B.0.1.입니다. 00\B... 세계 |
매칭에는 두 가지 측면이 있습니다. 비트 마스크 패턴(\B.0.0.1)과 일치해야 합니다. 00\B 비트 마스크 패턴 앞뒤의 바이트 수(로 표시)와 일치해야 합니다. |
성냥: 안녕하세요.. \B.0.11100\B... 세계안녕하세요.. \B.0.10000\B... 세계 일치하지 않음: 안녕하세요.\B.0.1.. 00\B.world안녕하세요.. \B.0.1.입니다. 11\B... 세계 |
\X01 86 A5 00 00\X |
지정된 5바이트를 그대로 사용하는 패턴입니다. |
01 86 A5 00 00 |
(안녕하세요|세계) |
hello 또는 world가 한 번 발생하는 패턴입니다. |
안녕하세요 세계 |
(hello|world)+ |
hello 또는 world가 한 번 이상 발생하는 패턴입니다. |
헬로월드 월드헬로 안녕하세요안녕하세요 |
\[안녕하세요\] |
패턴 안녕하세요, 대소문자를 구분하지 않습니다. |
안녕하세요 안녕하세요 안녕하세요 |
\uHello\u |
패턴 안녕하세요, 유니 코드를 구분하지 않습니다. |
안녕하세요 68656C6C6F |
안녕하세요\sworld |
패턴 hello world, 공백으로 구분된 두 단어. |
전 세계 여러분 안녕하세요 |
[c-e]a(d|t) |
c, d 또는 e의 첫 글자가 있는 패턴; 중간 문자 A; d 또는 t로 끝납니다. |
고양이 아빠 먹다 |
[^c-d]a(d|t) |
c, d 또는 e 이외의 문자로 시작하는 패턴입니다. 두 번째 문자 A가 있습니다. d 또는 t로 끝납니다. |
일시적 유행 자드 |
ᅡ*b+ᄂ |
임의의 수의 문자(0 포함)가 있는 패턴; 뒤에 하나 이상의 b 문자가 옵니다. 그 뒤에는 C 문자가 옵니다. |
기원전 증권 시세 표시기 아 |
티[케이] |
대문자 T로 시작하고 그 뒤에 대/소문자를 구분하지 않는 k가 오는 패턴입니다. |
증권 시세 표시기 증권 시세 표시기 |
([tt])k |
대/소문자를 구분하지 않는 t로 시작하고 그 뒤에 소문자 k가 오는 패턴입니다. |
증권 시세 표시기 증권 시세 표시기 |
바다[in] |
Sea로 시작하고 그 뒤에 소문자 l, m 또는 n이 오는 패턴입니다. |
도장 솔기 숀 |
([BD])에서 |
대문자 B, C 또는 D로 시작하고 그 뒤에 소문자가 오는 패턴입니다. |
박쥐 고양이 닷 |
\0133\[안녕하세요\]\0135 |
여는 대괄호로 시작하고, 대/소문자를 구분하지 않는 hello가 뒤따르고, 닫는 대괄호로 끝나는 패턴입니다. 이 표현식은 \0 표현식을 사용하여 다음 표현식이 8진수 코드임을 표시한 다음 여는 괄호(133) 또는 닫는 괄호(135)에 대한 8진수 코드를 따릅니다. |
[안녕하세요] [헬로] |
예: 패턴 부정 사용
패턴 부정을 사용하여 안전한 것으로 알려진 패턴을 제외하고 다른 모든 패턴과 일치시킬 수 있습니다.
예를 들어, FTP 서버에 대한 트래픽을 검사하기 위해 공격 객체를 설계한다고 가정해 보겠습니다. 계정 사용자 이름과 암호는 권한이 있는 사용자만 내부 리소스에 액세스할 수 있도록 잘 유지 관리됩니다. 그러나 네트워크가 성장하고 새로운 구성 요소가 추가됨에 따라 사용자 계정이 급증하여 특정 구성 요소에 대한 네트워크 액세스가 증가할 수 있습니다. 이 예제에서는 내부 네트워크에 여러 사용자 계정을 사용할 수 있는 FTP 서버가 있습니다. 보안을 강화하기 위해 FTP 관리자에 대한 액세스를 제한하려고 합니다.
FTP 서비스, ftp-username 컨텍스트 및 패턴 admin에 대한 공격 객체를 만들고 부정 확인란을 선택합니다. 그 결과 공격 객체가 아닌 다른 admin사용자의 로그인 시도에 플래그를 지정할 수 있습니다. 일치하는 트래픽을 기록하거나 삭제하는 규칙에서 이 공격 객체를 사용할 수 있습니다.
또한보십시오
예: 파일 확장명 일치
이 예제에서는 확장명 .emf(Windows 확장 메타파일) 및 .wmf(Microsoft Windows 메타파일)를 사용하는 Microsoft Windows 메타파일을 검색하려고 합니다.
이러한 파일 유형 중 하나를 일치시키려면 간단한 DFA 표현식을 사용합니다.
.*\.\[w|emf\]
이 표현식에서:
마침표와 별표(.*)는 하나 이상의 문자가 나타나야 함을 나타냅니다(와일드카드 일치).
마침표 문자(\.)와 결합된 백슬래시는 마침표 문자가 이스케이프되었음을 나타냅니다(마침표가 패턴에 나타남).
표현식의 시작과 끝에 있는 괄호( )는 그룹을 나타냅니다. e와 w 사이의 파이프 문자(e|w)는 문자 간의 OR 관계를 나타냅니다. 이 표현식의 경우 e 또는 w가 이 표현식과 일치하도록 패턴에 나타나야 합니다. 하나만 있어야 합니다.
여는 대괄호(\[)는 닫는 대괄호(\])가 나타날 때까지 모든 문자에 대해 대/소문자를 구분하지 않는 일치의 시작을 나타냅니다.
닫는 대괄호(\])는 대/소문자를 구분하지 않는 일치의 끝을 나타냅니다.
또한보십시오
예: Apache Tomcat 서비스 거부 공격
이 예제에서는 Apache Tomcat을 실행하는 웹 서버가 있다고 가정합니다. 보안 관리자가 Apache Tomcat에 대한 취약점이 방금 발표되었음을 알리고, 사용자는 서버 패치를 위한 다운타임을 예약할 수 있을 때까지 네트워크를 보호하기 위해 사용자 지정 공격 객체를 생성하기로 결정합니다.
취약점에 대한 CVE 권고(http://nvd.nist.gov/nvd.cfm?cvename=CAN-2002-0682)에는 다음과 같은 인용문이 포함되어 있습니다.
A cross-site scripting vulnerability in Apache Tomcat 4.0.3 allows remote attackers to execute script as other web users via script in a URL with the /servlet/ mapping, which does not filter the script when an exception is thrown by the servlet.
이 정보를 통해 공격이 HTTP를 사용한다는 것을 알 수 있습니다. 이제 공격 코드를 찾아야 합니다. 이 권고에는 공격에 대한 자세한 정보로 연결되는 참조도 포함되어 있습니다. 안타깝게도 참조된 웹 페이지에는 악용 코드가 포함되어 있지 않습니다. CVE 권고에서 배운 정보를 사용하여 웹을 검색한 후 http://packetstormsecurity.nl/0210-exploits/neuter.c 에서 일부 익스플로잇 코드를 찾습니다. 스크립트를 복사하여 테스트 랩의 공격자 컴퓨터로 이동합니다.
이 공격 객체를 개발하려면 다음을 수행합니다.
또한보십시오
특정 프로토콜에 대한 침입 탐지 및 방지(IDP) 테스트 조건 나열
침입 탐지 및 방지(IDP) 사용자 지정 공격을 구성할 때 특정 프로토콜에 대한 목록 테스트 조건을 지정할 수 있습니다. ICMP에 대한 테스트 조건을 나열하려면 다음을 수행합니다.
ICMP에 대해 지원되는 테스트 조건을 나열하고 구성할 테스트 조건을 선택합니다. 지원되는 테스트 조건은 계층 수준의 CLI에서
[edit security idp custom-attack test1 attack-type anomaly]
사용할 수 있습니다.user@host#set test icmp? Possible completions: <test> Protocol anomaly condition to be checked ADDRESSMASK_REQUEST DIFF_CHECKSUM_IN_RESEND DIFF_CHECKSUM_IN_RESPONSE DIFF_LENGTH_IN_RESEND
테스트 조건을 구성할 서비스를 구성합니다.
user@host# set service ICMP
테스트 조건을 구성합니다(프로토콜 이름 지정은 필요하지 않음).
user@host# set test ADDRESSMASK_REQUEST
디바이스 구성을 마쳤으면 구성 모드에서 을 입력합니다
commit
.
침입 탐지 및 방지(IDP) 프로토콜 디코더 이해
프로토콜 디코더는 침입 탐지 및 방지(IDP)에서 이상 징후를 찾고 RFC 표준이 충족되는지 확인하여 프로토콜 무결성 및 프로토콜 컨텍스트 정보를 확인하는 데 사용됩니다. 이상은 헤더, 메시지 본문 또는 해당 프로토콜에 대한 RFC 표준에서 벗어난 기타 개별 필드와 같은 프로토콜의 일부일 수 있습니다. 예를 들어 SMTP의 경우 SMTP MAIL TO가 SMTP HELO보다 앞에 오면 SMTP 프로토콜에 이상이 있는 것입니다.
프로토콜 컨텍스트 정보를 사용할 수 있는 경우 프로토콜 디코더는 해당 컨텍스트 내에서 공격을 확인합니다. 예를 들어 SMTP의 경우 전자 메일을 user@company.com 로 보내는 경우 user@company.com 은 컨텍스트 정보이고 SMTP MAIL TO는 컨텍스트입니다. 프로토콜 디코더는 공격 탐지를 위해 전체 패킷이 아닌 프로토콜 컨텍스트 데이터를 사용함으로써 전반적인 성능과 정확도를 향상시킵니다.
SMTP에 대한 프로토콜 디코더 검사와 일치하는 규칙으로 구성된 정책이 있는 경우 규칙이 트리거되고 적절한 작업이 수행됩니다.
침입 탐지 및 방지(IDP) 모듈은 사전 구성된 프로토콜 디코더 세트와 함께 제공됩니다. 이러한 프로토콜 디코더에는 수행하는 다양한 프로토콜별 컨텍스트 검사에 대한 기본 설정이 있습니다. 이러한 기본값을 사용하거나 사이트의 특정 요구 사항에 맞게 조정할 수 있습니다. 사용 가능한 프로토콜 디코더 목록을 표시하려면 다음 명령을 입력합니다.
user@host # show security idp sensor-configuration detector protocol-name ?
현재 프로토콜 디코더 세트와 기본 컨텍스트 값에 대한 자세한 내용은 디바이스의 /ar/db/idpd/sec-download 폴더에 있는detector-capabilities.xml 파일을 참조하십시오. 새 보안 패키지를 다운로드하면 현재 프로토콜과 기본 디코더 컨텍스트 값을 나열하는 이 파일도 받게 됩니다.
예: UNIX CDE/dtlogin 취약점
이 예제에서 네트워크에는 UNIX를 실행하는 여러 사용자 워크스테이션 및 서버가 포함되어 있습니다. 많은 UNIX 운영 체제는 CDE(Common Desktop Environment)를 그래픽 사용자 인터페이스로 사용합니다. 보안 관리자는 CDE에 대한 dtlogin 프로세스의 새 취약성을 사용자에게 알립니다(dtlogin 프로세스는 CDE에 대한 GUI 로그인 프로세스를 처리함).
취약점에 대한 CERT 권고(http://www.kb.cert.org/vuls/id/179804)에는 다음 정보가 포함되어 있습니다.
...The dtlogin program contains a "double-free" vulnerability that can be triggered by a specially crafted X Display Manager Control Protocol (XDMCP) packet... Block XDMCP traffic (177/udp) from untrusted networks such as the Internet...
이 정보를 통해 공격이 XDMCP 프로토콜 패킷을 사용하고 UDP/177에서 실행된다는 것을 알 수 있습니다. 이제 공격 코드를 찾아야 합니다. 이 권고에는 공격에 대한 자세한 정보로 연결되는 참조도 포함되어 있습니다. http://lists.immunitysec.com/pipermail/dailydave/2004-March/000402.html 참조는 공격을 처음 보고한 사람이 공격을 복제하는 스크립트도 작성했음을 나타냅니다. 스크립트를 가져와서 테스트 랩의 공격자 컴퓨터로 이동합니다.
이 공격 객체를 개발하려면 다음을 수행합니다.
또한보십시오
예: 웜 탐지
웜과 트로이 목마는 종종 방화벽 및 기타 기존 보안 조치를 우회하여 네트워크에 침입합니다. 이 예시에서는 사용자 지정 공격 객체를 생성하여 네트워크에서 Blaster 웜을 탐지합니다.
Blaster 웜에 대한 CERT 권고(http://www.cert.org/advisories/CA-2003-20.html)는 다음 정보를 제공합니다.
The W32/Blaster worm exploits a vulnerability in Microsoft's DCOM RPC interface...”
이 정보를 통해 공격이 이전에 식별된 보안 허점인 DCOM 익스플로잇을 사용한다는 것을 알 수 있습니다. 이제 공격 코드를 찾아야 합니다. 이 권고에는 공격에 대한 자세한 정보로 연결되는 참조도 포함되어 있습니다. 안타깝게도 참조된 웹 페이지에는 악용 코드가 포함되어 있지 않습니다. CERT 권고에서 얻은 정보를 사용하여 웹을 검색한 후 PacketStorm(http://packetstormsecurity.com/0307-exploits/dcom.c)에서 익스플로잇 코드를 찾습니다.
이 공격 객체를 개발하려면 다음을 수행합니다.
또한보십시오
예: HTTP 취약점 악용을 탐지하기 위한 복합 서명
일부 공격은 패킷 단위로 볼 때 무해한 것처럼 보이도록 만들어졌습니다. 이러한 공격의 경우 여러 컨텍스트(서비스, 비서비스 또는 둘 다)에서 여러 서명 패턴을 감지하는 복합 서명을 만들 수 있습니다.
이 예제에서는 Microsoft FrontPage Server Extensions를 사용하는 웹 서버가 있습니다. 보안 관리자는 FrontPage Server Extensions의 새로운 버퍼 오버플로 취약점을 알려 줍니다.
취약점(http://www.securityfocus.com/bid/9007/discussion/)에 대한 BugTraq 권고에는 다음 정보가 포함되어 있습니다.
Microsoft FrontPage Server Extensions are prone to a remotely exploitable buffer overrun vulnerability ... It is possible to trigger this condition with a chunked-encoded HTTP POST request...
다음과 같은 개념 증명 예제도 제공됩니다.
POST /_vti_bin/_vti_aut/fp30reg.dll HTTP/1.1 Transfer-Encoding: chunked PostLength PostData 0
또한 컴파일된 익스플로잇에 대한 링크가 포함되어 있습니다.
이 정보를 통해 공격이 HTTP 프로토콜을 사용하며 공격의 적어도 일부가 POST 메서드를 사용한다는 것을 알 수 있습니다. 컴파일된 익스플로잇에 대한 링크를 사용하여 스크립트를 얻은 다음 테스트 랩의 공격자 컴퓨터로 이동합니다.
이 공격 객체를 개발하려면 다음을 수행합니다.
또한보십시오
예: 시간 바인딩 파라미터를 사용하여 무차별 대입 공격 탐지
시간 바인딩 제약은 트래픽이 일치하는 것으로 간주되기 위해 패턴이 1분 이내에 특정 횟수만큼 발생하도록 요구합니다.
서명과 함께 시간 바인딩 매개 변수를 사용하여 무차별 암호 대입 공격의 징후를 감지할 수 있습니다. 사용자가 암호를 변경하는 것은 무해한 이벤트이며 일반적으로 네트워크에서 가끔 볼 수 있습니다. 그러나 분당 수천 번의 암호 변경은 의심 스럽습니다.
무차별 암호 대입 공격에서 공격자는 일반적으로 대상 서버 용량을 압도하거나 인증 자격 증명을 일치시키기 위한 반복적인 시행착오 시도를 통해 순전히 무력을 사용하여 시스템 방어를 뚫으려고 시도합니다. 무차별 대입 로그인 공격에서 공격자는 먼저 사용자 이름 목록과 암호 사전을 수집합니다. 그런 다음 공격자는 목록의 첫 번째 사용자에 대해 사전에 첫 번째 암호를 입력한 다음 일치할 때까지 모든 사용자에 대해 모든 암호를 시도하는 도구를 사용합니다. 공격자가 사용자 이름과 암호의 모든 조합을 시도하면 항상 성공합니다. 그러나 암호 사전이 일반적으로 제한되어 있고(가능한 모든 암호를 포함하지 않음) 공격 도구가 암호에 대한 순열(예: 문자 반전 또는 대/소문자 변경)을 수행하지 않기 때문에 무차별 암호 대입 공격이 실패하는 경우가 많습니다.
이 예제에서는 HTTP(웹 기반 애플리케이션)를 통해 인증된 사용자의 과도한 암호 변경을 탐지하는 서명 공격 객체를 생성합니다.
먼저 공격 패턴을 구성합니다.
.*/\[changepassword\.cgi\]
이 표현식에서:
점 별 조합(.*)은 와일드카드 일치를 나타냅니다.
문자 앞의 백슬래시는 문자가 정규식을 나타내며 이스케이프되어야 함을 나타냅니다. 이 경우 문자는 여는 대괄호입니다. 백슬래시는 이 표현식에서 파일 확장자 마커(점) 앞과 닫는 대괄호 앞에도 사용됩니다.
사용자 암호를 변경하는 데 사용되는 cgi 스크립트의 이름과 cgi 확장자가 포함됩니다.
컨텍스트의 경우, 웹 기반 응용 프로그램에 대해 발생하는 암호 변경을 검색하려고 시도하므로 목록에서 HTTP-URL-PARSED 를 선택합니다. changepassword.cgi 스크립트를 사용하면 URL의 일부로 나타나지만, 이름을 찾으려면 IDP 시리즈 디바이스에 URL을 구문 분석하도록 지시해야 합니다.
다음에는 시간 바인딩을 구성합니다.
이 설정에서:
공격 패턴이 소스 또는 대상에 관계없이 이벤트와 일치할 수 있도록 범위가 피어 로 설정됩니다.
거짓 긍정을 방지하기 위해 개수를 높은 수(1000까지)로 설정합니다. 이 값은 공격 객체가 일치하기 전에 changepassword.cgi 스크립트가 URL에 1,000번 나타나야 함을 의미합니다.
또한보십시오
참조: 사용자 지정 공격 개체 프로토콜 번호
표 26 침입 탐지 및 방지(IDP) 시스템에 사용되는 프로토콜 번호.
프로토콜 이름 |
프로토콜 번호 |
---|---|
호팝 |
0 |
증권 시세 표시기 |
1 |
증권 시세 표시기 |
2 |
증권 시세 표시기 |
3 |
증권 시세 표시기 |
4 |
세인트 |
5 |
TCP를 |
6 |
증권 시세 표시기 |
7 |
증권 시세 표시기 |
8 |
증권 시세 표시기 |
9 |
BBN-RCC-월 |
10 |
NVP-II (NVP-II) |
11 |
강아지 |
12 |
아르고스 |
13 |
엠콘 |
14 |
증권 시세 표시기 |
15 |
혼돈 |
16 |
증권 시세 표시기 |
17 |
멀티플렉서 |
18 |
DCN-측정 |
19 |
증권 시세 표시기 |
20 |
증권 시세 표시기 |
21 |
XND-침입 탐지 및 방지(IDP) |
22 |
트렁크-1 |
23 |
트렁크-2 |
24 |
리프-1 |
25 |
리프-2 |
26 |
증권 시세 표시기 |
27 |
증권 시세 표시기 |
28 |
ISO-TP4 인증 |
29 |
넷블트 |
30 |
MFE-NSP |
31 |
장점-INP |
32 |
9월 |
33 |
3개 |
34 |
침입 탐지 및 방지(IDPR) |
35 |
증권 시세 표시기 |
36 |
증권 시세 표시기 |
37 |
TP_PLUS_PLUS |
39 |
일리노이 |
40 |
IPV6 |
41 |
증권 시세 표시기 |
42 |
IPV6 라우팅 |
43 |
IDV6-단편 |
44 |
증권 시세 표시기 |
45 |
증권 시세 표시기 |
46 |
GRE |
47 |
증권 시세 표시기 |
48 |
증권 시세 표시기 |
49 |
증권 시세 표시기 |
50 |
아 |
51 |
I-NLSP |
52 |
슬쩍 |
53 |
나프 |
54 |
휴대폰 |
55 |
증권 시세 표시기 |
56 |
거르다 |
57 |
IPV6-ICMP |
58 |
IPV6-NONXT |
59 |
IPV6-옵션 |
60 |
아히프 |
61 |
증권 시세 표시기 |
62 |
증권 시세 표시기 |
63 |
SAT-EXPAK (토엑스팍) |
64 |
크립톨란 |
65 |
증권 시세 표시기 |
66 |
증권 시세 표시기 |
67 |
증권 시세 표시기 |
68 |
토-몬 |
69 |
사증 |
70 |
증권 시세 표시기 |
71 |
CPNX |
72 |
증권 시세 표시기 |
73 |
증권 시세 표시기 |
74 |
증권 시세 표시기 |
75 |
브-토-몬 |
76 |
일-ND |
77 |
WB-몬 |
78 |
WB-EXPAK |
79 |
ISO-IP |
80 |
VMTP |
81 |
보안 VMTP |
82 |
덩굴 |
83 |
증권 시세 표시기 |
84 |
NSFNET-IBP |
85 |
증권 시세 표시기 |
86 |
증권 시세 표시기 |
87 |
증권 시세 표시기 |
88 |
최단 경로 우선(OSPFIGP) |
89 |
스프라이트 RPC |
90 |
라프 |
91 |
증권 시세 표시기 |
92 |
AX_25 |
93 |
증권 시세 표시기 |
94 |
증권 시세 표시기 |
95 |
SCC-SP |
96 |
이더립 |
97 |
캡슐화 |
98 |
원숭이 |
99 |
그리니치 표준시 |
100 |
증권 시세 표시기 |
101 |
증권 시세 표시기 |
102 |
핌(PIM) |
103 |
아리스 |
104 |
SCPS |
105 |
증권 시세 표시기 |
106 |
A/N |
107 |
IPCOMP |
108 |
증권 시세 표시기 |
109 |
COMPAT-피어 |
110 |
IPZ-인-IP |
111 |
증권 시세 표시기 |
112 |
증권 시세 표시기 |
113 |
홉오(HOP-O) |
114 |
L2TP |
115 |
증권 시세 표시기 |
116 |
증권 시세 표시기 |
117 |
증권 시세 표시기 |
118 |
증권 시세 표시기 |
119 |
요로감염 |
120 |
증권 시세 표시기 |
121 |
증권 시세 표시기 |
122 |
증권 시세 표시기 |
123 |
이시스 |
124 |
불 |
125 |
증권 시세 표시기 |
126 |
크루드(CRUDP) |
127 |
SSCOPMCE |
128 |
증권 시세 표시기 |
129 |
증권 시세 표시기 |
130 |
파이프 |
131 |
증권 시세 표시기 |
132 |
FC |
133 |
RSVP-E2E-무시 |
134 |
N/A |
|
N/A |
|
N/A |
|
예약 |
255 |
참조: 인쇄할 수 없고 인쇄할 수 없는 ASCII 문자
다음 표에서는 인쇄할 수 없는 문자와 인쇄할 수 없는 문자의 ASCII 표현에 대한 세부 정보를 제공합니다.
12월 |
16 진수 |
10월 |
숯 |
주석 |
---|---|---|---|---|
0 |
0 |
000 |
증권 시세 표시기 |
영 |
1 |
1 |
001 |
SOH (소) |
제목 시작 |
2 |
2 |
002 |
증권 시세 표시기 |
텍스트의 시작 |
3 |
3 |
003 |
증권 시세 표시기 |
본문 끝 |
4 |
4 |
004 |
증권 시세 표시기 |
전송 종료 |
5 |
5 |
005 |
증권 시세 표시기 |
질문 |
6 |
6 |
006 |
증권 시세 표시기 |
승인하다 |
7 |
7 |
007 |
벨 |
종 |
8 |
8 |
010 |
모텔 |
백스페이스 |
9 |
9 |
011 |
탭 |
수평 탭 |
10 |
A |
012 |
증권 시세 표시기 |
줄 바꿈 |
11 |
B |
013 |
증권 시세 표시기 |
세로 탭 |
12 |
C |
014 |
Ff 로 |
폼 피드 |
13 |
D |
015 |
증권 시세 표시기 |
캐리지 리턴 |
14 |
E |
016 |
그렇게 |
시프트 아웃 |
15 |
F |
017 |
증권 시세 표시기 |
시프트 인 |
16 |
10 |
020 |
증권 시세 표시기 |
데이터 링크 이스케이프 |
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 |
증권 시세 표시기 |
동기식 유휴 상태(Synchronous Idle) |
23 |
17 |
027 |
증권 시세 표시기 |
전송 블록 종료 |
24 |
18 |
030 |
깡통 |
취소 |
25 |
19 |
031 |
그들 |
중간의 끝 |
26 |
1ᅡ |
032 |
하위 |
대용하다 |
27 |
1ᄂ |
033 |
ESC (영어) |
탈출 |
28 |
1ᄃ |
034 |
증권 시세 표시기 |
파일 구분 기호 |
29 |
1D |
035 |
지에스(GS) |
그룹 구분 기호 |
30 |
1E |
036 |
증권 시세 표시기 |
레코드 구분 기호 |
31 |
1층 |
037 |
우리 |
단위 구분 기호 |
12월 |
16 진수 |
10월 |
숯 |
---|---|---|---|
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 |
2ᅡ |
052 |
* |
43 |
2ᄂ |
053 |
+ |
44 |
2ᄃ |
054 |
, |
45 |
2D |
055 |
- |
46 |
2E |
056 |
. |
47 |
2층 |
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 |
3ᅡ |
072 |
: |
59 |
3ᄂ |
073 |
; |
60 |
3씨 |
074 |
< |
61 |
3D (3D) |
075 |
= |
62 |
3E |
076 |
> |
63 |
3층 |
077 |
? |
64 |
40 |
100 |
@ |
65 |
41 |
101 |
A |
66 |
42 |
102 |
B |
67 |
43 |
103 |
C |
68 |
44 |
104 |
D |
69 |
45 |
105 |
E |
70 |
46 |
106 |
F |
71 |
47 |
107 |
G |
72 |
48 |
110 |
H |
73 |
49 |
111 |
나는 |
74 |
4ᅡ |
112 |
J |
75 |
4ᄂ |
113 |
K |
76 |
4씨 |
114 |
L |
77 |
4D |
115 |
M |
78 |
4E |
116 |
N |
79 |
4층 |
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 |
5ᅡ |
132 |
Z |
91 |
5ᄂ |
133 |
[ |
92 |
5ᄃ |
134 |
\ |
93 |
5D |
135 |
] |
94 |
5E |
136 |
^ |
95 |
5층 |
137 |
_ |
96 |
60 |
140 |
` |
97 |
61 |
141 |
a |
98 |
62 |
142 |
b |
99 |
63 |
143 |
c |
100 |
64 |
144 |
d |
101 |
65 |
145 |
e |
102 |
66 |
146 |
f |
103 |
67 |
147 |
g |
104 |
68 |
150 |
h |
105 |
69 |
151 |
나는 |
106 |
6ᅡ |
152 |
j |
107 |
6ᄂ |
153 |
k |
108 |
6ᄃ |
154 |
l |
109 |
6D |
155 |
m |
110 |
6E |
156 |
n |
111 |
6층 |
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 |
7ᅡ |
172 |
z |
123 |
7ᄂ |
173 |
{ |
124 |
7ᄃ |
174 |
| |
125 |
7D |
175 |
} |
126 |
7E |
176 |
~ |
127 |
7층 |
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 |
8ᅡ |
212 |
è |
139 |
8ᄂ |
213 |
ï |
140 |
8ᄃ |
214 |
î |
141 |
8D |
215 |
ì |
142 |
8E |
216 |
Ä |
143 |
8층 |
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 |
9ᅡ |
232 |
Ü |
155 |
9ᄂ |
233 |
¢ |
156 |
9ᄃ |
234 |
£ |
157 |
9D |
235 |
¥ |
158 |
9E |
236 |
P |
159 |
9층 |
237 |
ƒ |
160 |
대답 0 |
240 |
á |
161 |
대답 1 |
241 |
í |
162 |
대답 2 |
242 |
ó |
163 |
대답 3 |
243 |
ú |
164 |
대답 4 |
244 |
ñ |
165 |
대답 5 |
245 |
Ñ |
166 |
대답 6 |
246 |
ª |
167 |
대답 7 |
247 |
º |
168 |
대답 8 |
250 |
¿ |
169 |
대답 9 |
251 |
¬ |
170 |
증권 시세 표시기 |
252 |
|
171 |
혈액형 |
253 |
1/2 |
172 |
교류 |
254 |
1/4 |
173 |
광고 |
255 |
¡ |
174 |
증권 시세 표시기 |
256 |
" |
175 |
AF |
257 |
" |
176 |
나0 |
260 |
¦ |
177 |
나1 |
262 |
¦ |
178 |
나2 |
262 |
¦ |
179 |
나3 |
263 |
¦ |
180 |
나4 |
264 |
¦ |
181 |
나5 |
265 |
¦ |
182 |
나6 |
266 |
¦ |
183 |
나7 |
267 |
+ |
184 |
나8 |
270 |
+ |
185 |
나9 |
271 |
¦ |
186 |
바 |
272 |
¦ |
187 |
증권 시세 표시기 |
273 |
+ |
188 |
기원전 |
274 |
+ |
189 |
증권 시세 표시기 |
275 |
+ |
190 |
있다 |
276 |
+ |
191 |
증권 시세 표시기 |
277 |
+ |
192 |
씨0 |
300 |
+ |
193 |
씨1 |
301 |
- |
194 |
씨2 |
302 |
- |
195 |
씨3 |
303 |
+ |
196 |
씨4 |
304 |
- |
197 |
씨5 |
305 |
+ |
198 |
씨6 |
306 |
¦ |
199 |
씨7 |
307 |
¦ |
200 |
씨8 |
310 |
+ |
201 |
씨9 |
311 |
+ |
202 |
캘리포니아 |
312 |
- |
203 |
콜럼븀 |
313 |
- |
204 |
참조 |
314 |
¦ |
205 |
시디 |
315 |
- |
206 |
세륨 |
316 |
+ |
207 |
증권 시세 표시기 |
317 |
- |
208 |
D0 |
320 |
- |
209 |
디1 |
321 |
- |
210 |
디2 |
322 |
- |
211 |
디3 |
323 |
+ |
212 |
디4 |
324 |
+ |
213 |
D5 |
325 |
+ |
214 |
6분기 |
326 |
+ |
215 |
D7 |
327 |
+ |
216 |
D8 |
330 |
+ |
217 |
D9 |
331 |
+ |
218 |
다 |
332 |
+ |
219 |
DB (디벨) |
333 |
¦ |
220 |
직류 |
334 |
_ |
221 |
증권 시세 표시기 |
335 |
¦ |
222 |
드 |
336 |
¦ |
223 |
증권 시세 표시기 |
337 |
¯ |
224 |
0회 |
340 |
a |
225 |
1회 |
341 |
ß |
226 |
2회 |
342 |
G |
227 |
3회 |
343 |
p |
228 |
4회 |
344 |
S |
229 |
5회 |
345 |
s |
230 |
6회 |
346 |
μ |
231 |
7회 |
347 |
t |
232 |
8회 |
350 |
F |
233 |
9회 |
351 |
T |
234 |
EA (영어) |
352 |
O |
235 |
증권 시세 표시기 |
353 |
d |
236 |
적능력 |
354 |
8 |
237 |
에드 |
355 |
f |
238 |
증권 시세 표시기 |
356 |
e |
239 |
증권 시세 표시기 |
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 |
파 |
372 |
﹒ |
251 |
증권 시세 표시기 |
373 |
v |
252 |
FC |
374 |
n |
253 |
증권 시세 표시기 |
375 |
² |
254 |
증권 시세 표시기 |
376 |
¦ |
255 |
Ff 로 |
377 |
|
예: 침입 탐지 및 방지(IDP) 프로토콜 디코더 구성
이 예는 침입 탐지 및 방지(IDP) 프로토콜 디코더 조정 가능 항목을 구성하는 방법을 보여줍니다.
요구 사항
시작하기 전에 침입 탐지 및 방지(IDP) 프로토콜 디코더 기능을 검토하십시오. 침입 탐지 및 방지(IDP) 프로토콜 디코더 이해를 참조하십시오.
개요
Junos IDP 모듈은 사전 구성된 프로토콜 디코더 세트와 함께 제공됩니다. 이러한 프로토콜 디코더에는 수행하는 다양한 프로토콜별 컨텍스트 검사에 대한 기본 설정이 있습니다. 기본 설정을 사용하거나 사이트의 특정 요구 사항에 맞게 조정할 수 있습니다. 이 예에서는 FTP에 대한 프로토콜 디코더를 조정하는 방법을 보여줍니다.
구성
절차
단계별 절차
침입 탐지 및 방지(IDP) 프로토콜 디코더 조정 가능 항목 구성:
조정 가능한 매개변수가 있는 프로토콜 목록을 봅니다.
[edit] user@host# edit security idp sensor-configuration detector protocol-name FTP
FTP 프로토콜에 대한 조정 가능한 매개 변수를 구성합니다.
[edit security idp sensor-configuration-detector protocol-name FTP] user@host# set tunable-name sc_ftp_failed_logins tunable-value 4 user@host# set tunable-name sc_ftp_failed_flags tunable value 1 user@host# set tunable-name sc_ftp_line_length tunable-value 1024 user@host# set tunable-name sc_ftp_password_length tunable-value 64 user@host# set tunable-name sc_ftp_sitestring_length tunable-value 512 user@host# set tunable-name sc_ftp_username_length tunable-value 32
디바이스 구성을 완료하면 구성을 커밋합니다.
[edit] user@host# commit
확인
구성이 제대로 작동하는지 확인하려면 명령을 입력합니다 show security idp status
.
다중 침입 탐지 및 방지(IDP) 탐지 및 방지(IDP) 지원 이해
새 보안 패키지가 수신되면 공격 정의와 탐지기가 포함됩니다. 보안 패키지의 특정 버전에서 공격 정의는 포함된 탐지기의 기능과 일치합니다. 디바이스에서 정책 에이징을 사용하지 않도록 설정하면(정책 에이징 명령에 대한 reset-on-policy 문 참조) 지정된 시간에 하나의 정책만 적용됩니다. 그러나 정책 에이징이 사용하도록 설정되어 있고 정책 업데이트가 있는 경우 새 정책이 로드될 때 기존 정책이 언로드되지 않습니다. 따라서 두 정책 모두 디바이스에 적용될 수 있습니다. 이 경우 모든 기존 세션은 기존 정책에 의해 계속 검사되고 새 세션은 새 정책으로 검사됩니다. 이전 정책을 사용하는 모든 기존 세션이 종료되거나 만료되면 이전 정책이 언로드됩니다.
정책이 로드되면 탐지기와도 연결됩니다. 로드 중인 새 정책에 기존 정책에서 이미 사용 중인 감지기와 일치하는 연결된 감지기가 있는 경우 새 감지기가 로드되지 않고 두 정책 모두 연결된 단일 감지기를 사용합니다. 그러나 새 감지기가 현재 감지기와 일치하지 않으면 새 감지기가 새 정책과 함께 로드됩니다. 이 경우 로드된 각 정책은 공격 탐지를 위해 연결된 자체 탐지기를 사용합니다.
주어진 시간에 최대 2개의 감지기를 로드할 수 있습니다. 두 개의 감지기가 이미 로드되어 있고(두 개 이상의 정책에 의해) 새 정책을 로드하려면 새 감지기도 로드해야 하는 경우, 로드된 감지기 중 하나 이상을 언로드해야 새 감지기를 로드할 수 있습니다. 탐지기가 언로드되기 전에 해당 탐지기를 사용하는 모든 정책도 언로드됩니다.
다음 명령을 입력하여 현재 정책 및 해당 감지기 버전을 볼 수 있습니다.
user@host> show security idp status
Junos OS 릴리스 18.4R1부터 새로운 침입 탐지 및 방지(IDP) 정책이 로드되면 새로 로드된 정책을 사용하여 기존 세션을 검사하고 기존 세션은 침입 탐지 및 방지(IDP) 처리를 위해 무시되지 않습니다. 침입 탐지 및 방지(IDP) 검사는 새 침입 탐지 및 방지(IDP) 정책이 로드된 후 탐지기에 의해 생성된 컨텍스트 기반 공격에 대해 계속됩니다.
콘텐츠 압축 풀기 이해
HTTP와 같은 애플리케이션 프로토콜에서는 콘텐츠를 압축한 다음 네트워크를 통해 전송할 수 있습니다. 서명 패턴은 인코딩되지 않은 트래픽 데이터와 일치하도록 작성되기 때문에 패턴은 압축된 콘텐츠와 일치하지 않습니다. 이 경우 IDP 탐지가 회피됩니다. HTTP 압축 콘텐츠에 대한 침입 탐지 및 방지(IDP) 탐지 회피를 방지하기 위해 프로토콜 콘텐츠의 압축을 해제하는 IDP 하위 모듈이 추가되었습니다. 서명 패턴 일치는 압축 해제된 콘텐츠에 대해 수행됩니다.
모든 IPS 카운터 값의 상태를 표시하려면 다음 명령을 입력합니다.
user@host> show security idp counters ips
일부 공격은 압축된 콘텐츠를 통해 도입됩니다. 콘텐츠의 압축을 풀면 매우 큰 크기로 팽창하여 귀중한 시스템 리소스를 차지하여 서비스 거부가 발생할 수 있습니다. 이러한 유형의 공격은 압축 해제된 데이터 크기와 압축된 데이터 크기의 비율로 인식할 수 있습니다. content-decompress-ratio-over-limit 카운터는 이 비율을 초과한 인시던트 수를 식별합니다. 기본 비율은 일반적인 환경과 일치하는 것으로 간주됩니다. 그러나 경우에 따라 값을 재설정 content-decompress-ratio-over-limit
하여 이 비율을 조정해야 할 수도 있습니다. 그러나 비율이 높을수록 이러한 유형의 공격을 탐지할 가능성이 줄어듭니다.
content-decompress-memory-over-limit 카운터는 압축 해제된 데이터의 양이 할당된 메모리를 초과한 인시던트 수를 식별합니다. 기본 메모리 할당은 동시에 압축 해제가 필요한 평균 세션 수에 대해 세션당 33KB를 제공합니다. 이 값이 사용자 환경과 일치하는지 확인하려면 압축 해제 관련 카운터의 값과 디바이스를 통과하는 총 IDP 세션 수를 분석하고 동시에 압축 해제가 필요한 세션 수를 추정합니다. 이러한 각 세션에 압축 해제를 위해 33KB의 메모리가 필요하다고 가정하면 예상 요구 사항을 기본값과 비교합니다. 필요한 경우 값을 재설정하여 메모리 할당을 조정할 수 있습니다 content-decompression-max-memory-kb
. 콘텐츠 압축 해제에는 상당한 메모리 할당이 필요하기 때문에 압축 해제를 위한 최대 메모리 할당을 늘리면 시스템 성능이 영향을 받습니다.
예: 침입 탐지 및 방지(IDP) 콘텐츠 압축 해제 구성
이 예에서는 침입 탐지 및 방지(IDP) 콘텐츠 압축 해제를 구성하는 방법을 보여줍니다.
요구 사항
시작하기 전에 IDP 콘텐츠 압축 해제 기능을 검토하십시오. Understanding Content Decompression(콘텐츠 압축 풀기 이해)을 참조하십시오
개요
압축 해제 기능은 기본적으로 비활성화되어 있습니다. 이 예에서는 감지기를 활성화하고, 최대 메모리를 50,000KB로 구성하고, 최대 압축 해제 비율을 16:1로 구성합니다.
압축 해제를 활성화하면 장치의 성능이 저하됩니다.
구성
절차
단계별 절차
침입 탐지 및 방지(IDP) 콘텐츠 압축 해제를 구성하려면:
감지기를 활성화합니다.
[edit] user@host# set security idp sensor‑configuration detector protocol‑name HTTP tunable‑name sc_http_compress_inflating tunable‑value 1
메모:감지기를 비활성화하려면 을
tunable‑value
0으로 설정합니다.필요한 경우 최대 메모리(KB)를 수정합니다.
[edit security idp] user@host# set sensor-configuration ips content-decompression-max-memory-kb 50000
필요한 경우 최대 감압 비율을 구성합니다.
[edit security idp] user@host# set sensor-configuration ips content-decompression-max-ratio 16
디바이스 구성을 완료하면 구성을 커밋합니다.
[edit] user@host# commit
확인
구성이 제대로 작동하는지 확인하려면 명령을 입력합니다 show security idp status ips
. content-decompress 카운터는 압축 해제 처리에 대한 통계를 제공합니다.
침입 탐지 및 방지(IDP) 서명 기반 공격 이해
사용자 지정 공격 객체를 구성하려면 고유한 이름을 지정한 다음 추가 정보를 지정하여 공격 객체를 쉽게 찾고 유지 관리할 수 있습니다.
공격 객체 정의의 특정 속성은 공격 이름, 심각도 수준, 서비스 또는 애플리케이션 바인딩, 시간 바인딩, 프로토콜 또는 포트 바인딩과 같은 모든 유형의 공격에 공통적입니다. 일부 필드는 공격 유형에 따라 다르며 특정 공격 정의에만 사용할 수 있습니다.
시그니처 공격 객체는 상태 저장 공격 시그니처(공격의 특정 섹션 내에 항상 존재하는 패턴)를 사용하여 알려진 공격을 탐지합니다. 또한 공격을 저지르는 데 사용되는 프로토콜 또는 서비스와 공격이 발생하는 컨텍스트도 포함됩니다. 다음 속성은 서명 공격에 특정하며, 공격 컨텍스트, 공격 방향, 공격 패턴 및 프로토콜별 매개 변수(TCP, UDP, ICMP 또는 IP 헤더 필드)와 같이 서명 공격을 구성할 때 구성할 수 있습니다.
시그니처 기반 공격을 구성할 때는 다음 사항에 유의하십시오.
공격 컨텍스트 및 방향은 시그니처 공격 정의를 위한 필수 필드입니다.
패턴 부정은 패킷, 라인 및 애플리케이션 기반 컨텍스트에 대해서만 지원되며 스트림 및 정규화된 스트림 컨텍스트에 대해서는 지원되지 않습니다.
프로토콜별 매개 변수를 구성할 때 IP, TCP, UDP 또는 ICMP 프로토콜 중 하나에 대해서만 필드를 지정할 수 있습니다.
프로토콜 바인딩을 구성할 때 IP, ICMP, TCP, UDP, RPC 또는 애플리케이션 중 하나만 지정할 수 있습니다.
IP - 프로토콜 번호는 필수 필드입니다.
TCP 및 UDP - 단일 포트(
minimum-port
) 또는 포트 범위(minimum-port
및maximum-port
)를 지정할 수 있습니다. 포트를 지정하지 않으면 기본값이 사용됩니다(0-65535
).RPC - 프로그램 번호는 필수 필드입니다.
Junos OS 릴리스 19.1R1부터 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(Deterministic Finite Automaton) 그룹이 형성됩니다. DFA 그룹에 있는 모든 시그니처의 패턴은 Hyperscan으로 전달되어 패킷의 모든 공격을 한 번에 확인하는 데 사용할 수 있는 단일 데이터베이스를 형성합니다. 각 공격에 대해 별도의 데이터베이스 대신 단일 데이터베이스가 사용되기 때문에 패턴 일치 프로세스가 효율적입니다.
확장 매개 변수로 서명이 구성되면 Hyperscan API는 구성된 매개 변수를 고려하여 데이터베이스를 형성합니다. 패턴 일치 프로세스는 이 새 데이터베이스가 있는 패킷 전달 엔진에서 발생합니다. 이러한 매개 변수를 사용하면 런타임에 원치 않는 일치 항목을 처리하기 위해 응용 프로그램에 의존하는 대신 패턴에 의해 생성된 일치 항목 집합을 컴파일 타임에 제한할 수 있습니다.
또한보십시오
예: 침입 탐지 및 방지(IDP) 서명 기반 공격 구성
이 예에서는 시그니처 기반 공격 객체를 생성하는 방법을 보여줍니다.
요구 사항
시작하기 전에 네트워크 인터페이스를 구성합니다.
개요
이 예제에서는 sig1이라는 서명 공격을 생성하고 다음 속성을 할당합니다.
권장 작업(패킷 삭제) - 대상에 도달하기 전에 일치하는 패킷을 삭제하지만 연결을 닫지는 않습니다.
시간 바인딩(Time binding) - 범위를 로
source
지정하고 카운트를 로10
지정합니다. 범위가 인source
경우 동일한 소스의 모든 공격이 계산되고 공격 수가 지정된 횟수(10
)에 도달하면 공격이 기록됩니다. 이 예제에서는 동일한 소스의 10번째 공격이 기록됩니다.공격 컨텍스트(패킷) - 패킷 내의 공격 패턴을 일치시킵니다.
공격 방향(모두) - 클라이언트에서 서버 및 서버와 클라이언트 간의 트래픽 양방향으로 공격을 탐지합니다.
프로토콜(TCP) - TTL 값을 128로 지정합니다.
Shellcode(Intel) - Intel 플랫폼에 대한 셸코드를 탐지하도록 플래그를 설정합니다.
프로토콜 바인딩 - TCP 프로토콜과 포트 50 - 100을 지정합니다.
서명 기반 공격 객체를 구성한 후에는 침입 탐지 및 방지(IDP) 정책 규칙의 일치 기준으로 공격을 지정합니다. 예: 침입 탐지 및 방지(IDP) IPS 규칙 베이스에 대한 규칙 정의를 참조하십시오.
구성
절차
CLI 빠른 구성
이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성과 일치시키는 데 필요한 세부 사항을 변경한 다음, 계층 수준에서 명령을 [edit]
CLI로 복사해 붙여 넣은 다음, 구성 모드에서 을 입력합니다 commit
.
set security idp custom-attack sig1 severity major set security idp custom-attack sig1 recommended-action drop-packet set security idp custom-attack sig1 time-binding scope source count 10 set security idp custom-attack sig1 attack-type signature context packet set security idp custom-attack sig1 attack-type signature shellcode intel set security idp custom-attack sig1 attack-type signature protocol ip ttl value 128 match equal set security idp custom-attack sig1 attack-type signature protocol-binding tcp minimum-port 50 maximum-port 100 set security idp custom-attack sig1 attack-type signature direction any
단계별 절차
다음 예제에서는 구성 계층의 다양한 수준을 탐색해야 합니다. 이를 수행하는 방법에 대한 지침은 CLI 사용자 가이드의 구성 모드에서 CLI 편집기 사용을 참조하십시오.
서명 기반 공격 객체를 생성하려면 다음을 수행합니다.
공격의 이름을 지정합니다.
[edit] user@host# edit security idp custom-attack sig1
공격에 대한 공통 속성을 지정합니다.
[edit security idp custom-attack sig1] user@host# set severity major user@host# set recommended-action drop-packet user@host# set time-binding scope source count 10
공격 유형 및 컨텍스트를 지정합니다.
[edit security idp custom-attack sig1] user@host# set attack-type signature context packet
공격 방향과 쉘코드 플래그를 지정합니다.
[edit security idp custom-attack sig1] user@host# set attack-type signature shellcode intel
프로토콜 및 해당 필드를 설정합니다.
[edit security idp custom-attack sig1] user@host# set attack-type signature protocol ip ttl value 128 match equal
프로토콜 바인딩 및 포트를 지정합니다.
[edit security idp custom-attack sig1] user@host# set attack-type signature protocol-binding tcp minimum-port 50 maximum-port 100
방향을 지정합니다.
[edit security idp custom-attack sig1] user@host# set attack-type signature direction any
결과
구성 모드에서 명령을 입력하여 show security idp
구성을 확인합니다. 출력이 의도한 구성을 표시하지 않으면, 이 예의 구성 지침을 반복하여 수정합니다.
[edit] user@host# show security idp custom-attack sig1 { recommended-action drop-packet; severity major; time-binding { count 10; scope source; } attack-type { signature { protocol-binding { tcp { minimum-port 50 maximum-port 100; } } context packet; direction any; shellcode intel; protocol { ip { ttl { match equal; value 128; } } } } } }
디바이스 구성을 마쳤으면 구성 모드에서 을 입력합니다 commit
.
침입 탐지 및 방지(IDP) 프로토콜 이상 기반 공격 이해
프로토콜 이상 공격 객체는 프로토콜 사양(RFC 및 일반적인 RFC 확장)을 위반하는 알려지지 않았거나 정교한 공격을 탐지합니다. 새로운 프로토콜 변칙을 생성할 수는 없지만, 탐지 시 디바이스가 사전 정의된 프로토콜 변칙을 처리하는 방법을 제어하는 새로운 공격 객체를 구성할 수 있습니다.
다음 속성은 프로토콜 이상 공격과 관련이 있습니다.
공격 방향
테스트 조건
프로토콜 변칙 기반 공격을 구성할 때는 다음 사항에 유의하세요.
서비스 또는 응용 프로그램 바인딩은 프로토콜 이상 공격에 대한 필수 필드입니다. 지원되는 응용 프로그램 외에도 서비스에는 IP, TCP, UDP, ICMP 및 RPC도 포함됩니다.
공격 방향 및 테스트 조건 속성은 변칙 공격 정의를 구성하기 위한 필수 필드입니다.
예: 침입 탐지 및 방지(IDP) 프로토콜 이상 기반 공격 구성
이 예는 프로토콜 변칙 기반 공격 객체를 생성하는 방법을 보여줍니다.
요구 사항
시작하기 전에 네트워크 인터페이스를 구성합니다.
개요
이 예제에서는 anomaly1이라는 프로토콜 이상 공격을 생성하고 다음 속성을 할당합니다.
시간 바인딩 - 지정된 횟수만큼
peer
세션의 소스 및 대상 IP 주소 간의 이상 징후를 탐지하기 위해 범위를 as 및 count as2
로 지정합니다.심각도(정보) - 조건과 일치하는 모든 공격에 대한 정보를 제공합니다.
공격 방향(모두) - 클라이언트에서 서버 및 서버와 클라이언트 간의 트래픽 양방향으로 공격을 탐지합니다.
서비스(TCP) - TCP 서비스를 사용하여 공격을 일치시킵니다.
테스트 조건(OPTIONS_UNSUPPORTED) - 미리 정의된 특정 테스트 조건과 일치합니다. 이 예에서 조건은 공격에 지원되지 않는 옵션이 포함된 경우 일치시키는 것입니다.
쉘코드(sparc) - Sparc 플랫폼에 대한 쉘코드를 탐지하도록 플래그를 설정합니다.
프로토콜 이상 기반 공격 객체를 구성한 후에는 침입 탐지 및 방지(IDP) 정책 규칙에서 공격을 일치 기준으로 지정합니다. 예: 침입 탐지 및 방지(IDP) IPS 규칙 베이스에 대한 규칙 정의를 참조하십시오.
구성
절차
CLI 빠른 구성
이 예를 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성과 일치시키는 데 필요한 세부 사항을 변경한 다음, 계층 수준에서 명령을 [edit]
CLI로 복사해 붙여 넣은 다음, 구성 모드에서 을 입력합니다 commit
.
set security idp custom-attack anomaly1 severity info set security idp custom-attack anomaly1 time-binding scope peer count 2 set security idp custom-attack anomaly1 attack-type anomaly test OPTIONS_UNSUPPORTED set security idp custom-attack sa set security idp custom-attack sa attack-type anomaly service TCP set security idp custom-attack sa attack-type anomaly direction any set security idp custom-attack sa attack-type anomaly shellcode sparc
단계별 절차
다음 예제에서는 구성 계층의 다양한 수준을 탐색해야 합니다. 이를 수행하는 방법에 대한 지침은 CLI 사용자 가이드의 구성 모드에서 CLI 편집기 사용을 참조하십시오.
프로토콜 이상 징후 기반 공격 객체를 생성하려면 다음을 수행합니다.
공격의 이름을 지정합니다.
[edit] user@host# edit security idp custom-attack anomaly1
공격에 대한 공통 속성을 지정합니다.
[edit security idp custom-attack anomaly1] user@host# set severity info user@host# set time-binding scope peer count 2
공격 유형 및 테스트 조건을 지정합니다.
[edit security idp custom-attack anomaly1] user@host# set attack-type anomaly test OPTIONS_UNSUPPORTED
변칙 공격에 대한 다른 속성을 지정합니다.
[edit security idp custom-attack anomaly1] user@host# set attack-type anomaly service TCP user@host# set attack-type anomaly direction any user@host# attack-type anomaly shellcode sparc
결과
구성 모드에서 명령을 입력하여 show security idp
구성을 확인합니다. 출력이 의도한 구성을 표시하지 않으면, 이 예의 구성 지침을 반복하여 수정합니다.
[edit] user@host# show security idp custom-attack anomaly1 { severity info; time-binding { count 2; scope peer; } attack-type { anomaly { test OPTIONS_UNSUPPORTED; service TCP; direction any; shellcode sparc; } } }
디바이스 구성을 마쳤으면 구성 모드에서 을 입력합니다 commit
.
침입 탐지 및 방지(IDP) 정책 구성 개요
Junos OS 침입 탐지 및 방지(IDP) 정책을 사용하면 침입 탐지 및 방지(IDP) 지원 디바이스를 통과하는 네트워크 트래픽에 대해 다양한 공격 탐지 및 방지 기술을 선택적으로 시행할 수 있습니다. 이를 통해 영역, 네트워크 및 애플리케이션을 기반으로 트래픽 섹션과 일치하는 정책 규칙을 정의한 다음 해당 트래픽에 대해 능동 또는 수동 예방 조치를 취할 수 있습니다.
침입 탐지 및 방지(IDP) 정책은 디바이스가 네트워크 트래픽을 처리하는 방법을 정의합니다. 네트워크를 통과하는 트래픽에 대해 다양한 공격 탐지 및 방지 기술을 적용할 수 있습니다.
정책은 규칙 기반으로 구성되며 각 규칙 기반에는 규칙 집합이 포함되어 있습니다. 트래픽 일치 조건, 작업 및 로깅 요구 사항과 같은 규칙 매개 변수를 정의한 다음 규칙 기반에 규칙을 추가합니다. 하나 이상의 규칙 기반에 규칙을 추가하여 침입 탐지 및 방지(IDP) 정책을 생성한 후 해당 정책을 디바이스의 활성 정책으로 선택할 수 있습니다.
침입 탐지 및 방지(IDP) 정책을 구성하려면 다음 단계를 수행합니다.
보안 정책에서 침입 탐지 및 방지(IDP)를 활성화합니다.
침입 탐지 및 방지(IDP) 정책 규칙, 침입 탐지 및 방지(IDP) 규칙 기반 및 침입 탐지 및 방지(IDP) 규칙 작업을 구성합니다. 예: 침입 탐지 및 방지(IDP) 규칙 베이스에 규칙 삽입 , 예: 침입 탐지 및 방지(IDP) IPS 규칙 베이스에 대한 규칙 정의 및 예: 보안 디바이스에 대한 재작성 규칙 구성 및 적용 주제를 참조하십시오.
침입 탐지 및 방지(IDP) 사용자 지정 서명을 구성합니다. 침입 탐지 및 방지(IDP) 서명 기반 공격 이해 및 예: 침입 탐지 및 방지(IDP) 서명 기반 공격 구성 항목을 참조하십시오.
침입 탐지 및 방지(IDP) 서명 데이터베이스를 업데이트합니다. 침입 탐지 및 방지(IDP) 서명 데이터베이스 업데이트 개요를 참조하십시오.
IPv6 비밀 채널 개요
은밀한 채널은 기존 정보 채널을 통해 무단으로 또는 불법적인 방식으로 객체를 전송하여 정보를 전달할 수 있는 공격 기술입니다. 은밀한 채널의 도움으로 공격자는 네트워크에서 악의적 인 활동을 수행 할 수 있습니다.
Junos OS 릴리스 19.1R1부터 침입 탐지 및 방지(IDP)에서 IPv6 확장 헤더에 대한 은밀한 채널 식별 및 완화가 지원됩니다. 기존 보안 시스템을 위반하는 정보 전송입니다. 침입 탐지 및 방지(IDP)용 보안 패키지에는 침입 탐지 및 방지(IDP) 정책에서 공격에 대한 트래픽을 일치시키는 데 사용할 수 있는 은밀한 채널에 대한 사전 정의된 침입 탐지 및 방지(IDP) 공격 객체의 데이터베이스가 포함되어 있습니다.
이 지원의 일환으로 IPv6 확장 헤더 이상을 탐지하고 플래그를 지정하여 비밀 채널을 설정하고 정책에 지정된 조치를 취할 수 있습니다. 은밀한 채널 공격은 다른 공격과 함께 에 Show security idp attack table
표시됩니다.
변경 내역 테이블
기능 지원은 사용 중인 플랫폼 및 릴리스에 따라 결정됩니다. 기능 탐색기 를 사용하여 플랫폼에서 기능이 지원되는지 확인합니다.
interval interval-value
사용자 지정 시간 바인딩을
[edit security idp custom-attack attack-name time-binding]
구성하기 위해 계층에 도입됩니다.
set security idp custom-attack
.