Google SecOps와 Nmap 통합
이 문서에서는 Nmap을 Google Security Operations와 통합하는 방법을 설명합니다.
통합 버전: 1.0
통합 매개변수
Nmap 통합에는 매개변수가 필요하지 않습니다.
작업
작업에 대한 자세한 내용은 내 Workdesk에서 대기 중인 작업에 응답 및 수동 작업 실행을 참고하세요.
핑
Ping 작업을 사용하여 Nmap과의 연결을 테스트합니다.
이 작업은 Google SecOps 항목에서 실행되지 않습니다.
작업 입력
없음
작업 출력
Ping 작업은 다음 출력을 제공합니다.
작업 출력 유형 | 가용성 |
---|---|
케이스 월 연결 | 사용할 수 없음 |
케이스 월 링크 | 사용할 수 없음 |
케이스 월 테이블 | 사용할 수 없음 |
보강 테이블 | 사용할 수 없음 |
JSON 결과 | 사용할 수 없음 |
출력 메시지 | 사용 가능 |
스크립트 결과 | 사용 가능 |
출력 메시지
Ping 작업은 다음 출력 메시지를 반환할 수 있습니다.
출력 메시지 | 메시지 설명 |
---|---|
|
작업이 완료되었습니다. |
Failed to connect to the Nmap server!
Error is ERROR_REASON |
작업이 실패했습니다. 서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인합니다. |
스크립트 결과
다음 표에는 Ping 작업을 사용할 때 스크립트 결과 출력 값이 나와 있습니다.
스크립트 결과 이름 | 값 |
---|---|
is_success |
True 또는 False |
항목 스캔
항목 스캔 작업을 사용하여 Nmap으로 Google SecOps 항목을 스캔합니다.
이 작업은 다음 Google SecOps 항목에서 실행됩니다.
IP Address
Hostname
Domain
작업 입력
엔티티 스캔 작업에는 다음 매개변수가 필요합니다.
매개변수 | 설명 |
---|---|
IP Address |
(선택사항) 스캔할 IP 주소입니다. 이러한 IP 주소는 엔티티와 함께 처리됩니다. |
Hostname |
(선택사항) 스캔할 호스트 이름입니다. 이러한 호스트 이름은 엔티티와 함께 처리됩니다. |
Options |
필수 항목입니다. Nmap 스캔 매개변수를 지정합니다. 기본값은 이러한 옵션은 TCP 연결 스캔 ( |
작업 출력
엔티티 스캔 작업은 다음 출력을 제공합니다.
작업 출력 유형 | 가용성 |
---|---|
케이스 월 연결 | 사용할 수 없음 |
케이스 월 링크 | 사용할 수 없음 |
케이스 월 테이블 | 사용할 수 없음 |
보강 테이블 | 사용 가능 |
JSON 결과 | 사용 가능 |
출력 메시지 | 사용 가능 |
스크립트 결과 | 사용 가능 |
항목 보강 테이블
엔티티 스캔 작업은 다음 엔티티 보강을 지원합니다.
보강 필드 | 소스 (JSON 키) | 논리 |
---|---|---|
NMAP_state |
status_state |
(가능한 경우) |
NMAP_related_addresses_{addrtype} |
각 addrtype 에 대해 {addr} 값의 쉼표로 구분된 목록을 제공합니다. |
(가능한 경우) |
NMAP_related_hostnames |
hostnames.name |
(가능한 경우) |
NMAP_port_{ports.portid} |
이 항목은 감지된 각 포트의 필드를 동적으로 만들어 상태 (예: 열림, 닫힘)와 실행 중인 서비스를 표시합니다. |
(가능한 경우) |
NMAP_os_matches |
{os.osmatches.name} CSV |
(가능한 경우) |
NMAP_last_boot |
{uptime.lastboot} |
(가능한 경우) |
JSON 결과
다음 예시에서는 엔티티 스캔 작업을 사용할 때 수신되는 JSON 결과 출력을 보여줍니다.
[
{
"Entity": "50.116.62.192",
"EntityResult": {
"status": {
"state": "up",
"reason": "syn-ack",
"reason_ttl": "0"
},
"addresses": [
{
"addr": "50.116.62.192",
"addrtype": "ipv4"
}
],
"hostnames": [
{
"name": "k3s-agent1.hegedus.wtf",
"type": "PTR"
}
],
"ports": {
"extraports": [
{
"state": "closed",
"count": "996",
"reasons": [
{
"reason": "conn-refused",
"count": "996"
}
]
}
],
"ports": [
{
"protocol": "tcp",
"portid": "80",
"status": {state.state},
"service_name": {service.name},
"state": {
"state": "open",
"reason": "syn-ack",
"reason_ttl": "0"
},
"service": {
"name": "http",
"servicefp": "SF-Por\r\\n400\\x20Bad\\x20Request\");",
"method": "table",
"conf": "3"
}
},
{
"protocol": "tcp",
"portid": "443",
"state": {
"state": "open",
"reason": "syn-ack",
"reason_ttl": "0"
},
"service": {
"name": "https",
"servicefp":
"SF-Port443-TCP:V=6.40%I=7%D=5/23%Time=68305D69%P=x86_64-redhat-linux-gnu%r(HTTPOptions,B0,\"HTTP/1\\.0\\x20404\\x20Not\\x20Found\\r\\nContent-Type:\\x20text/plain;\\x20charset=utf-8\\r\\nX-Content-Type-Options:\\x20nosniff\\r\\nDate:\\x20Fri,\\x2023\\x20May\\x202025\\x2011:35:05\\x20GMT\\r\\nContent-Length:\\x2019\\r\\n\\r\\n404\\x20page\\x20not\\x20found\\n\")%r(SSLSessionReq,7,\"\\x15\\x03\\x01\\0\\x02\\x02F\")%r(SSLv23SessionReq,7,\"\\x15\\x03\\x01\\0\\x02\\x02F\")%r(GenericLines,67,\"HTTP/1\\.1\\x20400\\x20Bad\\x20Request\\r\\nContent-Type:\\x20text/plain;\\x20charset=utf-8\\r\\nConnection:\\x20close\\r\\n\\r\\n400\\x20Bad\\x20Request\")%r(GetRequest,B0,\"HTTP/1\\.0\\x20404\\x20Not\\x20Found\\r\\nContent-Type:\\x20text/plain;\\x20charset=utf-8\\r\\nX-Content-Type-Options:\\x20nosniff\\r\\nDate:\\x20Fri,\\x2023\\x20May\\x202025\\x2011:35:16\\x20GMT\\r\\nContent-Length:\\x2019\\r\\n\\r\\n404\\x20page\\x20not\\x20found\\n\")%r(RTSPRequest,67,\"HTTP/1\\.1\\x20400\\x20Bad\\x20Request\\r\\nContent-Type:\\x20text/plain;\\x20charset=utf-8\\r\\nConnection:\\x20close\\r\\n\\r\\n400\\x20Bad\\x20Request\")%r(RPCCheck,7,\"\\x15\\x03\\x01\\0\\x02\\x02F\")%r(Help,67,\"HTTP/1\\.1\\x20400\\x20Bad\\x20Request\\r\\nContent-Type:\\x20text/plain;\\x20charset=utf-8\\r\\nConnection:\\x20close\\r\\n\\r\\n400\\x20Bad\\x20Request\")%r(Kerberos,67,\"HTTP/1\\.1\\x20400\\x20Bad\\x20Request\\r\\nContent-Type:\\x20text/plain;\\x20charset=utf-8\\r\\nConnection:\\x20close\\r\\n\\r\\n400\\x20Bad\\x20Request\")%r(FourOhFourRequest,B0,\"HTTP/1\\.0\\x20404\\x20Not\\x20Found\\r\\nContent-Type:\\x20text/plain;\\x20charset=utf-8\\r\\nX-Content-Type-Options:\\x20nosniff\\r\\nDate:\\x20Fri,\\x2023\\x20May\\x202025\\x2011:35:32\\x20GMT\\r\\nContent-Length:\\x2019\\r\\n\\r\\n404\\x20page\\x20not\\x20found\\n\")%r(LPDString,67,\"HTTP/1\\.1\\x20400\\x20Bad\\x20Request\\r\\nContent-Type:\\x20text/plain;\\x20charset=utf-8\\r\\nConnection:\\x20close\\r\\n\\r\\n400\\x20Bad\\x20Request\")%r(SIPOptions,67,\"HTTP/1\\.1\\x20400\\x20Bad\\x20Request\\r\\nContent-Type:\\x20text/plain;\\x
20charset=utf-8\\r\\nConnection:\\x20close\\r\\n\\r\\n400\\x20Bad\\x20Request\");",
"method": "table",
"conf": "3"
}
},
{
"protocol": "tcp",
"portid": "2222",
"state": {
"state": "open",
"reason": "syn-ack",
"reason_ttl": "0"
},
"service": {
"name": "ssh",
"product": "OpenSSH",
"version": "8.4p1 Debian 5",
"extrainfo": "protocol 2.0",
"ostype": "Linux",
"method": "probed",
"conf": "10",
"cpes": [
"cpe:/a:openbsd:openssh:8.4p1",
"cpe:/o:linux:linux_kernel"
]
}
},
{
"protocol": "tcp",
"portid": "9100",
"state": {
"state": "open",
"reason": "syn-ack",
"reason_ttl": "0"
},
"service": {
"name": "jetdirect",
"method": "table",
"conf": "3"
}
}
]
}
}
}
]
출력 메시지
엔티티 스캔 작업은 다음 출력 메시지를 반환할 수 있습니다.
출력 메시지 | 메시지 설명 |
---|---|
|
작업이 완료되었습니다. |
Error executing action "Scan Entities". Reason:
ERROR_REASON |
작업이 실패했습니다. 서버, 입력 매개변수 또는 사용자 인증 정보에 대한 연결을 확인합니다. |
스크립트 결과
다음 표에는 엔티티 스캔 작업을 사용할 때 스크립트 결과 출력의 값이 나와 있습니다.
스크립트 결과 이름 | 값 |
---|---|
is_success |
True 또는 False |
도움이 더 필요하신가요? 커뮤니티 회원 및 Google SecOps 전문가로부터 답변을 받으세요.