Command Line Reference¶
banshee¶
PS Banshee เป็นเครื่องมือบรรทัดคำสั่ง (command-line tool) สำหรับเข้าถึง Recorded Future Intelligence ได้อย่างรวดเร็วและมีประสิทธิภาพ ออกแบบมาสำหรับผู้เชี่ยวชาญด้านความปลอดภัยและทีม SOC
Usage
Commands
banshee caค้นหา ดูข้อมูล และอัปเดต Recorded Future Classic Alerts
banshee emailเสริมข้อมูลไฟล์อีเมล (EML) ด้วย Recorded Future intelligence
banshee entityค้นหาและดูข้อมูล entity ของ Recorded Future
banshee iocค้นหาและดูข้อมูล Indicators of Compromise (IOC)
banshee listจัดการ Recorded Future lists และ Watch lists
banshee pbaค้นหา ดูข้อมูล และอัปเดต Recorded Future Playbook Alerts
banshee pcapวิเคราะห์ไฟล์ packet capture (pcap) โดยเสริมข้อมูลด้วย Recorded Future Intelligence
banshee risklistจัดการ Risk Lists
banshee rulesค้นหาและดาวน์โหลด detection rules
banshee ca¶
ค้นหา ดูข้อมูล และอัปเดต Recorded Future Classic Alerts
Usage
Commands
banshee ca lookupดูข้อมูล Classic Alert
banshee ca searchค้นหา Classic Alerts
banshee ca rulesค้นหา Classic Alert rules
banshee ca updateอัปเดต Classic Alert หนึ่งรายการหรือมากกว่า
banshee ca exportส่งออก Classic Alerts เป็น JSON หรือ CSV
banshee ca lookup¶
ดูข้อมูล Classic Alert
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Arguments
ALERT_IDAlert ID ที่ต้องการดูข้อมูล
Options
banshee ca search¶
ค้นหา Classic Alerts
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Options
--triggered,-ttriggered-
กรองตามเวลาที่ triggered เช่น: 1d; 12h; [2024-08-01, 2024-08-14]; [2024-09-23 12:03:58.000, 2024-09-23 12:03:58.567)
ค่าเริ่มต้นคือ 1d
--rulerule-name-
กรองตามชื่อ alert rule (freetext)
--status,-salert-status-
กรองตามสถานะของ alert
ค่าที่เป็นไปได้:
New,Pending,Dismissed,Resolved --pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
banshee ca rules¶
ค้นหา Classic Alert rules
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Arguments
FREETEXTไม่บังคับ ข้อความอิสระที่ใช้กรอง alert rules ตามชื่อ
Options
banshee ca update¶
อัปเดต Classic Alert หนึ่งรายการหรือมากกว่า
Usage
Arguments
- ALERT_IDS
Alert ID หนึ่งรายการหรือมากกว่า คั่นด้วยช่องว่าง
Options
--status,-salert-status-
อัปเดต alert ไปยังสถานะที่ระบุ
ค่าที่เป็นไปได้:
New,Pending,Dismissed,Resolved --note,-nnote-
ข้อความบันทึกสำหรับ alert
ความยาวสูงสุดของบันทึกคือ 1,000 อักขระ
--append,-a-
Flag นี้จะต่อท้ายข้อความบันทึก หาก alert มีบันทึกอยู่แล้ว
--assignee,-aassignee-
ผู้ใช้ใหม่ที่ต้องการมอบหมาย alert ให้ รับค่า uhash หรืออีเมลของผู้ใช้ เช่น: uhash:3aXZxdkM12, analyst@acme.com
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Example Usage
ระบุ Alert ID หนึ่งรายการหรือมากกว่า (คั่นด้วยช่องว่าง) และกำหนดตัวเลือกการอัปเดตที่ต้องการ:
banshee ca update -s Dismissed
banshee ca update -s Dismissed -n "note text"
banshee ca update -s Dismissed -n "note text" -a analyst@acme.com
Supplying Alert IDs
1. ระบุโดยตรงเป็น arguments (รายการเดียวหรือหลายรายการ):
banshee ca update ALERT_ID -s Resolved
banshee ca update ALERT_ID_1 ALERT_ID_2 -s Pending
2. จากไฟล์หรือ standard input:
หากมีไฟล์ (เช่น alerts.txt) ที่มี Alert ID หนึ่งรายการต่อบรรทัด:
ALERT_ID_1
ALERT_ID_2
ALERT_ID_3
สามารถอัปเดต alert ทั้งหมดที่ระบุในไฟล์ได้โดยใช้:
banshee ca update -s Dismissed < alerts.txt
cat alerts.txt | banshee ca update -s Dismissed
3. โดย pipe จากคำสั่ง search:
ใช้เครื่องมืออย่าง jq เพื่อดึง Alert ID จากผลการค้นหาและ pipe เข้าสู่คำสั่ง update:
banshee ca search | jq -r '.[].id' | banshee ca update -n "Investigation started"
Note Append
Classic Alerts รองรับบันทึกเพียงรายการเดียว โดยค่าเริ่มต้น คำสั่ง update จะเขียนทับบันทึกที่มีอยู่ด้วยบันทึกใหม่
หากต้องการต่อท้ายบันทึกใหม่แทน ให้ใช้ตัวเลือก --append (-A)
banshee ca export¶
ส่งออก Classic Alerts เป็น JSON หรือ CSV โดยอ่าน alert ID จาก stdin — โดยทั่วไปจะ pipe มาจาก banshee ca search
Output Formats
JSON (ค่าเริ่มต้น) — ส่งออก object alert แบบ เต็มรูปแบบ สำหรับแต่ละ ID ตามที่ Recorded Future API ส่งกลับมา ประกอบด้วยฟิลด์ระดับบนสุดทั้งหมด รวมถึง hits, entities, evidence, AI insights, review history, portal URLs และอื่น ๆ เหมาะสำหรับการนำไปใช้กับเครื่องมือ downstream, jq pipelines หรือการนำเข้าใหม่
CSV (--csv) — ส่งออกสรุประดับสูงสำหรับใช้กับ spreadsheet และการรายงาน โดยเขียนเฉพาะ 11 คอลัมน์ที่ระบุด้านล่าง (โดยมีแถวหัวตารางก่อน) และละเว้นฟิลด์อื่นที่มีอยู่ใน JSON response ทั้งหมด
| Field | Description |
|---|---|
ID |
Classic Alert ID |
Priority |
ลำดับความสำคัญของ alert — High หาก alert rule เป็น priority rule มิฉะนั้นจะเป็น Informational |
Alert Rule |
ชื่อของ alert rule ที่ถูก trigger |
Status |
สถานะบน portal เช่น New, Pending, Dismissed, Resolved |
Created |
timestamp ที่ถูก trigger (UTC) |
Updated |
timestamp ที่อัปเดตล่าสุด — ปัจจุบันว่างเสมอ สงวนไว้สำหรับ API ในอนาคต |
Title |
ชื่อของ alert |
Assignee |
ผู้ใช้ที่ได้รับมอบหมาย (uhash หรืออีเมล) |
URL |
Recorded Future portal URL สำหรับ alert |
Entities |
ชื่อ entity หลัก คั่นด้วย ; |
Recorded Future AI Insights |
ข้อความ insight ที่สร้างโดย AI หรือความคิดเห็น |
Usage
Options
--csv-
ส่งออกเป็น CSV ด้วยชุดคอลัมน์ที่กำหนดตามที่อธิบายข้างต้น หากไม่ระบุ flag นี้ คำสั่งจะส่งออกเป็น JSON
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Piped Input
banshee ca export รับเฉพาะ input ที่ pipe มาเท่านั้น โดยจะนำ JSON array ที่ banshee ca search สร้างขึ้นมาดึง alert ID และดึงข้อมูล alert แต่ละรายการแบบเต็ม การรันคำสั่งโดยไม่มี pipe จะถูกปฏิเสธพร้อมข้อผิดพลาด
Example Usage
banshee ca search -t 1d | banshee ca export
banshee ca search -t 1d -r "Leaked Credential Monitoring" | banshee ca export > credential_alerts.json
banshee ca search -t 12h -s New | banshee ca export --csv > alerts.csv
banshee entity¶
ค้นหาและดูข้อมูล entity ของ Recorded Future
Usage
Commands
banshee entity lookupดูข้อมูล entity ตาม ID
banshee entity searchค้นหา entity ตามชื่อและ/หรือประเภท
banshee entity lookup¶
ดูข้อมูล entity ตาม ID
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Arguments
- ENTITY_ID
Entity ID ที่ต้องการดูข้อมูล
Options
banshee entity search¶
ค้นหา entity ตามชื่อและ/หรือประเภท
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Arguments
NAMEชื่อของ entity ที่ต้องการค้นหา
Options
--type,-tentity-type-
ประเภท entity ที่ต้องการค้นหา
สามารถระบุได้หลายครั้งสำหรับประเภท entity ที่แตกต่างกัน
ค่าที่รองรับ:
ASNumberAWSAccessKeyAircraftAirportAnalystNoteAnniversaryAttackVectorBankIdentificationNumberBitcoinAddressBusinessIdentifierCodeCaseCategoryCityCodeIdentifierCommodityCompanyContentTypeContinentCountryCurrencyCurrencyPairCyberExploitTargetCategoryCyberSecurityCategoryCyberThreatActorCategoryCyberVulnerabilityDEANumberDatasetDetectionRuleDocumentEconomicIndicatorEmailAddressEmbassyEmojiEntertainmentAwardEventEntityEntityAliasEntityListEntityRangeEntityRelationExternalIdentifierFacilityFaxNumberFeatureFileContentFileNameFileNameExtensionFileTypeGeoBoundingBoxGeoEntityHashHashAlgorithmHashtagHolidayIRCNetworkIdentifierImageIncidentImpactCategoryIndustryIndustryTermIntegrationApplicationIntegrationUserInternetDomainNameIpAddressKeywordLanguageLinkReportLogotypeMICRMalwareMalwareCategoryMalwareMutexMalwareSignatureMarketIndexMedicalConditionMedicalTreatmentMetaAttributeMetaTypeMilitaryBaseMilitaryExerciseMitreAttackIdentifierMovieMusicAlbumMusicGroupNationalityNaturalFeatureNeighborhoodNetworkPortNetworkProtocolNumericIdentifierOperatingSystemOperationOrgEntityOrganizationPaymentCardNumberPersonPhoneNumberPortPositionProductIdentifierProductModuleProductModuleAddonProductVersionProductProgrammingLanguageProvinceOrStatePublishedMediumRadioProgramRadioStationRegionReligionReportEntityReportingEntityRiskContextRiskRuleSectorSnortDetectionRuleSocialSecurityNumberSourceSourceMediaTypeSportsEventSportsGameSportsLeagueTVShowTVStationTaskTechnologyTechnologyAreaThreadTopicUPSTrackingNumberURLUSPSTrackingNumberUUIDUseCaseConfigurationUseCaseReportUserUserEnterpriseUserEntityUserGroupUserLabelUserModuleGroupUserModuleRoleGroupUserOrganizationUserRoleUsernameVesselWebMoneyIDWinRegKeyYaraDetectionRule
--limit,-llimit-
จำกัดจำนวนผลลัพธ์
ค่าสูงสุดคือ 100
ค่าเริ่มต้นคือ 100
--pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
banshee email¶
เสริมข้อมูลไฟล์อีเมล (EML) ด้วย Recorded Future intelligence
Usage
Commands
banshee email enrichเสริมข้อมูลไฟล์อีเมล (EML) ด้วย Recorded Future intelligence
banshee email enrich¶
เสริมข้อมูลไฟล์อีเมล (EML) ด้วย Recorded Future Intelligence คำสั่งนี้จะแยกวิเคราะห์ไฟล์ EML เพื่อดึง IP address จาก header และ URL (ที่ขึ้นต้นด้วย http/https) ที่พบใน body จากนั้นเสริมข้อมูลด้วย threat intelligence โดยค่าเริ่มต้น ผลลัพธ์จะถูกกรองเพื่อแสดงเฉพาะ indicator ที่ผ่านเกณฑ์ risk score ของคุณ ใช้ --threat-hunt เพื่อรวม indicator ที่เชื่อมโยงกับ threat actor แม้ว่าจะต่ำกว่าเกณฑ์ risk score
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
JSON Output
แต่ละ object ในผลลัพธ์ JSON array ประกอบด้วยฟิลด์ดังต่อไปนี้:
| Field | Description |
|---|---|
ioc |
indicator ที่ดึงจากอีเมล — เป็น IP address หรือ URL |
type |
ประเภทของ indicator เช่น ip หรือ url |
location |
ส่วนของอีเมลที่พบ indicator เช่น header หรือ body |
risk_score |
Recorded Future risk score |
ta_names |
รายชื่อ threat actor ที่เกี่ยวข้องกับ indicator นี้ ว่างหากไม่มีข้อมูล |
malwares |
รายชื่อ malware family ที่เชื่อมโยงกับ indicator นี้ ว่างหากไม่มีข้อมูล |
first_seen |
timestamp รูปแบบ ISO 8601 ของการพบเห็นครั้งแรกที่บันทึกไว้ |
last_seen |
timestamp รูปแบบ ISO 8601 ของการพบเห็นล่าสุดที่บันทึกไว้ |
count_of_analyst_notes |
จำนวน analyst note ของ Recorded Future ที่อ้างอิงถึง indicator นี้ |
rule_evidence |
อาร์เรย์ของรายละเอียด evidence ของ risk rule แต่ละรายการ เรียงลำดับจาก severity สูงสุดก่อน |
แต่ละ object ใน rule_evidence array ประกอบด้วย:
| Field | Description |
|---|---|
rule |
ชื่อของ Recorded Future risk rule เฉพาะที่ถูก trigger |
level |
ระดับ severity ของ rule นี้ — ตัวเลขที่สูงกว่าหมายถึง severity ที่มากกว่า |
timestamp |
timestamp รูปแบบ ISO 8601 ของการพบเห็นล่าสุดสำหรับ rule นี้ |
evidence_string |
สรุป evidence ที่อ่านได้โดยมนุษย์ |
Usage
Arguments
FILE_PATHPath ของไฟล์ EML ที่ต้องการเสริมข้อมูล
Options
--risk-score,-rrisk-score-
กรองผลลัพธ์เพื่อแสดงเฉพาะ indicator ที่มี risk score (0 - 99) สูงกว่าเกณฑ์นี้
ค่าเริ่มต้นคือ 65
--threat-hunt,-t-
รวม indicator ที่เชื่อมโยงกับ threat actor โดยไม่คำนึงถึงเกณฑ์ risk score
--pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Example Usage
banshee email enrich phishing_email.eml
banshee email enrich phishing_submission.eml -r 1 -p
banshee email enrich suspicious.eml --threat-hunt
banshee ioc¶
ค้นหาและดูข้อมูล Indicators of Compromise (IOC)
Usage
Commands
banshee ioc lookupเสริมข้อมูลแบบละเอียดสำหรับ IOC หนึ่งรายการหรือมากกว่า พร้อมกำหนดระดับข้อมูลได้
banshee ioc bulk-lookupเสริมข้อมูลแบบ bulk อย่างรวดเร็ว ส่งคืน risk score และ rule ที่ถูก trigger — ประมวลผลครั้งละสูงสุด 1,000 IOC ต่อการเรียก API
banshee ioc searchค้นหา IOC
banshee ioc rulesค้นหา IOC rules
banshee ioc lookup¶
เสริมข้อมูลแบบละเอียดสำหรับ IOC หนึ่งรายการหรือมากกว่า — หนึ่งการเรียก API ต่อ indicator ใช้ --verbosity เพื่อควบคุมจำนวนฟิลด์ที่ส่งคืน ตั้งแต่ risk score พื้นฐานจนถึง intel ครบถ้วน รวมถึง links, analyst notes และอื่น ๆ ใช้เมื่อต้องการบริบทที่ละเอียด
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Arguments
ENTITY_TYPE-
ประเภท entity ที่ต้องการดูข้อมูล
ค่าที่รองรับ:
ip,domain,url,hash,vulnerability IOCIOC หนึ่งรายการหรือมากกว่า คั่นด้วยช่องว่าง
Options
--ai-insights,-a-
เปิดใช้งาน AI insights จาก Recorded Future ที่สรุป risk rules ที่เกี่ยวข้องและเอกสารอ้างอิงสำคัญ
หมายเหตุ: เวลาตอบสนองอาจช้าลงเล็กน้อยเนื่องจากการประมวลผล AI
--verbosity,-vverbosity-level-
ควบคุมปริมาณข้อมูลที่ส่งคืนในการตอบสนอง (1-5) ระดับ verbosity ที่สูงขึ้นจะรวมฟิลด์และรายละเอียดเพิ่มเติมใน JSON output
หมายเหตุ: ระดับ verbosity ที่สูงขึ้นอาจส่งผลให้เวลาตอบสนองช้าลงเนื่องจากการดึงข้อมูลที่มากขึ้น
ค่าเริ่มต้นคือ 1
ฟิลด์ที่มีตามระดับ Verbosity
ip:
- 1: entity, risk, timestamps
- 2: entity, intelCard, location, risk, timestamps
- 3: analystNotes, entity, intelCard, links, location, risk, timestamps
- 4: analystNotes, enterpriseLists, entity, intelCard, links, location, risk, riskMapping, sightings, threatLists, timestamps
- 5: analystNotes, dnsPortCert, enterpriseLists, entity, intelCard, links, location, risk, riskMapping, scanner, sightings, threatLists, timestamps
domain:
- 1: entity, risk, timestamps
- 2: entity, intelCard, risk, timestamps
- 3: analystNotes, entity, intelCard, links, risk, timestamps
- 4: analystNotes, enterpriseLists, entity, intelCard, links, risk, riskMapping, sightings, threatLists, timestamps
- 5: analystNotes, enterpriseLists, entity, intelCard, links, risk, riskMapping, sightings, threatLists, timestamps
url:
- 1: entity, risk, timestamps
- 2: entity, intelCard, risk, timestamps
- 3: analystNotes, entity, intelCard, links, risk, timestamps
- 4: analystNotes, enterpriseLists, entity, intelCard, links, risk, riskMapping, sightings, timestamps
- 5: analystNotes, enterpriseLists, entity, intelCard, links, risk, riskMapping, sightings, timestamps
hash:
- 1: entity, hashAlgorithm, risk, timestamps
- 2: entity, fileHashes, hashAlgorithm, intelCard, risk, timestamps
- 3: analystNotes, entity, fileHashes, hashAlgorithm, intelCard, links, risk, timestamps
- 4: analystNotes, enterpriseLists, entity, fileHashes, hashAlgorithm, intelCard, links, risk, riskMapping, sightings, threatLists, timestamps
- 5: analystNotes, enterpriseLists, entity, fileHashes, hashAlgorithm, intelCard, links, risk, riskMapping, sightings, threatLists, timestamps
vulnerability:
- 1: entity, lifecycleStage, risk, timestamps
- 2: entity, intelCard, lifecycleStage, risk, timestamps
- 3: analystNotes, entity, intelCard, lifecycleStage, links, risk, timestamps
- 4: analystNotes, cvss, cvssv3, cvssv4, enterpriseLists, entity, intelCard, lifecycleStage, links, risk, riskMapping, sightings, threatLists, timestamps
- 5: analystNotes, cpe, cpe22uri, cvss, cvssv3, cvssv4, enterpriseLists, entity, intelCard, lifecycleStage, links, nvdDescription, nvdReferences, risk, riskMapping, sightings, threatLists, timestamps
--pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Example Usage
banshee ioc lookup ip 139.224.189.177
banshee ioc lookup domain overafazg.org
banshee ioc lookup ip 8.140.135.23 -v 3
banshee ioc lookup ip 8.140.135.23,139.224.189.177 -p
Pipe รายการ IOC ที่คั่นด้วยเครื่องหมายจุลภาคหรือขึ้นบรรทัดใหม่เพื่อดูข้อมูล:
cat test_ips.csv| banshee ioc lookup ip -p
banshee ioc bulk-lookup¶
เสริมข้อมูลแบบ bulk อย่างรวดเร็วสำหรับ IOC จำนวนเท่าใดก็ได้ในประเภทเดียว คำสั่งจะแบ่งกลุ่มสูงสุด 1,000 IOC ต่อการเรียก API และจัดการการแบ่งกลุ่มโดยอัตโนมัติ ทำให้เร็วกว่า banshee ioc lookup อย่างมากสำหรับปริมาณข้อมูลจำนวนมาก
ส่งคืนชุดฟิลด์ที่กำหนดไว้สำหรับแต่ละ indicator: risk score และ risk rules ที่ถูก trigger ใช้สำหรับการ triage ปริมาณสูง
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Arguments
ENTITY_TYPE-
ประเภท entity ที่ต้องการเสริมข้อมูล
ค่าที่รองรับ:
ip,domain,url,hash,vulnerability IOCIOC หนึ่งรายการหรือมากกว่า คั่นด้วยช่องว่าง รับ input จาก stdin ด้วย (ดูตัวอย่างด้านล่าง)
Options
Example Usage
banshee ioc bulk-lookup ip 92.38.178.133 203.0.113.17
banshee ioc bulk-lookup domain overafazg.org coolbeans.org -p
banshee ioc bulk-lookup hash e3f236e4aeb73f8f8f0caebe46f53abbb2f71fa4b266a34ab50e01933709e877
File / Stdin Input
Pipe หรือ redirect ไฟล์ IOC ที่มีรายการแยกตามบรรทัด (หนึ่งรายการต่อบรรทัด):
banshee ioc bulk-lookup vulnerability < cves.txt
cat cves.txt | banshee ioc bulk-lookup vulnerability
Extract Names and Scores
ใช้ jq เพื่อดึงฟิลด์เฉพาะจาก JSON output เช่น:
banshee ioc bulk-lookup vulnerability CVE-2021-22204 CVE-2016-4557 | jq '[.[] | {ioc: .entity.name, risk_score: .risk.score}]'
banshee ioc search¶
ค้นหา Classic Alerts
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Arguments
ENTITY_TYPE-
ประเภท entity ที่ต้องการดูข้อมูล
ค่าที่รองรับ:
ip,domain,url,hash,vulnerability
Options
--limit,-llimit-
จำกัดจำนวนผลลัพธ์
ค่าสูงสุดคือ 1,000
ค่าเริ่มต้นคือ 5
--risk-score,-rrisk-score-
กรองตามช่วง risk score เช่น:
--risk-score '[20,90]'→ เทียบเท่า20 <= riskScore <= 90--risk-score '(20,90)'→ เทียบเท่า20 < riskScore < 90--risk-score '[20,90)'→ เทียบเท่า20 <= riskScore < 90--risk-score '[20,)'→ เทียบเท่า20 <= riskScore--risk-score '[,90)'→ เทียบเท่าriskScore < 90
ล้อมรอบช่วง risk score ด้วยเครื่องหมายคำพูดเพื่อให้แยกวิเคราะห์ได้ถูกต้อง
--risk-rule,-Rrule-name-
กรองตามชื่อ risk rule
สำหรับตัวเลือกที่มี โปรดดูที่บทความสนับสนุนนี้ โดยเฉพาะคอลัมน์ Machine Name ในตาราง risk rules หรือใช้คำสั่ง
banshee ioc rules --verbosity,-vverbosity-level-
ควบคุมปริมาณข้อมูลที่ส่งคืนในการตอบสนอง (1-5) ระดับ verbosity ที่สูงขึ้นจะรวมฟิลด์และรายละเอียดเพิ่มเติมใน JSON output
หมายเหตุ: ระดับ verbosity ที่สูงขึ้นอาจส่งผลให้เวลาตอบสนองช้าลงเนื่องจากการดึงข้อมูลที่มากขึ้น
ค่าเริ่มต้นคือ 1
ฟิลด์ที่มีตามระดับ Verbosity
ip:
- 1: entity, risk, timestamps
- 2: entity, intelCard, location, risk, timestamps
- 3: analystNotes, entity, intelCard, links, location, risk, timestamps
- 4: analystNotes, enterpriseLists, entity, intelCard, links, location, risk, riskMapping, sightings, threatLists, timestamps
- 5: analystNotes, dnsPortCert, enterpriseLists, entity, intelCard, links, location, risk, riskMapping, scanner, sightings, threatLists, timestamps
domain:
- 1: entity, risk, timestamps
- 2: entity, intelCard, risk, timestamps
- 3: analystNotes, entity, intelCard, links, risk, timestamps
- 4: analystNotes, enterpriseLists, entity, intelCard, links, risk, riskMapping, sightings, threatLists, timestamps
- 5: analystNotes, enterpriseLists, entity, intelCard, links, risk, riskMapping, sightings, threatLists, timestamps
url:
- 1: entity, risk, timestamps
- 2: entity, intelCard, risk, timestamps
- 3: analystNotes, entity, intelCard, links, risk, timestamps
- 4: analystNotes, enterpriseLists, entity, intelCard, links, risk, riskMapping, sightings, timestamps
- 5: analystNotes, enterpriseLists, entity, intelCard, links, risk, riskMapping, sightings, timestamps
hash:
- 1: entity, hashAlgorithm, risk, timestamps
- 2: entity, fileHashes, hashAlgorithm, intelCard, risk, timestamps
- 3: analystNotes, entity, fileHashes, hashAlgorithm, intelCard, links, risk, timestamps
- 4: analystNotes, enterpriseLists, entity, fileHashes, hashAlgorithm, intelCard, links, risk, riskMapping, sightings, threatLists, timestamps
- 5: analystNotes, enterpriseLists, entity, fileHashes, hashAlgorithm, intelCard, links, risk, riskMapping, sightings, threatLists, timestamps
vulnerability:
- 1: entity, lifecycleStage, risk, timestamps
- 2: entity, intelCard, lifecycleStage, risk, timestamps
- 3: analystNotes, entity, intelCard, lifecycleStage, links, risk, timestamps
- 4: analystNotes, cvss, cvssv3, cvssv4, enterpriseLists, entity, intelCard, lifecycleStage, links, risk, riskMapping, sightings, threatLists, timestamps
- 5: analystNotes, cpe, cpe22uri, cvss, cvssv3, cvssv4, enterpriseLists, entity, intelCard, lifecycleStage, links, nvdDescription, nvdReferences, risk, riskMapping, sightings, threatLists, timestamps
--pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
banshee ioc rules¶
ค้นหา IOC rules สำหรับประเภท entity ที่กำหนด
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Arguments
ENTITY_TYPE-
ประเภท entity ของ IOC rules
ค่าที่รองรับ:
ip,domain,url,hash,vulnerability
Options
--freetext,-Ffreetext-rule-name-
กรองตามชื่อ risk rule โดยใช้การค้นหาแบบ freetext
--mitre-code,-Mmitre-code-
กรองตามรหัส MITRE ATT&CK
--criticality,-Ccriticality-
กรองตามระดับความรุนแรง ค่าที่สูงกว่าหมายถึงความรุนแรงที่มากกว่า
ค่าที่รับได้คือ 1 ถึง 5
ระดับความรุนแรง (IP, Domain, URL, Hash)
4– Very Malicious (ช่วง Risk Score: 90–99)3– Malicious (ช่วง Risk Score: 65–89)2– Suspicious (ช่วง Risk Score: 25–64)1– Unusual (ช่วง Risk Score: 5–24)0– ไม่มีหลักฐานความเสี่ยง (ช่วง Risk Score: 0)
ระดับความรุนแรง (Vulnerability)
5– Very Critical (ช่วง Risk Score: 90–99)4– Critical (ช่วง Risk Score: 80–89)3– High (ช่วง Risk Score: 65–79)2– Medium (ช่วง Risk Score: 25–64)1– Low (ช่วง Risk Score: 5–24)0– ไม่มีหลักฐานความเสี่ยง (ช่วง Risk Score: 0)
--pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
banshee list¶
จัดการ Recorded Future lists และ Watch lists
Usage
banshee list createสร้าง list ใหม่
banshee list infoดูข้อมูลพื้นฐานของ list
banshee list searchค้นหา list
banshee list statusดูสถานะของ list
banshee list entitiesดู entity ใน list
banshee list addเพิ่ม entity เข้า list
banshee list bulk-addเพิ่ม entity หลายรายการเข้า list พร้อมกัน
banshee list removeลบ entity ออกจาก list
banshee list bulk-removeลบ entity หลายรายการออกจาก list พร้อมกัน
banshee list copyคัดลอก entity จาก list หนึ่งไปยังอีก list หนึ่ง
banshee list clearล้าง entity ทั้งหมดออกจาก list
banshee list entriesดูรายการข้อความใน list
banshee list create¶
สร้าง list ใหม่
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Arguments
- NAME
ชื่อ list ที่ต้องการสร้าง
- LIST_TYPE
ประเภท list ที่ต้องการสร้าง
ประเภทที่รองรับ:
entitysourcetext
ค่าเริ่มต้นคือ
entity
Options
banshee list info¶
ดูข้อมูลของ list เช่น ชื่อ ประเภท timestamps และรายละเอียดเจ้าของ
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Arguments
LIST_ID-
List ID ที่ต้องการดูข้อมูล
List ID สามารถระบุได้ทั้งแบบมีและไม่มี prefix 'report:'
Options
banshee list search¶
ค้นหา list
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Arguments
NAME-
ชื่อ list ที่ต้องการค้นหา
หากไม่ระบุชื่อ จะส่งคืน list ทั้งหมด
Options
--list-type,-tlist-type-
กรองตามประเภท list
ประเภทที่รองรับ:
entitysourcetextcustomipdomaintech_stackindustrybrandpartnerindustry_peerlocationsuppliervulnerabilitycompanyhashoperationattackertargetmethodexecutive
--limit,-llimit-
จำกัดจำนวนผลลัพธ์
ค่าสูงสุดคือ 3,000
ค่าเริ่มต้นคือ 1,000
--pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
banshee list status¶
ดูสถานะ list และจำนวน entity
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Arguments
LIST_ID-
List ID ที่ต้องการดูสถานะ
List ID สามารถระบุได้ทั้งแบบมีและไม่มี prefix 'report:'
Options
banshee list entities¶
ดู entity ใน list
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Arguments
LIST_ID-
List ID ที่ต้องการดึง entity
List ID สามารถระบุได้ทั้งแบบมีและไม่มี prefix 'report:'
Options
banshee list entries¶
ดูรายการข้อความใน list
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Arguments
LIST_ID-
List ID ที่ต้องการดึงรายการข้อความ
List ID สามารถระบุได้ทั้งแบบมีและไม่มี prefix 'report:'
Options
banshee list clear¶
ล้าง list และลบ entity ทั้งหมดออกอย่างสมบูรณ์ โปรดทราบว่าคำสั่งนี้จะไม่ล้างรายการข้อความและไม่รองรับการดำเนินการดังกล่าว
Usage
Arguments
LIST_ID-
List ID ที่ต้องการล้าง
List ID สามารถระบุได้ทั้งแบบมีและไม่มี prefix 'report:'
Options
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
banshee list add¶
เพิ่ม entity เข้า list
Usage
Arguments
LIST_ID-
List ID ที่ต้องการเพิ่มเข้า
List ID สามารถระบุได้ทั้งแบบมีและไม่มี prefix 'report:'
ENTITY_ID-
Entity ID หรือชื่อพร้อมประเภทที่ต้องการเพิ่มเข้า list เช่น:
- SoA6SP
- wannacry,Malware
- www.duckdns.org,InternetDomainName
PROPERTIES-
ไม่บังคับ ใช้
annotation=<text>เพื่อแนบบันทึกที่จะแสดงบน Recorded Future platform สำหรับ entity นี้ล้อมรอบค่าด้วยเครื่องหมายคำพูดหากมีช่องว่าง
Options
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Example Usage
banshee list add 1b0s1q lYNvCK
banshee list add 1b0s1q lYNvCK 'annotation=C2 server seen during incident X-1234'
banshee list bulk-add¶
เพิ่ม entity หลายรายการเข้า list
Usage
Arguments
LIST_ID-
List ID ที่ต้องการเพิ่มเข้า
List ID สามารถระบุได้ทั้งแบบมีและไม่มี prefix 'report:'
ENTITY_INPUT-
Entity หนึ่งรายการหรือมากกว่า คั่นด้วยช่องว่างหรือขึ้นบรรทัดใหม่ เช่น:
- SoA6SP
- wannacry,Malware
- www.duckdns.org,InternetDomainName
คำสั่งยังรับ input จาก stdin ด้วย สมมติว่า 'entities.txt' เป็นไฟล์ที่มี entity แยกตามบรรทัด เช่น:
$ cat entities.txt verifyaccount.otzo.com,InternetDomainName 92.38.178.133,IpAddress https://constructorachg.cl/eFSLb6eV/j.html,URL CVE-2019-1215,CyberVulnerability e3f236e4aeb73f8f8f0caebe46f53abbb2f71fa4b266a34ab50e01933709e877,Hash SoA6SP lYNvCKจากข้างต้น สามารถรันคำสั่งใดคำสั่งหนึ่งต่อไปนี้เพื่อเพิ่ม entity แบบ bulk:
$ banshee list bulk-add LIST_ID < entities.txt $ cat entities.txt | banshee list bulk-add LIST_ID
Options
--overwrite,-o-
เปิดใช้งานโหมด overwrite เมื่อตั้งค่านี้ คำสั่งจะ:
- คงไว้ซึ่ง entity ที่มีอยู่ใน list ที่ปรากฏในไฟล์ที่ระบุ
- เพิ่ม entity ใหม่จากไฟล์ที่ระบุที่ยังไม่มีใน list
- ลบ entity ที่มีอยู่ใน list ที่ ไม่ ปรากฏในไฟล์ที่ระบุ
โดยค่าเริ่มต้น (ไม่มี flag นี้) คำสั่งจะเพิ่ม entity ใหม่เข้า list ที่มีอยู่โดยไม่ลบสิ่งใด
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Result Status Output
banshee list bulk-add จัดกลุ่ม output ตามสถานะและแสดง entity ที่ตรงกันใต้สถานะนั้น เช่น:
ADDED:
SoA6SP
ERROR_MULTIPLE_MATCHES:
wanna:malware
สถานะทั่วไป:
ADDED- เพิ่ม entity เข้า list สำเร็จUNCHANGED- Entity มีอยู่ใน list แล้ว (ไม่มีการเปลี่ยนแปลง)UPDATED- Entity มีอยู่แล้วและถูกอัปเดตโดย APIERROR_BAD_ID- รูปแบบ input ไม่ถูกต้องหรือ entity reference ไม่ถูกต้องERROR_NOT_FOUND- ไม่พบ entity ที่ตรงกันERROR_NOT_ALLOWED- ประเภท entity ไม่ได้รับอนุญาตใน list ที่ระบุERROR_MULTIPLE_MATCHES- Input ตรงกับ entity ที่เป็นไปได้มากกว่าหนึ่งรายการ Entity ไม่ได้ถูกเพิ่มLIST_MAX_SIZE_REACHED- List ที่ระบุเต็มและไม่สามารถเพิ่ม entity ได้อีก
How to Resolve ERROR_MULTIPLE_MATCHES
เมื่อพบ ERROR_MULTIPLE_MATCHES หมายความว่าชื่อ entity ที่ระบุไม่ชัดเจน API ไม่สามารถระบุ entity เดียวได้อย่างแน่ชัด ดังนั้น row นั้นจะถูกข้ามและไม่ถูกเพิ่ม
ขั้นตอนที่แนะนำ:
- นำค่าที่ไม่ชัดเจนจาก output ของคำสั่ง
- รัน
banshee entity searchเพื่อค้นหา entity ที่ต้องการ หากจำเป็น ปรับวิธีการเขียนชื่อในคำค้นหา (เช่น การสะกดที่ต่างกัน ช่องว่าง หรือรูปแบบที่เฉพาะเจาะจงกว่า) เพื่อจำกัดผลลัพธ์ - แทนที่ค่าที่ไม่ชัดเจนในไฟล์ input ด้วย entity ID ที่แน่ชัด
- รัน
banshee list bulk-addอีกครั้งด้วยไฟล์ที่แก้ไขแล้ว
ตัวอย่าง:
banshee entity search wannacry --type Malware
banshee list bulk-add LIST_ID < entities.txt
เคล็ดลับ: หากทราบ entity ID แล้ว (เช่น SoA6SP) ควรใช้ ID แทนคู่ชื่อ/ประเภทในไฟล์ bulk เพื่อหลีกเลี่ยงความไม่ชัดเจน
banshee list remove¶
ลบ entity ออกจาก list
Usage
Arguments
LIST_ID-
List ID ที่ต้องการลบออกจาก
List ID สามารถระบุได้ทั้งแบบมีและไม่มี prefix 'report:'
ENTITY_ID-
Entity ID ที่ต้องการลบออกจาก list
Options
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
banshee list bulk-remove¶
ลบ entity หลายรายการออกจาก list
Usage
Arguments
LIST_ID-
List ID ที่ต้องการลบออกจาก
List ID สามารถระบุได้ทั้งแบบมีและไม่มี prefix 'report:'
ENTITY_INPUT-
Entity หนึ่งรายการหรือมากกว่า คั่นด้วยช่องว่างหรือขึ้นบรรทัดใหม่ เช่น:
- SoA6SP
- wannacry,Malware
- www.duckdns.org,InternetDomainName
คำสั่งยังรับ input จาก stdin ด้วย สมมติว่า 'entities.txt' เป็นไฟล์ที่มี entity แยกตามบรรทัด เช่น:
$ cat entities.txt verifyaccount.otzo.com,InternetDomainName 92.38.178.133,IpAddress https://constructorachg.cl/eFSLb6eV/j.html,URL CVE-2019-1215,CyberVulnerability e3f236e4aeb73f8f8f0caebe46f53abbb2f71fa4b266a34ab50e01933709e877,Hash SoA6SP lYNvCKจากข้างต้น สามารถรันคำสั่งใดคำสั่งหนึ่งต่อไปนี้เพื่อลบ entity แบบ bulk:
$ banshee list bulk-remove LIST_ID < entities.txt $ cat entities.txt | banshee list bulk-remove LIST_ID
Options
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
banshee list copy¶
คำสั่งยูทิลิตีสำหรับคัดลอก entity จาก list หนึ่งไปยังอีก list หนึ่ง
entity จาก list ต้นทางจะถูกอ่านและเพิ่มเข้า list ปลายทาง โดยค่าเริ่มต้น entity ใหม่จะถูก append เข้า list ปลายทางโดยไม่แตะต้องสิ่งที่มีอยู่แล้ว เมื่อใช้ --overwrite list ปลายทางจะถูกทำให้สอดคล้องกับ list ต้นทาง: entity ที่มีอยู่ในทั้งสอง list จะถูกคงไว้ entity ใหม่จะถูกเพิ่ม และ entity ใดก็ตามที่อยู่ใน list ปลายทางแต่ ไม่ อยู่ใน list ต้นทางจะถูกลบออก
หาก list ต้นทางว่างเปล่า คำสั่งจะออกโดยไม่แก้ไข list ปลายทาง — แม้เมื่อใช้ --overwrite
Usage
Arguments
SOURCE_LIST_ID-
ID ของ list ที่ต้องการคัดลอก entity จาก
DESTINATION_LIST_ID-
ID ของ list ที่ต้องการคัดลอก entity ไปยัง
Options
--overwrite,-o-
โหมด Overwrite: คงไว้ซึ่ง entity ที่มีอยู่ใน list ปลายทางแล้ว เพิ่ม entity ใหม่ และลบ entity ใดก็ตามที่อยู่ใน list ปลายทางแต่ไม่อยู่ใน list ต้นทาง โดยค่าเริ่มต้น คำสั่งจะ append entity ใหม่โดยไม่ลบที่มีอยู่
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Examples
banshee pba¶
ค้นหา ดูข้อมูล และอัปเดต Recorded Future Playbook Alerts
Usage
Commands
banshee pba lookupดูข้อมูล Playbook Alert
banshee pba searchค้นหา Playbook Alerts
banshee pba updateอัปเดต Playbook Alert หนึ่งรายการหรือมากกว่า
banshee pba exportส่งออก Playbook Alerts เป็น JSON หรือ CSV
banshee pba lookup¶
ดูข้อมูล Playbook Alert
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Arguments
- ALERT_ID
Alert ID ที่ต้องการดูข้อมูล
Alert ID สามารถระบุได้ทั้งแบบมีและไม่มี prefix 'task:'
Options
banshee pba search¶
ค้นหา Playbook Alerts
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Options
--created,-Ccreated-from-
กรองตามเวลาที่สร้างจาก เช่น: 1d; 12h
--updated,-uupdated-from-
กรองตามเวลาที่อัปเดตจาก เช่น: 1d; 12h
--category,-ccategory-
กรองตามหมวดหมู่ alert (ระบุได้หลายครั้ง)
หมวดหมู่ที่รองรับ:
domain_abusecyber_vulnerabilitythird_party_riskcode_repo_leakageidentity_novel_exposuresgeopolitics_facilitymalware_report
--priority,-Ppriority-
กรองตามลำดับความสำคัญของ alert (ระบุได้หลายครั้ง)
ค่าที่เป็นไปได้:
Informational,Moderate,Highค่าเริ่มต้นคือทุกลำดับความสำคัญ
--status,-salert-status-
กรองตามสถานะของ alert (ระบุได้หลายครั้ง)
ค่าที่เป็นไปได้:
New,InProgress,Dismissed,Resolvedค่าเริ่มต้นคือทุกสถานะ
--entity,-eentity-
กรอง alert ตาม entity ที่เกี่ยวข้อง (ระบุได้หลายครั้ง) เช่น:
-e idn:recordedfuture.com -e idn:example.com --org-id,-oorganisation-id-
กรอง alert ตาม ID ขององค์กรเจ้าของ (ระบุได้หลายครั้ง)
รับค่า ID 10 อักขระ หรือรูปแบบ
uhash:16 อักขระ เช่น:-o 69sKLfTGsS -o uhash:5zQaSyRpA1 --limit,-llimit-
จำกัดจำนวนผลลัพธ์
ค่าสูงสุดคือ 10,000
ค่าเริ่มต้นคือ 100
--pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
banshee pba update¶
อัปเดต Playbook Alert หนึ่งรายการหรือมากกว่า
Usage
Arguments
- ALERT_IDS
-
Alert ID หนึ่งรายการหรือมากกว่า คั่นด้วยช่องว่าง
Alert ID สามารถระบุได้ทั้งแบบมีและไม่มี prefix 'task:'
Options
--status,-salert-status-
อัปเดต alert ไปยังสถานะที่ระบุ
ค่าที่เป็นไปได้:
New,InProgress,Dismissed,Resolved --reopen,-rreopen-
กลยุทธ์การเปิดใหม่สามารถใช้ได้เฉพาะกับ alert ที่มีสถานะ Dismissed หรือ Resolved เท่านั้น การผสมสถานะ/การเปิดใหม่ที่อนุญาต:
Dismissed -> Never;Resolved -> Never;Resolved -> SignificantUpdatesค่าที่รองรับ:
Never,SignificantUpdates --priority,-Ppriority-
กำหนดลำดับความสำคัญของ alert ใหม่
ค่าที่เป็นไปได้:
Informational,Moderate,High --comment,-tcomment-
ความคิดเห็นที่จะเพิ่มใน alert เช่น: "Bulk resolved via banshee"
--assignee,-aassignee-
ผู้ใช้ใหม่ที่ต้องการมอบหมาย alert ให้ รับค่า uhash ของผู้ใช้ เช่น: uhash:3aXZxdkM12
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Example Usage
ระบุ alert ID หนึ่งรายการหรือมากกว่า (คั่นด้วยช่องว่าง) และกำหนดตัวเลือกการอัปเดตที่ต้องการ:
banshee pba update ALERT_ID -s Dismissed
banshee pba update ALERT_ID -s InProgress -p High -t "Escalated due to new findings"
banshee pba update ALERT_ID_1 ALERT_ID_2 -s Resolved -a uhash:3aXZxdkM12
Supplying Alert IDs
1. ระบุโดยตรงเป็น arguments (รายการเดียวหรือหลายรายการ):
banshee pba update ALERT_ID -s Resolved
banshee pba update ALERT_ID -s Resolved
banshee pba update ALERT_ID_1 ALERT_ID_2 -s Resolved
2. จากไฟล์หรือ standard input:
หากมีไฟล์ (เช่น alerts.txt) ที่มี alert ID หนึ่งรายการต่อบรรทัด:
ALERT_ID_1
ALERT_ID_2
ALERT_ID_3
สามารถอัปเดต alert ทั้งหมดที่ระบุในไฟล์ได้โดยใช้:
banshee pba update -s Dismissed < alerts.txt
cat alerts.txt | banshee pba update -s Dismissed
3. โดย pipe จากคำสั่ง search:
ใช้เครื่องมืออย่าง jq เพื่อดึง alert ID จากผลการค้นหาและ pipe เข้าสู่คำสั่ง update:
banshee pba search | jq -r '.data[].playbook_alert_id' | banshee pba update -p High -t "Investigation started"
Additional Usage Examples
banshee pba search -c domain_abuse -P Informational | jq -r '.data[].playbook_alert_id' | banshee pba update -s Resolved
banshee pba update ALERT_ID -s Resolved -r Never
banshee pba update ALERT_ID_1 ALERT_ID_2 -s InProgress -p Informational -t "Bumping priority down due to recent findings."
banshee pba update ALERT_ID -a
banshee pba export¶
ส่งออก Playbook Alerts เป็น JSON หรือ CSV โดยอ่าน alert ID และหมวดหมู่จาก stdin — โดยทั่วไปจะ pipe มาจาก banshee pba search
Output Formats
JSON (ค่าเริ่มต้น) — ส่งออก object alert แบบ เต็มรูปแบบ สำหรับแต่ละ ID ตามที่ Recorded Future API ส่งกลับมา ประกอบด้วยฟิลด์ระดับบนสุดทั้งหมด รวมถึงสถานะ panel ที่ซ้อนกัน เป้าหมาย หลักฐาน ผู้รับมอบหมาย timestamps และอื่น ๆ เหมาะสำหรับการนำไปใช้กับเครื่องมือ downstream, jq pipelines หรือการนำเข้าใหม่
CSV (--csv) — ส่งออกสรุประดับสูงสำหรับใช้กับ spreadsheet และการรายงาน โดยเขียนเฉพาะ 12 คอลัมน์ที่ระบุด้านล่าง (โดยมีแถวหัวตารางก่อน) และละเว้นฟิลด์อื่นที่มีอยู่ใน JSON response ทั้งหมด
| Field | Description |
|---|---|
ID |
Playbook Alert ID (รวม prefix task:) |
Priority |
ลำดับความสำคัญของ alert เช่น Informational, Moderate, High |
Alert Rule |
ชื่อของ alert rule ที่ถูก trigger (ใช้ rule label หากไม่มีชื่อ) |
Status |
สถานะของ alert เช่น New, InProgress, Dismissed, Resolved |
Created |
timestamp ที่สร้าง (UTC, %Y-%m-%d %H:%M:%S) |
Updated |
timestamp ที่อัปเดตล่าสุด (UTC, %Y-%m-%d %H:%M:%S) |
Subject |
หัวเรื่องของ alert |
Assignee |
ชื่อที่แสดงของผู้ใช้ที่ได้รับมอบหมาย |
Assessments |
การประเมินความเสี่ยง / rules สำหรับ alert (ขึ้นอยู่กับหมวดหมู่) คั่นด้วย ; |
Entities |
ชื่อ entity เป้าหมายที่ไม่ซ้ำกัน คั่นด้วย ; |
Reopen Strategy |
กลยุทธ์การเปิดใหม่สำหรับ alert ที่ปิดแล้ว เช่น Never, SignificantUpdates |
Onwards Actions |
การดำเนินการที่ดำเนินการกับ alert คั่นด้วย ; |
Usage
Options
--csv-
ส่งออกเป็น CSV ด้วยชุดคอลัมน์ที่กำหนดตามที่อธิบายข้างต้น หากไม่ระบุ flag นี้ คำสั่งจะส่งออกเป็น JSON
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Piped Input
banshee pba export รับเฉพาะ input ที่ pipe มาเท่านั้น โดยจะนำ JSON object ที่ banshee pba search สร้างขึ้นมาดึง playbook_alert_id และ category ของแต่ละ alert และดึงข้อมูล alert ทุกรายการแบบเต็ม การรันคำสั่งโดยไม่มี pipe จะถูกปฏิเสธพร้อมข้อผิดพลาด
Example Usage
banshee pba search --created 1d | banshee pba export
banshee pba search --updated 7d --category identity_novel_exposures | banshee pba export > identity_alerts.json
banshee pba search --created 1d --category domain_abuse | banshee pba export --csv > domain_alerts.csv
banshee pcap¶
เสริมข้อมูล packet captures (pcap) ด้วย Recorded Future intelligence
Usage
Commands
banshee pcap enrichเสริมข้อมูลไฟล์ packet capture (pcap) ด้วย Recorded Future intelligence
banshee pcap enrich¶
คำสั่งนี้จะแยกวิเคราะห์ไฟล์ pcap เพื่อดึง network indicator เช่น IP address และ domain จากนั้นเสริมข้อมูลด้วย threat intelligence โดยค่าเริ่มต้น ผลลัพธ์จะถูกกรองเพื่อแสดงเฉพาะ indicator ที่ผ่านเกณฑ์ risk score ของคุณ ใช้ --threat-hunt เพื่อรวม indicator ที่เชื่อมโยงกับ threat actor แม้ว่าจะต่ำกว่าเกณฑ์ risk score
โปรดทราบว่าการลดเกณฑ์ risk score และ/หรือเปิดใช้งาน threat hunting อาจเพิ่มจำนวนผลลัพธ์และเวลาในการประมวลผลอย่างมีนัยสำคัญ
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
JSON Output
แต่ละ object ในผลลัพธ์ JSON array ประกอบด้วยฟิลด์ดังต่อไปนี้:
| Field | Description |
|---|---|
ioc |
network indicator ที่ดึงจาก pcap — เป็น IP address หรือ domain name |
risk_score |
Recorded Future risk score |
most_malicious_rule |
ชื่อของ risk rule ที่มี severity สูงสุดที่ส่งผลต่อ risk score |
rule_evidence |
อาร์เรย์ของรายละเอียด evidence ของ risk rule แต่ละรายการ เรียงลำดับจาก severity สูงสุดก่อน |
ta_names |
รายชื่อ threat actor ที่เกี่ยวข้องกับ IOC นี้ ว่างหากไม่มีข้อมูล |
malwares |
รายชื่อ malware family ที่เชื่อมโยงกับ IOC นี้ ว่างหากไม่มีข้อมูล |
wireshark_query |
Wireshark display filter ที่พร้อมใช้งานเพื่อแยก traffic ของ IOC นี้ |
แต่ละ object ใน rule_evidence array ประกอบด้วย:
| Field | Description |
|---|---|
count |
จำนวนแหล่งที่มาที่มีส่วนร่วมในการอ้างอิง risk rule นี้ |
description |
สรุป evidence ที่อ่านได้โดยมนุษย์ |
level |
ระดับ severity ของ rule นี้ — ตัวเลขที่สูงกว่าหมายถึง severity ที่มากกว่า |
mitigation |
อธิบาย white list ที่ IOC อาจปรากฏอยู่ซึ่งลด (หรือบรรเทา) ความเสี่ยงที่เกี่ยวข้อง |
rule |
ชื่อของ Recorded Future risk rule เฉพาะที่ถูก trigger |
sightings |
จำนวนการพบเห็นแต่ละครั้งที่บันทึกไว้ |
timestamp |
timestamp รูปแบบ ISO 8601 ของการพบเห็นล่าสุดสำหรับ rule นี้ |
type |
ตัวระบุประเภท |
Usage
Arguments
FILE_PATHPath ของไฟล์ pcap ที่ต้องการเสริมข้อมูล
Options
--risk-score,-rrisk-score-
กรองผลลัพธ์เพื่อแสดงเฉพาะ indicator ที่มี risk score (1 - 99) สูงกว่าเกณฑ์นี้
ค่าเริ่มต้นคือ 65
--threat-hunt,-t-
รวม indicator ที่เชื่อมโยงกับ threat actor โดยไม่คำนึงถึงเกณฑ์ risk score (retrospective threat hunting)
--pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
banshee risklist¶
จัดการ Risk Lists
Usage
Commands
banshee risklist createสร้าง risk list แบบกำหนดเองโดยรวม risk rules หนึ่งรายการหรือมากกว่า
banshee risklist fetchดาวน์โหลด risk list
banshee risklist statแสดง metadata ของ risk list (etag และ timestamp)
banshee risklist create¶
สร้าง risk list แบบกำหนดเองโดยรวม Recorded Future risk rules หนึ่งรายการหรือมากกว่าเป็นไฟล์เดียวที่ไม่มีรายการซ้ำ
รายการจะถูกดึงสำหรับแต่ละ --risk-rule ผสานตาม IOC (รายการแรกที่พบจะชนะ) และกรองตาม --risk-score ขั้นต่ำตามต้องการ output จะเรียงลำดับตาม risk score จากมากไปน้อยและเขียนในรูปแบบที่เลือก — พร้อมสำหรับการนำไปใช้กับ firewall, SIEM หรือ integration อื่น ๆ
โดยค่าเริ่มต้น output จะถูกเขียนลงในไฟล์ local ใช้ --fusion กับ --output-path เพื่ออัปโหลดผลลัพธ์โดยตรงไปยัง Recorded Future Fusion โดยไม่เขียนไฟล์ local
Usage
Options
--entity-type,-eentity-type-
ประเภท entity สำหรับ risk list ค่าที่ถูกต้อง:
ip,domain,url,hash,vulnerability
จำเป็น --risk-rule,-Rrisk-rule-
Risk rule ที่จะรวม ใช้
default,largeหรือชื่อ rule ใดก็ได้จากbanshee ioc rulesระบุได้หลายครั้ง — ระบุหลายครั้งเพื่อผสาน rule เป็น output เดียว
จำเป็น (อย่างน้อยหนึ่งรายการ) --risk-score,-rrisk-score-
เกณฑ์ risk score ขั้นต่ำ (5–99) รายการที่มี risk score ต่ำกว่าค่านี้จะถูกยกเว้นจาก output
--format,-fformat-
รูปแบบ output ค่าเริ่มต้นคือ
csvcsv— คั่นด้วยเครื่องหมายจุลภาคพร้อม headers:Name,Risk,RiskString,EvidenceDetailsสำหรับประเภท entity แบบ Hash จะมีคอลัมน์Algorithmเพิ่มเติม:Name,Algorithm,Risk,RiskString,EvidenceDetailsedl— รายการ IOC แบบ plain หนึ่งรายการต่อบรรทัด (เหมาะสำหรับ firewall EDL feeds) เขียนด้วยนามสกุล.txtjson— JSON array ของรายการ risk list แบบเต็ม
--output-path,-ooutput-path-
Path ของไฟล์ output รับ file path หรือ directory (ชื่อไฟล์จะสร้างอัตโนมัติเป็น
custom_risklist_{entity_type}.{ext}) ค่าเริ่มต้นคือ directory ปัจจุบันพร้อมชื่อไฟล์ที่สร้างอัตโนมัติ
จำเป็นเมื่อใช้--fusion --fusion,-F-
อัปโหลดผลลัพธ์โดยตรงไปยัง Recorded Future Fusion โดยใช้
--output-pathเป็น path ปลายทาง ไม่มีการเขียนไฟล์ local เมื่อตั้งค่า flag นี้ --help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Usage Examples
สร้าง CSV risk list สำหรับ IP จาก default rule กรองที่ risk score 70 ขึ้นไป
ผสาน domain rules สองรายการเป็น CSV เดียวที่ไม่มีรายการซ้ำ กรองที่ risk score 80 ขึ้นไป
ผสาน IP rules สองรายการและส่งออกเป็น EDL (รายการ IOC แบบ plain)
สร้าง JSON risk list สำหรับ hash จาก rules สองรายการและส่งออกไปยัง file path local ที่ระบุ
สร้าง risk list และอัปโหลดโดยตรงไปยัง Recorded Future Fusion
banshee risklist fetch¶
ดาวน์โหลด risk list สำหรับประเภท entity และชื่อ list ที่ระบุ หรือใช้ไฟล์ risk list แบบกำหนดเอง
Risk lists สามารถดาวน์โหลดจาก Recorded Future ได้โดยระบุประเภท entity (--entity-type) และชื่อ list (--list-name) ชื่อ list ที่มีได้แก่ default, large หรือชื่อ rule ใดก็ได้จาก banshee ioc rules สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ Recorded Future Risk Rules โปรดดูที่บทความสนับสนุน Risk Scoring in Recorded Future
หรือสามารถระบุ path ไปยังไฟล์ risk list แบบกำหนดเองโดยใช้ --custom-list-path
Usage
Options
--entity-type,-eentity-type-
ประเภท entity สำหรับ risk list ค่าที่ถูกต้อง:
ip,domain,url,hash,vulnerability
จำเป็นเมื่อใช้--list-name --list-name,-llist-name-
ชื่อ risk list:
default,largeหรือชื่อ rule จากbanshee ioc rules
จำเป็นเมื่อใช้--entity-type --custom-list-path,-ccustom-list-path-
Path ไปยังไฟล์ risk list แบบกำหนดเอง ไม่สามารถใช้ร่วมกับ
--entity-typeหรือ--list-name --output-path,-ooutput-path-
Path ของไฟล์ output ค่าเริ่มต้นคือ directory ปัจจุบันพร้อมชื่อไฟล์ที่สร้างอัตโนมัติ
--as-json,-j-
แปลง risk list เป็นรูปแบบ JSON สามารถใช้ได้เฉพาะกับ
--list-nameและ--entity-type --help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Usage Examples
# ดาวน์โหลด default risk list สำหรับ IP address
banshee risklist fetch -e ip -l default
# ดาวน์โหลด large risk list สำหรับ domain เป็น JSON
banshee risklist fetch -e domain -l large -j
# ดาวน์โหลด risk list สำหรับ hash ที่เกี่ยวข้องกับ Insikt Group Note
banshee risklist fetch -e hash -l analystNote
# ดาวน์โหลดไฟล์ risk list แบบกำหนดเอง
banshee risklist fetch -c /path/to/custom_risklist.csv
# ดาวน์โหลด default risklist สำหรับ URL และบันทึกไปยัง output path ที่ระบุ
banshee risklist fetch -e url -l default -o /tmp/rf_default_url_risklist.csv
banshee risklist stat¶
แสดง metadata ของ risk list รวมถึงข้อมูล etag และ timestamp
คำสั่งนี้ดึง metadata สำหรับ risk list โดยไม่ต้องดาวน์โหลดเนื้อหา list ทั้งหมด สามารถใช้เพื่อตรวจสอบว่า risk list ถูกอัปเดตล่าสุดเมื่อใด
Usage
Options
--entity-type,-eentity-type-
ประเภท entity สำหรับ risk list ค่าที่ถูกต้อง:
ip,domain,url,hash,vulnerability
จำเป็นเมื่อใช้--list-name --list-name,-llist-name-
ชื่อ risk list:
default,largeหรือชื่อ rule จากbanshee ioc rules
จำเป็นเมื่อใช้--entity-type --custom-list-path,-ccustom-list-path-
Path ไปยังไฟล์ risk list แบบกำหนดเอง ไม่สามารถใช้ร่วมกับ
--entity-typeหรือ--list-name --pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--count,-C-
แสดงจำนวน IOC และการกระจาย risk score ใน risk list
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Usage Examples
# ตรวจสอบ metadata สำหรับ IP risk list เริ่มต้น
banshee risklist stat -e ip -l default
# ตรวจสอบ metadata พร้อมการจัดรูปแบบแบบ pretty
banshee risklist stat -e domain -l large -p
# ตรวจสอบ metadata สำหรับไฟล์ risk list แบบกำหนดเอง
banshee risklist stat -c /path/to/custom_risklist.txt
# นับ indicator ตาม risk score ใน IP risk list เริ่มต้นและแสดงแบบ pretty
banshee risklist stat -e ip -l default -Cp
banshee rules¶
ค้นหาและดาวน์โหลด detection rules
Usage
Commands
banshee rules searchค้นหา detection rules ตามตัวเลือกการกรอง
banshee rules search¶
ค้นหา detection rules ตามตัวเลือกการกรองที่ระบุ ผลลัพธ์สามารถแสดงใน console หรือบันทึกลงดิสก์เป็นไฟล์ rule แต่ละรายการ
Detection rules สามารถกรองตามประเภท (YARA, Snort, Sigma) entity ที่เกี่ยวข้อง (threat actor, malware, MITRE ATT&CK technique) วันที่สร้าง/อัปเดต และอื่น ๆ ใช้ --threat-actor-map หรือ --threat-malware-map เพื่อกรอง rule โดยอัตโนมัติตาม entity ใน Threat Map ของคุณ
เพื่อหลีกเลี่ยง output ที่มากเกินไป ผลลัพธ์จะถูกจำกัดที่ 10 รายการโดยค่าเริ่มต้น ใช้ตัวเลือก --limit เพื่อดึง rule ได้สูงสุด 1,000 รายการ
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Options
--type,-ttype-
กรองตามประเภท rule ค่าที่ถูกต้อง:
yara,snort,sigma
สามารถระบุหลายประเภทได้ โดยทำงานเป็น OR เชิงตรรกะ (เช่น-t yara -t snortจะส่งคืน rule ที่ตรงกับประเภทใดประเภทหนึ่ง) --threat-actor-map,-T-
กรอง rule ตาม threat actor จาก Threat Actor Map ของคุณ เมื่อเปิดใช้งาน จะส่งคืน detection rules ที่เกี่ยวข้องกับ actor ใน Threat Actor Map ของคุณ
--threat-actor-category,-Ccategory-
กรองตามหมวดหมู่ threat actor จาก Threat Actor Map ของคุณ สามารถระบุหลายหมวดหมู่ได้ โดยทำงานเป็น OR เชิงตรรกะ (เช่น
-C nation_state_sponsored -C ransomware_and_extortion_groups) --threat-malware-map,-M-
กรอง rule ตาม malware จาก Malware Threat Map ของคุณ เมื่อเปิดใช้งาน จะส่งคืน detection rules ที่เกี่ยวข้องกับ malware ใน Malware Threat Map ของคุณ
--org-id,-Oorg-id-
ระบุ organization ID เมื่อดึง threat actor จาก Threat Maps (ต้องใช้ร่วมกับ
--threat-actor-mapหรือ--threat-malware-map) รับค่าที่มีหรือไม่มี prefixuhash:เหมาะสำหรับบัญชี MSSP และหลายองค์กร --entity,-eentity-
กรองตาม Recorded Future entity ID ที่เกี่ยวข้องกับ detection rules สามารถระบุหลาย entity ได้ โดยทำงานเป็น OR เชิงตรรกะ ใช้
banshee entity searchเพื่อค้นหา entity ID (เช่นlzQ5GLสำหรับ malware IsaacWiper,mitre:T1486สำหรับ Data Encrypted for Impact) --created-after,-atime-
กรอง detection rules ที่สร้างหลังจากเวลาที่ระบุ รับเวลาแบบ relative (เช่น
1d,3d,7d) หรือวันที่แบบ absolute (เช่น2024-01-01) --created-before,-btime-
กรอง detection rules ที่สร้างก่อนเวลาที่ระบุ รับเวลาแบบ relative (เช่น
1d,3d,7d) หรือวันที่แบบ absolute (เช่น2024-01-01) --updated-after,-utime-
กรอง detection rules ที่อัปเดตหลังจากเวลาที่ระบุ รับเวลาแบบ relative (เช่น
1d,3d,7d) หรือวันที่แบบ absolute (เช่น2024-01-01) --updated-before,-Utime-
กรอง detection rules ที่อัปเดตก่อนเวลาที่ระบุ รับเวลาแบบ relative (เช่น
1d,3d,7d) หรือวันที่แบบ absolute (เช่น2024-01-01) --id,-idocument-id-
กรองตาม Insikt Note document ID เฉพาะที่เกี่ยวข้องกับ detection rules (เช่น
doc:lmRPGB) --title,-ntitle-
ค้นหา detection rules ด้วยข้อความอิสระตามชื่อ Insikt Note ที่เกี่ยวข้อง
--limit,-llimit-
จำนวนสูงสุดของ detection rules ที่จะส่งคืน
ค่าเริ่มต้นคือ 10
--output-path,-ooutput-path-
บันทึก detection rules ไปยัง directory ที่ระบุ สามารถเป็น relative หรือ absolute path ได้ หากไม่ระบุ ผลลัพธ์จะแสดงใน console
--pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Usage Examples
# ค้นหา YARA rules ที่สร้างใน 7 วันที่ผ่านมา
banshee rules search -t yara -a 7d
# ค้นหา rule ที่เกี่ยวข้องกับ threat actor ใน Threat Map และแสดงแบบ pretty
# เนื่องจาก --limit ค่าเริ่มต้นคือ 10 จะส่งคืน rule ที่ตรงกัน 10 รายการแรก
banshee rules search -Tp
# รวม threat actor และ malware maps
banshee rules search -TMp
# ค้นหา rule ตาม entity ID เฉพาะ (เช่น malware IsaacWiper)
banshee rules search -e lzQ5GL -p
# ค้นหา Snort และ Sigma rules ที่อัปเดตใน 3 วันที่ผ่านมา บันทึกไปยัง directory
banshee rules search -t snort -t sigma -u 3d -o ./detection_rules
# ค้นหาตามชื่อ Insikt Note
banshee rules search --title "APT28" -p
banshee sandbox¶
การวิเคราะห์การส่ง sandbox และการจัดการ profile
Usage
Commands
banshee sandbox statsรวบรวมสถิติการส่ง sandbox ในช่วงเวลาที่กำหนดและแสดงสรุปสำหรับ SOC ยามเช้า
banshee sandbox listแสดงรายการ sandbox sample
banshee sandbox searchค้นหา sample ตาม hash, family, tag, botnet, wallet, network indicator หรือ Triage query แบบ raw
banshee sandbox getดึงสรุปสำหรับ sandbox sample รายการเดียวตาม ID
banshee sandbox downloadดาวน์โหลด bytes ที่ส่งเดิมสำหรับ sample ID หนึ่งรายการหรือมากกว่า (บรรจุใน ZIP archive ที่เข้ารหัส AES)
banshee sandbox deleteลบ sandbox sample ตาม ID
banshee sandbox submitส่งไฟล์ URL หรือ public sample เพื่อวิเคราะห์ใน sandbox
banshee sandbox set-profileกำหนด analysis profile ให้กับ sample ที่หยุดอยู่ที่ static analysis
banshee sandbox profileจัดการ analysis profile
banshee sandbox reportรายงานการวิเคราะห์ sample
banshee sandbox stats¶
รวบรวมสถิติการส่ง sandbox ในช่วงเวลาที่กำหนดและแสดง "สรุปยามเช้า" ที่เหมาะสำหรับการส่งต่อกะ SOC หรือการ triage ประจำวัน
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Score Buckets
Sandbox ให้คะแนน sample ในระดับ triage 1–10 ผลลัพธ์จะถูกจัดกลุ่มเป็น bucket ดังต่อไปนี้:
| Bucket | ช่วงคะแนน | ความหมาย |
|---|---|---|
malicious |
8–10 | Malware ที่ทราบแล้ว ความมั่นใจสูง |
suspicious |
5–7 | มี behavioural indicator ที่ชัดเจน |
potentially_suspicious |
3–4 | มี indicator บางอย่าง |
clean |
1–2 | ความเสี่ยงต่ำหรือไม่เป็นอันตราย |
Usage
Options
--days,-ddays-
ช่วงเวลาย้อนหลังในหน่วยวัน
ค่าเริ่มต้นคือ 7
--subset,-ssubset-
ขอบเขต sample ที่จะรวบรวม
ค่าที่เป็นไปได้:
owned,public,orgค่าเริ่มต้นคือ
org --pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Example Usage
banshee sandbox stats
banshee sandbox stats --days 14 --subset owned --pretty
banshee sandbox stats --days 30 --pretty
banshee sandbox list¶
แสดงรายการ sandbox sample — ของตัวเอง ขององค์กร (ค่าเริ่มต้น) หรือ feed สาธารณะ
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Options
--subset,-ssubset-
ขอบเขต sample ที่จะแสดง
ค่าที่เป็นไปได้:
owned,public,orgค่าเริ่มต้นคือ
org --limit,-llimit-
จำนวนสูงสุดของ sample ที่จะส่งคืน
ช่วงที่รับได้: 1–4095
ค่าเริ่มต้นคือ 20
--pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Example Usage
banshee sandbox list
banshee sandbox list --subset owned
banshee sandbox list -s public -l 50
banshee sandbox list -p
banshee sandbox list | jq '.[].sha256'
banshee sandbox search¶
ค้นหา sample ที่ตรงกับตัวกรองแบบมีโครงสร้าง (hash, family, tag, botnet, wallet, IP, domain, URL, ช่วงวันที่ส่ง) หรือ Triage query แบบ raw ต้องระบุตัวกรองอย่างน้อยหนึ่งตัวหรือ --query
Usage
Options
--hashhash-
กรองตาม file hash (MD5/SHA1/SHA256)
--familyfamily-
กรองตามชื่อ malware family
--tag,-Ttag-
กรองตาม tag (ระบุได้หลายครั้ง)
--botnetbotnet-
กรองตามชื่อ botnet
--walletwallet-
กรองตาม wallet address
--ipip-
กรองตาม IP address
--domaindomain-
กรองตาม domain
--urlurl-
กรองตาม URL
--from-dateYYYY-MM-DD-
ส่งเมื่อวันนี้หรือหลังจากวันที่นี้
--to-dateYYYY-MM-DD-
ส่งเมื่อวันนี้หรือก่อนวันที่นี้
--query,-qquery-
Triage query string แบบ raw (รวมกับตัวกรองแบบมีโครงสร้างโดยใช้ AND)
--limit,-llimit-
จำนวนสูงสุดของ sample ที่จะส่งคืน (1–200)
ค่าเริ่มต้นคือ 50
--pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Example Usage
banshee sandbox search --hash e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
banshee sandbox search --family emotet
banshee sandbox search --ip 1.2.3.4 --domain evil.example
banshee sandbox search -T ransomware -T persistence
banshee sandbox search --from-date 2026-07-01 --to-date 2026-07-31 --family vidar
banshee sandbox search -q "NOT family:emotet" -l 100
banshee sandbox search --family emotet -p
banshee sandbox search --family emotet | jq '.[].sha256'
banshee sandbox get¶
ดึงสรุปสำหรับ sandbox sample รายการเดียวตาม ID: สถานะปัจจุบัน คะแนนรวม เป้าหมาย timestamps การสร้างและเสร็จสิ้น SHA256 และรายละเอียดแต่ละ task ใช้ได้กับทั้ง sample ที่กำลังดำเนินการและที่เสร็จสมบูรณ์แล้ว
Usage
Arguments
SAMPLE_IDSandbox sample ID
Options
Example Usage
banshee sandbox get 260501-h4p7laawme
banshee sandbox get 260501-h4p7laawme -p
banshee sandbox get 260501-h4p7laawme | jq '.score'
banshee sandbox get 260501-h4p7laawme | jq '.tasks | keys'
banshee sandbox download¶
ดาวน์โหลด bytes ของ sample ที่ส่งเดิมสำหรับ sample ID หนึ่งรายการหรือมากกว่า sample แต่ละรายการจะถูกบรรจุใน ZIP archive ที่เข้ารหัส AES พร้อมรหัสผ่าน infected เพื่อป้องกันการ detonate โดยไม่ตั้งใจโดย antivirus, secure email gateway หรือ file manager
แตกไฟล์ด้วย 7z x -pinfected <sample-id>.zip — unzip มาตรฐานไม่รองรับ ZIP ที่เข้ารหัส AES อย่างน่าเชื่อถือ
Sample ID สามารถส่งเป็น positional argument หรือ pipe ทาง stdin (คั่นด้วยช่องว่าง) จะแสดงคำยืนยันหากไม่ได้ระบุ --yes
หมายเหตุด้านความปลอดภัย: bytes ของ sample จะอยู่ใน memory ของ process นี้ชั่วคราวระหว่างการดาวน์โหลดและการบีบอัด การสแกน memory ของ EDR ที่ aggressive อาจยังตรวจพบได้ ควรรันบนเครื่องของ analyst ไม่ใช่ laptop ขององค์กรที่ใช้งานประจำ
Usage
Arguments
SAMPLE_IDSSample ID หนึ่งรายการหรือมากกว่า (หรืออ่านจาก stdin คั่นด้วยช่องว่าง)
Options
--output-dir,-dDIR-
Directory สำหรับบันทึก encrypted zip archive (สร้างหากไม่มี) จำเป็น
--yes,-y-
ข้ามคำยืนยัน
--workers,-wN-
จำนวน parallel download worker (1–16)
ค่าเริ่มต้นคือ 1
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Example Usage
banshee sandbox download 260501-h4p7laawme -d ./samples
banshee sandbox download id1 id2 id3 -d ./samples --yes -w 4
echo 'id1 id2 id3' | banshee sandbox download -d ./samples --yes
# แตกไฟล์
7z x -pinfected ./samples/260501-h4p7laawme.zip
banshee sandbox delete¶
ลบ sandbox sample ตาม ID และลบ task artifact ที่เกี่ยวข้องทั้งหมด
Usage
Arguments
SAMPLE_IDSample ID ที่ต้องการลบ
Options
Example Usage
banshee sandbox delete 260501-h4p7laawme
banshee sandbox delete 260501-h4p7laawme -y
banshee sandbox submit¶
ส่ง sample เพื่อวิเคราะห์ ไฟล์ local จะถูกอัปโหลด URL จะถูก detonate ใน browser (หรือดาวน์โหลดก่อนด้วย --fetch) และ public sample สามารถนำเข้าตาม ID ด้วย --import
โดยค่าเริ่มต้น คำสั่งจะแสดง JSON submission receipt ใช้ --wait เพื่อ poll จนกว่าการวิเคราะห์จะเสร็จสมบูรณ์และแสดงรายงานสรุป
Target Kinds
| Target | พฤติกรรม |
|---|---|
| Local file path | อัปโหลดและวิเคราะห์ |
| URL | Detonate ใน browser |
URL + --fetch |
ดาวน์โหลดก่อน จากนั้นวิเคราะห์เป็นไฟล์ |
Public sample ID + --import |
นำเข้าใน sandbox ขององค์กรของคุณ |
Usage
Arguments
TARGETFile path, URL หรือ public sample ID (พร้อม
--import)
Options
--fetch-
ดาวน์โหลด URL target ก่อน จากนั้นวิเคราะห์ไฟล์ที่ได้ ใช้ร่วมกับ
--importไม่ได้ --import-
ถือว่า target เป็น public sample ID เพื่อนำเข้าใน sandbox ขององค์กรของคุณ ใช้ร่วมกับ
--fetchไม่ได้ --profileprofile-
ชื่อหรือ ID ของ analysis profile สามารถระบุได้หลายครั้งเพื่อกำหนดมากกว่าหนึ่ง profile ใช้ร่วมกับ
--interactiveไม่ได้ --timeout,-tseconds-
เวลา timeout ในการวิเคราะห์ (วินาที)
ช่วงที่รับได้: 1–3600
--network,-Nmode-
โหมด network สำหรับ analysis environment
ค่าที่เป็นไปได้:
internet,drop,tor,vpn,sim200,sim404,simnx --geolocationcountry-code-
รหัสประเทศของ VPN exit ต้องใช้ร่วมกับ
--network vpn -
Tag แบบกำหนดเองที่จะแนบกับ submission สามารถระบุได้หลายครั้ง
--passwordpassword-
รหัสผ่านสำหรับ archive ที่มีการป้องกัน
--wait,-w-
Poll จนกว่าการวิเคราะห์จะเสร็จสิ้น จากนั้นแสดงรายงานสรุป
--interactive,-i-
หยุดที่ static analysis เพื่อให้เลือกไฟล์และ profile ผ่าน
banshee sandbox set-profileใช้ร่วมกับ--profileไม่ได้ --pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Example Usage
banshee sandbox submit malware.exe
banshee sandbox submit https://evil.com
banshee sandbox submit https://cdn.evil.com/payload.exe --fetch
banshee sandbox submit 250601-abc123 --import
banshee sandbox submit malware.zip --password infected --profile win10-x64 -T case-42
banshee sandbox submit malware.exe --network vpn --geolocation us -t 300
banshee sandbox submit malware.exe --wait | jq '.analysis.score'
banshee sandbox submit archive.zip --interactive --wait --pretty
banshee sandbox set-profile¶
กำหนด analysis profile ให้กับ sample ที่หยุดอยู่ที่ static analysis (ส่งพร้อม --interactive) ใช้ --auto เพื่อให้ sandbox เลือก profile โดยอัตโนมัติ หรือ --pick เพื่อกำหนดไฟล์เฉพาะให้กับ profile เฉพาะด้วยตนเอง
Usage
Arguments
SAMPLE_IDID ของ sample ที่หยุดอยู่ที่ static analysis
Options
--auto,-a-
ให้ sandbox เลือก profile สำหรับไฟล์ทั้งหมดโดยอัตโนมัติ ใช้ร่วมกับ
--pickไม่ได้ --pickFILE:PROFILE-
กำหนดไฟล์เฉพาะให้กับ profile เฉพาะ ในรูปแบบ
FILE:PROFILEสามารถระบุได้หลายครั้ง ใช้ร่วมกับ--autoไม่ได้ --pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Example Usage
banshee sandbox set-profile 260501-h4p7laawme --auto
banshee sandbox set-profile 260501-h4p7laawme --pick file.exe:win10-x64
banshee sandbox set-profile 260501-h4p7laawme --pick file.exe:win10-x64 --pick doc.docx:office365
banshee sandbox set-profile 260501-h4p7laawme --auto -p
banshee sandbox set-profile 260501-h4p7laawme --pick file.exe:win10-x64 | jq '.success'
banshee sandbox profile¶
จัดการ analysis profile
Usage
Commands
banshee sandbox profile listแสดงรายการ analysis profile ทั้งหมดที่มี
banshee sandbox profile getดูรายละเอียดของ profile เฉพาะ
banshee sandbox profile createสร้าง analysis profile ใหม่
banshee sandbox profile updateอัปเดต analysis profile ที่มีอยู่
banshee sandbox profile deleteลบ analysis profile
banshee sandbox profile list¶
แสดงรายการ analysis profile ทั้งหมดที่มี
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Options
Example Usage
banshee sandbox profile list
banshee sandbox profile list -p
banshee sandbox profile list | jq '.[].name'
banshee sandbox profile get¶
ดูรายละเอียดของ analysis profile เฉพาะตามชื่อหรือ ID
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Arguments
PROFILE_ID_OR_NAMEProfile UUID หรือชื่อที่แสดง
Options
Example Usage
banshee sandbox profile get 022b8c4e-22ab-46a4-ac49-a2732b2412b7
banshee sandbox profile get 'Windows 7 Long'
banshee sandbox profile get w7-long -p
banshee sandbox profile get w7-long | jq '.tags'
banshee sandbox profile create¶
สร้าง analysis profile ใหม่
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Profile Tags
Tags กำหนดระบบปฏิบัติการและ environment สำหรับ profile ต้องระบุ locale tag พร้อมกับ os tag อย่างน้อยหนึ่งรายการเสมอ
# OS เท่านั้น
banshee sandbox profile create -n my-profile -T os:windows10-2004-x64
# OS + locale
banshee sandbox profile create -n my-profile -T os:windows10-2004-x64 -T locale:en-us
Usage
Options
--name,-nname-
ชื่อที่แสดงของ profile จำเป็น
--tag,-Ttag-
Profile tag (เช่น
os:windows10-2004-x64,locale:en-us) สามารถระบุได้หลายครั้ง จำเป็น --timeout,-tseconds-
เวลา timeout ในการวิเคราะห์ (วินาที)
ช่วงที่รับได้: 1–3600
ค่าเริ่มต้นคือ 120
--network,-Nmode-
โหมด network
ค่าที่เป็นไปได้:
internet,drop,tor,vpn,sim200,sim404,simnx --geolocationcountry-code-
รหัสประเทศของ VPN exit สามารถระบุได้หลายครั้ง ต้องใช้ร่วมกับ
--network vpn --browser,-bbrowser-
Browser สำหรับการ detonate URL
ค่าที่เป็นไปได้:
chrome,firefox,ie11,microsoft-edge --pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Example Usage
banshee sandbox profile create -n w10-quick -T os:windows10-2004-x64 -t 120
banshee sandbox profile create -n w10-vpn -T os:windows10-2004-x64 -t 300 -N vpn --geolocation se
banshee sandbox profile create -n w10-ff -T os:windows10-2004-x64 -T locale:en-us -t 120 -b firefox -p
banshee sandbox profile create -n w10-quick -T os:windows10-2004-x64 -t 120 | jq '.id'
banshee sandbox profile update¶
อัปเดต analysis profile ที่มีอยู่ตามชื่อหรือ ID ต้องระบุ option อย่างน้อยหนึ่งตัว
Output จะเป็น {"updated": true} หรือ {"updated": false} (ออกด้วย exit code 0 ในทุกกรณี)
Usage
Arguments
PROFILE_ID_OR_NAMEProfile UUID หรือชื่อที่แสดงที่ต้องการอัปเดต
Options
--name,-nname-
ชื่อที่แสดงของ profile ใหม่
--tag,-Ttag-
แทนที่ tag ที่มีอยู่ทั้งหมด สามารถระบุได้หลายครั้ง
--timeout,-tseconds-
เวลา timeout ในการวิเคราะห์ (วินาที)
ช่วงที่รับได้: 1–3600
--network,-Nmode-
โหมด network
ค่าที่เป็นไปได้:
internet,drop,tor,vpn,sim200,sim404,simnx --geolocationcountry-code-
รหัสประเทศของ VPN exit สามารถระบุได้หลายครั้ง ต้องใช้ร่วมกับ
--network vpn --browser,-bbrowser-
Browser สำหรับการ detonate URL
ค่าที่เป็นไปได้:
chrome,firefox,ie11,microsoft-edge --unsetfield-
ล้างค่าของฟิลด์ สามารถระบุได้หลายครั้ง
ค่าที่เป็นไปได้:
network,browser,geolocationไม่สามารถใช้ร่วมกับ option ที่ตั้งค่าฟิลด์เดียวกัน
--unset networkขัดแย้งกับ--geolocation --pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Example Usage
banshee sandbox profile update ernie -n ernie-v2
banshee sandbox profile update ernie -T os:windows10-2004-x64 -T locale:en-us
banshee sandbox profile update ernie -t 300 -N vpn --geolocation us --geolocation gb
banshee sandbox profile update ernie --unset browser --unset network
banshee sandbox profile update ernie -n ernie-v2 | jq '.updated'
banshee sandbox profile delete¶
ลบ analysis profile ตามชื่อหรือ ID การลบ profile ที่ไม่มีอยู่จะแสดงคำเตือนและออกด้วย exit code 0
Usage
Arguments
PROFILE_ID_OR_NAMEProfile UUID หรือชื่อที่แสดงที่ต้องการลบ
Options
Example Usage
banshee sandbox profile delete 022b8c4e-22ab-46a4-ac49-a2732b2412b7
banshee sandbox profile delete 'Windows 7 Long'
banshee sandbox profile delete w7-long -y
banshee sandbox report¶
รายงานการวิเคราะห์ sample
Usage
Commands
banshee sandbox report overviewรายงานสรุปฉบับเต็มสำหรับ sample ที่วิเคราะห์เสร็จแล้ว
banshee sandbox report staticรายงาน static analysis — มีให้ก่อน behavioural task เสร็จสิ้น
banshee sandbox report behavioralรายงาน behavioural analysis — หนึ่ง object ต่อ task ที่เสร็จสมบูรณ์
banshee sandbox report overview¶
รายงานสรุปฉบับเต็มสำหรับ sample ที่วิเคราะห์เสร็จแล้ว ประกอบด้วย verdict score, malware family, tags, hashes, detection signature, malware config ที่ดึงมา, network IOC และผลลัพธ์แต่ละ task Sample ต้องอยู่ในสถานะ reported
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Arguments
SAMPLE_IDSample ID ที่ต้องการดึงรายงาน
Options
--wait,-w-
Poll จนกว่ารายงานจะพร้อม (สูงสุด 30 นาที) ออกด้วย exit code ที่ไม่ใช่ศูนย์หากยังไม่พร้อมหลังจาก timeout
--pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Example Usage
banshee sandbox report overview 260501-h4p7laawme
banshee sandbox report overview 260501-h4p7laawme -p
banshee sandbox report overview 260501-h4p7laawme --wait
banshee sandbox report overview 260501-h4p7laawme | jq '.analysis'
banshee sandbox report overview 260501-h4p7laawme | jq '.targets[].iocs'
banshee sandbox report static¶
รายงาน static analysis สำหรับ sample ประกอบด้วย verdict score, tags, ไฟล์ที่ unpack, static detection signature และ malware config ที่ดึงมา มีให้ก่อน behavioural task เสร็จสิ้น
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Arguments
SAMPLE_IDSample ID ที่ต้องการดึงรายงาน static
Options
--wait,-w-
Poll จนกว่ารายงานจะพร้อม (สูงสุด 10 นาที)
--pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Example Usage
banshee sandbox report static 260501-h4p7laawme
banshee sandbox report static 260501-h4p7laawme -p
banshee sandbox report static 260501-h4p7laawme --wait
banshee sandbox report static 260501-h4p7laawme | jq '.analysis'
banshee sandbox report static 260501-h4p7laawme | jq '.files[].sha256'
banshee sandbox report behavioral¶
รายงาน behavioural analysis สำหรับ sample ส่งคืน JSON object หนึ่งรายการต่อ behavioural task ที่เสร็จสมบูรณ์ ประกอบด้วย verdict score, platform, signature ที่ถูก trigger, process ที่สังเกตพบ, network activity และ malware config ที่ดึงมา
Task ที่ยังไม่เสร็จสมบูรณ์จะถูกละเว้นจาก output และแสดงใน stderr คำสั่งจะออกด้วย exit code ที่ไม่ใช่ศูนย์จนกว่า task ทั้งหมดจะเสร็จสมบูรณ์ จะส่งคืน array ว่างพร้อม exit 0 เมื่อไม่มี behavioural task สำหรับ sample
โดยค่าเริ่มต้น คำสั่งจะแสดงผลลัพธ์ในรูปแบบ JSON
Usage
Arguments
SAMPLE_IDSample ID ที่ต้องการดึงรายงาน behavioural
Options
--wait,-w-
Poll จนกว่า task ทั้งหมดจะเสร็จสมบูรณ์ (สูงสุด 30 นาที)
--full-cmd-
แสดง command line ของ process แบบเต็มโดยไม่ตัดทอน เนื้อหา command line นำมาโดยตรงจาก malware sample และควรถือว่าเป็น input ที่ไม่น่าเชื่อถือ
--pretty,-p-
แสดงผลลัพธ์ในรูปแบบที่อ่านง่ายสำหรับมนุษย์
--help,-h-
แสดงความช่วยเหลือสำหรับคำสั่งนี้
Example Usage
banshee sandbox report behavioral 260501-h4p7laawme
banshee sandbox report behavioral 260501-h4p7laawme -p
banshee sandbox report behavioral 260501-h4p7laawme --wait
banshee sandbox report behavioral 260501-h4p7laawme -p --full-cmd
banshee sandbox report behavioral 260501-h4p7laawme | jq '.[].analysis.score'
banshee sandbox report behavioral 260501-h4p7laawme | jq '.[].network.flows'