Saphan

ความปลอดภัย — สร้างมาสำหรับเอเจนต์ที่คุณไว้วางใจได้ไม่เต็มที่

คำถามด้านความปลอดภัยที่มีประโยชน์จริงเกี่ยวกับฟลีตเอเจนต์ไม่ใช่ “โมเดลปลอดภัยไหม” — แต่คือ: จากจุดที่เอเจนต์รัน อะไรเอื้อมถึงได้บ้าง และใครพิสูจน์ได้ในภายหลังว่าเกิดอะไรขึ้น Saphan Studio ถูกสร้างขึ้นรอบคำถามนั้น

ท่าทีของระบบ

01

โมเดลภัยคุกคาม อย่างตรงไปตรงมา

ฟลีตเอเจนต์ต่างจาก CI สามทาง: คำสั่งไม่เป็นที่รู้ล่วงหน้า เอเจนต์ถูกโน้มน้าวได้ด้วยข้อความใดก็ตามที่มันอ่าน และมันพากเพียรอย่างหวังดีในการหาทางอ้อมสิ่งกีดขวาง เอเจนต์จึงต้องถูกปฏิบัติเป็นสิ่งที่ไม่ถูกไว้วางใจแม้เมื่อมันไม่ได้ประสงค์ร้าย — ไม่มีผู้ขายรายใดสัญญาโมเดลที่โน้มน้าวไม่ได้ให้คุณได้ เพราะ prompt injection เป็นคุณสมบัติของวิธีที่ระบบเหล่านี้ทำงาน ไม่ใช่บั๊กที่รอแพตช์

02

อัตลักษณ์โดยไม่มี join token

เครื่องเข้าร่วมฟลีตด้วยการกระทำที่ชัดแจ้งของเจ้าของ — ไม่มี endpoint สำหรับลงทะเบียนและไม่มี join token ให้รั่วไหล กุญแจถูกสร้างบนเครื่องนั้นและไม่มีวันออกจากเครื่อง control plane เชื่อมต่อขาออกเท่านั้น: runner ไม่ถือ credential ไปหามันและไม่เปิดพอร์ตขาเข้าใด ๆ — บริการที่คุณโฮสต์อยู่บนโครงสร้างพื้นฐานของคุณเอง ในที่ที่ทีมปฏิบัติการของคุณเฝ้าดูอยู่แล้ว

03

ถูกจำกัดขอบเขต หรือไม่ก็ถูกปฏิเสธ

ทุกการรันถูกจำกัดขอบเขตที่ระดับระบบปฏิบัติการ โดยการเขียนถูกปฏิเสธเป็นค่าปริยาย — และบันทึกระบุว่าอะไรเป็นตัวบังคับใช้การจำกัดขอบเขตจริง ไม่ใช่สิ่งที่ถูกร้องขอ ข้อกล่าวอ้างนี้จึงเป็นสิ่งที่ทีมของคุณเองทำซ้ำเพื่อพิสูจน์ได้ เครื่องที่พิสูจน์ไม่ได้ว่าสามารถจำกัดขอบเขตการรันจะไม่ได้รับงานรัน: ปฏิเสธ ไม่มีวันเสื่อมถอยแบบเงียบ ๆ

04

Egress: นโยบายที่มีชื่อ หรือรายการพื้นฐานของ backend — ไม่มีเครือข่ายเปิดโดยปริยาย ปิดโดยค่าเริ่มต้น

การรันเข้าถึงเครือข่ายได้ผ่านประตูของตัวเองเท่านั้น และประตูยอมรับการเชื่อมต่อก็ต่อเมื่อนโยบายนั้นอนุญาตโฮสต์นั้นบนพอร์ตนั้น — “โฮสต์นี้ พอร์ตใดก็ได้” เขียนไม่ได้ด้วยซ้ำ เพราะเครื่องที่คุณไว้ใจบนพอร์ตหนึ่งไม่ใช่เครื่องที่คุณไว้ใจบนทุกพอร์ต ภายในนโยบาย deny-all คือพื้น: ไม่มีโหมด “บันทึกแล้วปล่อยผ่าน” ไม่มีชั้นอนุญาตโดยปริยาย และเครื่องที่บังคับตัดเครือข่ายไม่ได้จะปฏิเสธการรันแทนที่จะเริ่มแบบเปิด

การรันที่ไม่ประกาศนโยบายไม่ใช่การรันแบบเปิด มันได้รับรายการพื้นฐานที่มากับ backend ของมัน — โฮสต์ที่ agent ต้องใช้เพื่อเข้าถึงโมเดลของตัวเอง รวมถึงรีจิสทรีแพ็กเกจสำหรับคลาสสิทธิ์ของมัน — และปลายทางอื่นทั้งหมดถูกปฏิเสธ การเปิดเครือข่ายเป็นการกระทำที่ชัดเจนเพียงครั้งเดียวพร้อมเหตุผล และถูกบันทึกพร้อมผู้ที่ทำ การรันสามประเภทไม่มีรายการพื้นฐาน และบันทึกของมันระบุไว้: การรันที่เปิดด้วยวิธีนั้น การรันของเครื่องมือแบบกำหนดผลที่ไม่มีการเชื่อมต่อกับโมเดล และการรันในคอนเทนเนอร์ที่คลาสไม่ให้เครือข่ายอยู่แล้ว การอนุมานนโยบายของการรันจากเครื่องหรือ seat ยังไม่ได้ส่งมอบ; ไม่ได้นำเสนอว่าส่งมอบแล้ว

05

ส่วนควบคุม egress อ่านเนื้อหาคำขอไม่ได้

ประตู egress ไม่ยุติ TLS และไม่แยกวิเคราะห์ HTTP ไม่มีใบรับรองดักจับหรือกุญแจส่วนตัว จึงไม่สามารถวาง body ของคำขอหรือเส้นทาง URL ลงในบันทึกใด ๆ — ข้อมูลไม่เคยมีอยู่ในรูปที่บันทึกได้ การควบคุมการเชื่อมต่อและการควบคุมเนื้อหาคำขอเป็นความสามารถต่างกัน; Saphan ทำอย่างแรก

สิ่งที่บันทึกเก็บไว้ บนแถวของการรัน: digest ของนโยบายที่กำกับมัน ต่อการเชื่อมต่อ สำหรับการรันบนเครื่องของ control plane เอง: โฮสต์และพอร์ตที่ขอ คำตัดสิน ประเภทเหตุผล เวลา และตัวตนของนโยบายที่ตัดสิน สำหรับการรันที่ส่งผ่าน SSH บันทึกต่อการเชื่อมต่อยังไม่ถูกส่งกลับ; digest ถูกส่งกลับ

06

ค่าความลับไม่เข้าไปในบันทึกหรือซอง dispatch

ชนิดข้อมูลสำหรับการตั้งค่า dispatch การตรวจสอบ และต้นทุนมีเพียงชื่อและการอ้างอิงความลับ ไม่ใช่ค่า จึงไม่รั่วผ่านการเขียนล็อกตามปกติ การรันระยะไกลปิดการส่งต่อ environment กระบวนการที่ถือ credential อาจใช้ความลับเมื่อต้องยืนยันตัวตน แต่ค่าไม่ถูกคัดลอกไปยังบันทึก หลักฐาน ข้อมูลต้นทุน หรือซองงานระยะไกล

07

git ยังคงเป็นของคุณ

git ยังคงเป็นระบบบันทึกหลักสำหรับโค้ดของคุณ และเอนจินไม่มีวันเขียนลงไป มันสังเกต commit, branch และ merge ผ่านขอบเขตแบบอ่านอย่างเดียว — บังคับใช้เหมือนกันทุกประการทั้งในโปรดักชันและภายใต้การทดสอบ การ merge เป็น และยังคงเป็น การกระทำของมนุษย์ในเครื่องมือของคุณเอง

ขีดจำกัดที่บันทึกเป็นเอกสาร

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

เราแชร์มันในขั้น due diligence และเราอยากให้คุณได้อ่านมันก่อนตัดสินใจซื้อ มากกว่ามาค้นพบหลังจากซื้อไปแล้ว

Saphan Studio เพิ่มเติม

สอบถามเรื่องการเป็น design partner

ติดต่อเรา — [email protected]