문서API 참조
Documentation

사용자 지정 Sandfly 생성

커스텀 Sandfly를 정의하는 것은 특정 JSON 구조와 다양한 값들을 포함합니다. 일부는 필수이고, 일부는 선택적이며, 사용되는 엔진에 따라 달라지는 것들도 있습니다. 이 섹션에서는 이러한 세부사항과 함께 자신만의 sandfly를 만드는 데 도움이 되는 예제를 제공합니다.

Sandfly JSON 세부사항

커스텀 sandfly는 아래 JSON과 유사한 형태를 가지고 있습니다. 각 섹션이 의미하는 바에 대해서는 아래에서 자세히 설명하겠습니다.

{ "active": true, "author": "Sandfly Security", "comment": "", "description": "Searches for generic shell commands that may be operating as a backdoor on the system (variant 1).", "format": "4.0", "max_cpu_load": 1, "max_disk_load": 1, "max_timeout": 360, "name": "process_backdoor_bindshell_generic_1_copy", "options": { "engines": [ "sandfly_engine_process" ], "explanation": "The process name '{process.name}' with PID '{process.pid}' may be operating as a generic shell backdoor based on the command line contents. Check this process and any open network ports to be sure it is not malicious as it could allow remote access or exfiltration of data.", "response": { "process": { "kill": false, "suspend": false } }, "rule_op": "and", "rules": [ "process.cmdline matches '(.*/dev/(tcp|udp)/.*/[0-9]{1,5})'", "process.network_ports.operating == true" ] }, "severity": 5, "tags": [ "attack.id.T1048", "attack.id.T1059", "attack.id.T1095", "attack.tactic.command_and_control", "attack.tactic.execution", "attack.tactic.exfiltration", "process" ], "type": "process", "version": "2024-01-15T19:00:00.000Z", "custom": false, "date_added": "2024-01-15T19:00:08.000Z" }

헤더

커스텀 Sandfly의 헤더는 시스템에 대해 그것이 무엇인지를 설명합니다. 이것은 데이터베이스에서 Sandfly를 구성하고 UI에 표시하는 데 사용됩니다. 주요 요소는 다음과 같습니다:

  • name - 값에 소문자와 밑줄(_) 문자만을 사용하는 Sandfly의 이름입니다.
  • author - 이 Sandfly의 작성자 이름입니다.
  • comment - Sandfly가 어떻게 작동하는지 설명하는 추가 주석으로, 필요한 경우 (Sandfly 사용자가 아닌) Sandfly 작성자에게 명확한 설명을 제공하기 위한 것입니다.
  • description - UI 목록에 표시되는 Sandfly가 수행하는 작업에 대한 간단한 설명입니다.
  • format - Sandfly 형식 버전입니다. 기본값을 사용하고 변경하지 마십시오. 그렇지 않으면 Sandfly가 거부됩니다.
  • max_timeout - 이 Sandfly가 시스템에 의해 중지되기 전에 실행할 수 있는 최대 초 수입니다. 허용되는 최대 타임아웃 값은 1800초(30분)입니다. 허용되는 최소값은 1초입니다.
  • max_cpu_load - 이 Sandfly가 원격 호스트에 유발할 수 있는 상대적 로딩입니다. 값 1이 가장 낮고 값 3이 가장 높습니다.
  • max_disk_load - 이 Sandfly가 원격 호스트에 유발할 수 있는 상대적 디스크 로드입니다. 값 1이 가장 낮고 값 3이 가장 높습니다.
  • severity - 환경 내에서 사용하기 위해 Sandfly를 개인화하는 데 사용되는 0에서 5 범위의 값입니다.
  • tags - 이 Sandfly에 적용되는 정보 태그입니다. 최소한 각 Sandfly는 해당 유형과 일치하는 태그를 가져야 합니다.
  • type - directory, file, incident, log, policy, process, recon 또는 user 중 하나입니다. 다른 값은 거부됩니다.
  • version - 작성자가 Sandfly의 버전을 나타내기 위한 정보 버전 문자열입니다.
  • options - 포렌식 엔진에 전달할 옵션입니다. 자세한 내용은 Custom Sandfly Options를 참조하십시오.

sandfly 명명과 관련된 중요 사항:

  • 커스텀 sandfly는 기존 시스템 sandfly의 이름으로 절대 저장될 수 없습니다.
    • 시스템 sandfly를 확장해야 하는 경우, 동일한 기본 이름을 사용하고 단순히 추가 식별자를 더하여 이것이 시스템 sandfly의 수정된 버전임을 나타낼 수 있습니다.
    • 예시: 'dirs_hidden_bin'은 'dirs_hidden_bin_modified' 또는 'dirs_hidden_bin_internal'이 될 수 있습니다.
  • 커스텀 sandfly 이름이 고유한지 확인하세요. 새로운 또는 업로드된 커스텀 sandfly가 기존 커스텀 sandfly와 같은 이름을 가진다면, 저장할 때 내용에 관계없이 기존 sandfly를 완전히 덮어쓰게 됩니다.
❗️

중요: 동일한 이름을 가진 커스텀 Sandfly는 덮어쓰기됩니다!

커스텀 sandfly 이름이 고유한지 확인하세요. 새로운 또는 업로드된 커스텀 sandfly가 기존 커스텀 sandfly와 같은 이름을 가진다면, 저장할 때 내용에 관계없이 기존 sandfly를 완전히 덮어쓰게 됩니다.


이 페이지가 도움이 되었습니까?