CyberKey — Enterprise Security System

← All projects← كل المشاريع
// Security · Hardware & Automation// الأمن · العتاد والأتمتة

CyberKey — Hardware Incident Response

A physical key built on an ATtiny85 microcontroller that triggers network isolation and a domain account lockout in one automated workflow.مفتاح مادي مبني على المتحكم ATtiny85 يطلق عزل الشبكة وقفل حساب النطاق في سير عمل آلي واحد.

1 actionإجراء واحدstarts the whole responseيبدأ الاستجابة كاملة
2 actionsإجراءانisolate the network, lock the accountعزل الشبكة وقفل الحساب
Port 9999المنفذ 9999Python socket link to the SOC serverاتصال Python socket بخادم SOC
FortiGate + ADintegrated through APIمتكامل عبر API
// overview// نظرة عامة

Incident response you can trigger by handاستجابة للحوادث تُطلقها بيدك

CyberKey connects a small piece of hardware to enterprise security infrastructure. When it is activated, the device starts a chain that isolates a FortiGate interface through its API and locks the targeted account on the Domain Controller.يربط CyberKey قطعة عتاد صغيرة ببنية الأمن المؤسسية. عند تفعيله يبدأ الجهاز سلسلة تعزل واجهة FortiGate عبر API وتقفل الحساب المستهدف على متحكم النطاق.

The idea is to contain an incident with a single physical action.الفكرة هي احتواء الحادث بإجراء مادي واحد.

Hardwareالعتاد
ATtiny85 (Digispark), programmed in Arduino IDEATtiny85 ‏(Digispark)، يُبرمج عبر Arduino IDE
Backendالخلفية
Python socket communication (port 9999) and Bash scriptingاتصال Python socket ‏(المنفذ 9999) وسكربتات Bash
Integrationsالتكاملات
FortiGate API and Active DirectoryFortiGate API وActive Directory
Operating systemنظام التشغيل
Ubuntu LinuxUbuntu Linux
// workflow// سير العمل

How it worksكيف يعمل

  1. Trigger. Activating the ATtiny85 device writes a signal file.التفعيل. تشغيل جهاز ATtiny85 يكتب ملف إشارة.
  2. Watch. A Bash service monitors for that signal file.المراقبة. خدمة Bash تراقب ظهور ملف الإشارة.
  3. Notify. The Bash service starts a Python network client, which talks to the SOC server on port 9999.الإبلاغ. تشغّل خدمة Bash عميل شبكة بلغة Python يتصل بخادم SOC على المنفذ 9999.
  4. Isolate. The SOC server calls the FortiGate API to isolate the interface.العزل. يستدعي خادم SOC واجهة FortiGate API لعزل الواجهة.
  5. Lock. The SOC server locks the account on the Domain Controller through Active Directory.القفل. يقفل خادم SOC الحساب على متحكم النطاق عبر Active Directory.
// hardware// العتاد

The device and setupالجهاز والإعداد

CyberKey hardware
CyberKey hardwareعتاد CyberKey
CyberKey setup
CyberKey setupإعداد CyberKey
CyberKey system
CyberKey systemنظام CyberKey
CyberKey code
CyberKey codeكود CyberKey
// response// الاستجابة

The response in actionالاستجابة أثناء العمل

SOC server
SOC serverخادم SOC
FortiGate integration
FortiGate integrationالتكامل مع FortiGate
Active Directory lockout
Active Directory lockoutقفل حساب Active Directory
Response automation
Response automationأتمتة الاستجابة
Full system view
Full system viewنظرة كاملة على النظام
// takeaways// الخلاصة

What this project showsما يُظهره هذا المشروع

  • Connecting hardware, scripts and enterprise systems into one workflow.ربط العتاد والسكربتات والأنظمة المؤسسية في سير عمل واحد.
  • Using the FortiGate API for automated containment.استخدام FortiGate API للاحتواء الآلي.
  • Automating Active Directory account actions.أتمتة إجراءات حسابات Active Directory.
  • Designing a simple client-server protocol in Python.تصميم بروتوكول بسيط بين عميل وخادم بلغة Python.
ATtiny85Arduino IDEPythonBashFortiGate APIActive DirectoryUbuntu Linux

Want the details behind this project?تريد تفاصيل أكثر عن هذا المشروع؟

I’m happy to walk through the design, the configs and what I would change in production.يسعدني شرح التصميم والإعدادات وما الذي سأغيّره في بيئة الإنتاج.