L-Flow›Alert Rules›Overview

กฎแจ้งเตือน

กฎแจ้งเตือนคือเงื่อนไขที่ตรวจ log ของ tenant คุณอย่างต่อเนื่อง แล้วแจ้งทีมเมื่อพบสิ่งผิดปกติ — ตั้งค่าได้เองจากหน้าจอ โดยไม่ต้องเขียนโค้ด ส่วนหน้านี้อธิบายทั้งวิธีสร้างกฎ (สำหรับผู้ดูแลระบบของ tenant) และสิ่งที่เกิดขึ้นเบื้องหลังเมื่อกฎทำงานจริง (สำหรับทีม SOC ที่ต้องสืบสวนต่อจากการแจ้งเตือน)

การทำงาน

ระบบตรวจกฎที่เปิดใช้งานทุก tenant ทุก 60 วินาที แต่ละกฎรัน query กับ log ของ tenant ตัวเองเท่านั้น กฎหนึ่งที่ตรวจช้าหรือผิดพลาดจะไม่ทำให้กฎอื่นหยุดตาม เมื่อค่าที่วัดได้ถึงเกณฑ์ที่ตั้งไว้ ระบบจะบันทึกเป็นรายการแจ้งเตือน และส่งข้อความ Telegram ทันที (ถ้าเปิด ส่งการแจ้งเตือนผ่าน Telegram ไว้)

  • กฎแต่ละข้อจำกัดเฉพาะอุปกรณ์ที่เลือกไว้ใน อุปกรณ์ที่เฝ้าดู — ค่าเริ่มต้นคือทุกอุปกรณ์ที่ใช้งานอยู่ของ tenant
  • เปิด นับแยกรายอุปกรณ์ เพื่อให้แต่ละอุปกรณ์เทียบกับเกณฑ์แยกกัน แจ้งเตือนทันทีที่อุปกรณ์ใดอุปกรณ์หนึ่งถึงเกณฑ์ ไม่ต้องรอรวมทุกอุปกรณ์
  • กฎที่ผูกกับอุปกรณ์ซึ่งถูกลบหรือปิดใช้งานไปแล้วทั้งหมดจะถูกข้ามในรอบนั้น ไม่เงียบขยายไปตรวจอุปกรณ์อื่นแทน
Note:ผลการทดสอบหรือการแจ้งเตือนอาจ “ตรงเกณฑ์” ทางสถิติ แต่ไม่ได้แปลว่าเป็นภัยคุกคามเสมอไป — ควรตรวจบริบทจริงใน Explore ก่อนสรุปผล

ประเภทของกฎ

เลือกได้จากช่อง ประเภทกฎ ตอนสร้างกฎแบบกำหนดเอง — ทั้งสามแบบใช้ตัวกรอง LogsQL เดียวกันเป็นฐาน ต่างกันที่วิธีตัดสินว่าถึงเกณฑ์หรือไม่

ประเภทวิธีตัดสินใช้เมื่อไหร่
Thresholdนับ/รวม/นับค่าไม่ซ้ำ แล้วเทียบกับเกณฑ์คงที่ตัวเดียวรู้ตัวเลขที่ถือว่าผิดปกติอยู่แล้ว เช่น ทราฟฟิกขาออกเกิน 5 GB ใน 1 ชั่วโมง
Correlationเชื่อมหลายเหตุการณ์ของ entity เดียวกันตามลำดับเวลา (Stages)รูปแบบการโจมตีที่ต้องดูหลายเหตุการณ์ประกอบกัน เช่น login ผิดหลายครั้งแล้วสำเร็จจาก IP อื่นภายในเวลาสั้นๆ
Baselineเทียบกับค่าเฉลี่ยและส่วนเบี่ยงเบนมาตรฐานของกลุ่มนั้นเองย้อนหลัง แทนเกณฑ์คงที่แต่ละอุปกรณ์/ผู้ใช้มีปริมาณ log ปกติไม่เท่ากัน จึงตั้งเลขตายตัวลำบาก เช่น ทราฟฟิกพุ่งผิดปกติเทียบกับพฤติกรรมปกติของอุปกรณ์นั้น
Restriction:กฎแบบ Baseline ต้องสะสมประวัติอย่างน้อยตาม ประวัติขั้นต่ำ (จำนวนตัวอย่าง)ก่อน (ค่าเริ่มต้น 20 รอบ) ระหว่างนั้นจะยังไม่แจ้งเตือน แม้ค่าจะดูสูงผิดปกติในสายตาคนก็ตาม — ป้องกันการยึดค่าที่ผิดปกติมาเป็น “ปกติ” ตั้งแต่ยังไม่มีข้อมูลพอ

สร้างกฎ

จากหน้า กฎการแจ้งเตือน เลือก กฎใหม่ แล้วเลือกทางใดทางหนึ่ง: เลือกเทมเพลตกฎ (คลังกฎสำเร็จรูปจาก Sigma และ preset ที่มีให้ใช้ทันที) หรือ สร้างกฎของคุณเอง เพื่อกำหนดทุกอย่างเอง

ฟิลด์หลักของกฎแบบกำหนดเอง:

ฟิลด์ความหมาย
ชื่อกฎ *ชื่อที่จะแสดงในรายการแจ้งเตือนและข้อความ Telegram
ระดับความรุนแรง *critical · high · medium · low
ตัวกรอง LogsQLเงื่อนไขคัดกรอง log ก่อนนำไปคำนวณ เช่น เฉพาะ type ที่สนใจ
สิ่งที่จะวัดนับจำนวน (count) · รวมค่าฟิลด์ตัวเลข (sum) · นับค่าไม่ซ้ำ (count distinct)
เกณฑ์ตัวเลขที่ถือว่าถึงจุดแจ้งเตือน (เฉพาะ Threshold/Baseline ขั้นสูง)
ช่วงเวลาช่วงย้อนหลังที่นำมาคำนวณค่า
ระยะพักการแจ้งเตือนหลังแจ้งเตือนครั้งหนึ่ง จะไม่แจ้งซ้ำจนกว่าจะพ้นช่วงนี้ แม้ยังเข้าเงื่อนไขต่อเนื่อง
จำกัดเฉพาะประเภทสินทรัพย์จำกัดขอบเขตให้ตรงเฉพาะทราฟฟิกที่แตะ IP ซึ่งติดแท็กประเภทสินทรัพย์ที่เลือกไว้ในหน้า Assets
Hash ไฟล์ที่รู้ว่าเป็นมัลแวร์จำกัดเฉพาะเหตุการณ์ที่ค่าแฮชไฟล์ตรงกับรายการอันตรายที่รู้จักจากฟีดข่าวกรองภัยคุกคาม
ส่งการแจ้งเตือนผ่าน Telegramเปิด/ปิดการส่งข้อความไปยังทุกช่อง Telegram ที่เปิดใช้งานไว้เมื่อกฎนี้ทำงาน

ถ้าไม่มีสินทรัพย์ในหมวดที่เลือกไว้เลย หรือยังไม่มีข้อมูลแฮชอันตรายในระบบ กฎรอบนั้นจะถูกข้าม ไม่ใช่แจ้งเตือนแบบไม่มีเงื่อนไข

ทดสอบกฎนี้กับล็อกจริงของคุณ

ก่อนบันทึกกฎ กด รันการทดสอบ เพื่อรัน query จริงกับ log ของ tenant คุณโดยไม่มีผลข้างเคียง — ไม่สร้างรายการแจ้งเตือน ไม่นับ fire count และไม่กระทบระยะพักการแจ้งเตือนที่มีอยู่แล้ว ผลลัพธ์จะบอกว่า กฎนี้จะแจ้งเตือนทันทีหากใช้งานจริง หรือ ยังต่ำกว่าเกณฑ์ จึงยังไม่แจ้งเตือน พร้อมค่าที่วัดได้จริงเทียบกับเกณฑ์

  • ถ้าเปิด ส่งการแจ้งเตือนผ่าน Telegram ไว้และผลทดสอบตรงเงื่อนไข ระบบจะส่งข้อความทดสอบจริงไปยังช่องที่ตั้งค่าไว้ พร้อมป้ายกำกับชัดเจนว่าเป็นข้อความทดสอบ
  • กฎแบบ Correlation ยังไม่รองรับการทดสอบแบบนี้ — ต้องใช้เวลาจริงหลายรอบเพื่อไล่ครบทุกขั้นตอน
  • กฎแบบ Baseline ที่ยังไม่เคยบันทึกก็ยังทดสอบไม่ได้เช่นกัน เพราะยังไม่มีประวัติให้เทียบ

เมื่อกฎทำงาน

รายการแจ้งเตือนใหม่ปรากฏใน Firing now ของหน้า Alerts ทันที พร้อมอุปกรณ์ที่เป็นต้นเหตุหลักและสัดส่วนของอุปกรณ์อื่นที่เกี่ยวข้อง (สำหรับกฎที่นับแยกรายอุปกรณ์ ข้อมูลนี้มาจากผลตรวจโดยตรง ส่วนกฎแบบรวมทุกอุปกรณ์ ระบบจะยิง query เพิ่มอีกครั้งเฉพาะตอนแจ้งเตือนเพื่อหาตัวเลขนี้)

จากรายการแจ้งเตือน วิเคราะห์ต่อได้ทันทีด้วยปุ่มเปิดใน Explorer หรือแนบเข้าเคสที่มีอยู่ ถ้ากำหนด groupBy ให้ตรงกับ entity ของกฎไว้ (เช่น user.name) คะแนนความเสี่ยงของ entity นั้นจะถูกปรับเพิ่มโดยอัตโนมัติ ดูสะสมได้ที่หน้า Entities

ปิดเคสและติดตามความแม่นยำ

เมื่อตรวจสอบเสร็จแล้ว ทำเครื่องหมายรายการเป็น รับทราบ หรือ ปิด จากหน้า Alerts — ตอนปิดสามารถ เลือกเหตุผลเพิ่มเติมได้ (ไม่บังคับ):

เหตุผลความหมาย
แจ้งเตือนถูกต้อง (True positive)เป็นเหตุการณ์จริงที่ต้องดำเนินการต่อ
แจ้งเตือนผิดพลาด (False positive)ไม่ใช่เหตุการณ์จริง กฎตีความคลาดเคลื่อน
ไม่เป็นอันตราย (Benign)เกิดขึ้นจริงแต่เป็นกิจกรรมปกติ ไม่ใช่ภัยคุกคาม
ซ้ำกับรายการอื่น (Duplicate)เหตุการณ์เดียวกันถูกแจ้งเตือนซ้ำจากกฎหรือรอบอื่น
อื่น ๆเหตุผลอื่นนอกเหนือจากรายการข้างต้น

เหตุผลที่สะสมไว้นี้คือสิ่งที่บอกความแม่นยำของแต่ละกฎในระยะยาว แทนที่จะดูแค่จำนวนครั้งที่แจ้งเตือน — การปิดโดยไม่เลือกเหตุผลก็ยังใช้งานได้ตามปกติ ไม่บังคับ

ขั้นต่อไป

ให้ระบบทำงานต่อหลังกฎแจ้งเตือนโดยอัตโนมัติ — เปิดเคสหรือส่งข้อความ Telegram เพิ่มไปยังช่องเฉพาะทีมที่ต้องรับผิดชอบต่อ — ดูวิธีตั้งค่าที่หน้า Playbooks

ดูว่าผู้ใช้ IP หรือโฮสต์ใดถูกแจ้งเตือนสะสมมากที่สุดได้ที่ เอนทิตี