ข้ามไปยังเนื้อหา

เอกสารอ้างอิง CLI ​

แบ็กเอนด์ Rust ของ Ogma สามารถทำงานเป็นเซิร์ฟเวอร์พร็อกซีภายในเครื่อง กระบวนการ MCP แบบฝัง หรือคำสั่งทดสอบเจาะระบบที่ไม่มีส่วนติดต่อกราฟิกได้

ผู้ใช้แอปเดสก์ท็อปที่จัดแพ็กเกจไว้แล้วมักเปิด Ogma จากตัวแอป การใช้ CLI มีประโยชน์สำหรับการพัฒนา ระบบอัตโนมัติ และการทดสอบภายในเครื่องที่ต้องการให้ทำงานในรูปแบบเซิร์ฟเวอร์

โหมดเซิร์ฟเวอร์ ​

bash
ogma \
  --listen 127.0.0.1:8080 \
  --api-port 127.0.0.1:8181 \
  --data-dir ./ogma-data

แฟล็กที่ใช้บ่อย ​

แฟล็กค่าเริ่มต้นวัตถุประสงค์
--listen127.0.0.1:8080ที่อยู่ของตัวรับการเชื่อมต่อพร็อกซี
--api-port127.0.0.1:8181ที่อยู่ของ REST API และเซิร์ฟเวอร์ฟรอนต์เอนด์
--data-dir./ogma-dataฐานข้อมูลโครงการ ใบรับรอง ปลั๊กอิน ข้อมูลส่งออก และสถานะภายในเครื่อง
--max-plugin-size52428800ขนาดแพ็กเกจปลั๊กอินสูงสุดเป็นไบต์
--intercept-queue-cap1000จำนวนรายการดักรับในคิวสูงสุดก่อนที่จะส่งต่อทราฟฟิกใหม่
--ui-dirไม่ได้ตั้งค่าไดเรกทอรีที่มีไฟล์ฟรอนต์เอนด์ที่บิลด์แล้วสำหรับให้บริการจากเซิร์ฟเวอร์ API

แฟล็ก OAST ​

แฟล็กค่าเริ่มต้นวัตถุประสงค์
--oast-http-port8888ตัวรับการเรียกกลับผ่าน HTTP ใช้ 0 เพื่อปิดใช้งาน
--oast-https-port8443ตัวรับการเรียกกลับผ่าน HTTPS ใช้ 0 เพื่อปิดใช้งาน
--oast-dns-port5353ตัวรับการเรียกกลับผ่าน DNS ใช้ 0 เพื่อปิดใช้งาน
--oast-smtp-port2525ตัวรับการเรียกกลับผ่าน SMTP ใช้ 0 เพื่อปิดใช้งาน
--oast-domainoast.localโดเมนที่ใช้สำหรับชื่อโฮสต์การเรียกกลับที่สร้างขึ้น
--oast-public-ipไม่ได้ตั้งค่าIP สาธารณะที่ส่งกลับในคำตอบระเบียน A ของ DNS สำหรับ OAST

โหมดทดสอบเจาะระบบแบบไม่มีส่วนติดต่อกราฟิก ​

คำสั่งย่อย pentest ดำเนินการค้นหา วิเคราะห์แบบพาสซีฟ และสแกนแบบแอกทีฟหากเลือกใช้ พร้อมสร้างรายงาน Markdown

bash
ogma pentest https://example.com \
  --depth 3 \
  --concurrency 10 \
  --min-severity medium \
  --output report.md

แฟล็กการทดสอบเจาะระบบ ​

แฟล็กค่าเริ่มต้นวัตถุประสงค์
--depth3ความลึกในการค้นหา 0 หมายถึงไม่จำกัด
--concurrency10จำนวนคำขอที่ทำงานพร้อมกันสูงสุด
--no-activeปิดใช้งานปิดการสแกนแบบแอกทีฟ โดยดำเนินการค้นหาและวิเคราะห์แบบพาสซีฟเท่านั้น
--min-severitymediumระดับความรุนแรงขั้นต่ำที่ทำให้คืนรหัสจบการทำงาน 1 ค่าที่ใช้ได้คือ info, low, medium, high, critical
--outputเอาต์พุตมาตรฐานเขียนรายงานลงไฟล์แทนเอาต์พุตมาตรฐาน

รหัสจบการทำงาน:

รหัสความหมาย
0ทำงานเสร็จแล้วและไม่มีประเด็นที่ตรวจพบถึงเกณฑ์ความรุนแรง
1ทำงานเสร็จแล้วและมีประเด็นที่ตรวจพบอย่างน้อยหนึ่งรายการถึงเกณฑ์ความรุนแรง
2ข้อผิดพลาดขณะทำงานหรือในการกำหนดค่า

โหมด MCP ​

สามารถเริ่ม MCP จาก การตั้งค่า ของ Ogma หรือผ่านไบนารี ogma-mcp แบบแยกต่างหากได้ แฟล็กแบ็กเอนด์ที่ซ่อนไว้ยังรองรับโหมด MCP แบบฝังเมื่อ Ogma เริ่มกระบวนการ MCP ภายในด้วย

สำหรับการตั้งค่าตามปกติ ให้ใช้ การตั้งค่า MCP

แฟล็กของ ogma-mcp แบบแยกต่างหาก ​

bash
ogma-mcp \
  --api-url http://127.0.0.1:8181 \
  --body-preview-bytes 2048
แฟล็กตัวแปรสภาพแวดล้อมค่าเริ่มต้นวัตถุประสงค์
--api-urlOGMA_API_URLhttp://127.0.0.1:8181URL ของ API แบ็กเอนด์ Ogma ที่กำลังทำงาน
--body-preview-bytesไม่ได้ตั้งค่า512จำนวนไบต์สูงสุดของตัวอย่างเนื้อหาที่เครื่องมืออ่านส่งกลับ
--allow-write-findingsOGMA_MCP_ALLOW_WRITE_FINDINGSปิดใช้งานเปิดใช้งานการสร้างและอัปเดตประเด็นที่ตรวจพบ การติดแท็ก และการเชื่อมโยงหลักฐาน
--allow-export-dataOGMA_MCP_ALLOW_EXPORT_DATAปิดใช้งานเปิดใช้งานการสร้างงานส่งออก
--allow-read-secretsOGMA_MCP_ALLOW_READ_SECRETSปิดใช้งานส่งกลับค่าตัวแปรสภาพแวดล้อมโดยไม่ปกปิด
--allow-send-requestsOGMA_MCP_ALLOW_SEND_REQUESTSปิดใช้งานเปิดใช้งานเครื่องมือที่ส่งทราฟฟิก ควบคุมเบราว์เซอร์ รวบรวมข้อมูลด้วยการไล่ตามหน้า ส่งคำขอทดสอบ ตรวจสอบการยืนยันตัวตน หรือเชื่อมต่อ WebSocket
--allow-run-workflowsOGMA_MCP_ALLOW_RUN_WORKFLOWSปิดใช้งานเปิดใช้งานเครื่องมือดูตัวอย่าง เรียกใช้ และยกเลิกเวิร์กโฟลว์
--allow-intercept-controlOGMA_MCP_ALLOW_INTERCEPT_CONTROLปิดใช้งานเปิดใช้งานการควบคุมคิวดักรับ การส่งต่อ การทิ้ง และการแก้ไข
--tool-profileOGMA_MCP_TOOL_PROFILEfullแฟล็กสำหรับความเข้ากันได้กับรุ่นเก่า เครื่องมือทั้งหมดจะแสดงเสมอ แม้คำสั่งรุ่นเก่าจะส่ง core หรือ discovery ก็ตาม --mcp-tool-profile เป็นชื่อเรียกอีกแบบหนึ่ง

MCP เขียนข้อความโปรโตคอลไปยังเอาต์พุตมาตรฐาน ดังนั้นบันทึกขณะทำงานจะส่งไปยังเอาต์พุตข้อผิดพลาดมาตรฐาน

ตัวแปรสภาพแวดล้อมแบบบูลีนที่กำหนดสิทธิ์ยอมรับ true เพื่อเปิดใช้งานความสามารถนั้น เซิร์ฟเวอร์ไม่มีโควตากิจกรรมต่อนาทีหรือต่อเซสชัน แต่ยังใช้ขีดจำกัดของแต่ละเครื่องมือ แฟล็กโควตาที่ถูกนำออกแล้วจะไม่ถูกยอมรับ แฟล็กอินพุตและเอาต์พุตมาตรฐานกำหนดค่ากระบวนการนั้นแยกจากการตั้งค่า MCP แบบฝัง

บิลด์สำหรับการพัฒนา ​

สคริปต์บิลด์ภายในเครื่องมีอยู่ที่รากของรีโพซิทอรี:

bash
./build-local.sh
./build-desktop-local.sh

ใช้บิลด์เดสก์ท็อปเมื่อทดสอบการใช้งาน Electron ที่จัดแพ็กเกจแล้ว ใช้บิลด์แบ็กเอนด์และฟรอนต์เอนด์เมื่อทดสอบพฤติกรรมของ API และ UI บนเว็บ

ซอฟต์แวร์กรรมสิทธิ์ สงวนลิขสิทธิ์