서버를 보호하세요: OpenClaw DCG Guard 플러그인 심층 분석
발행: (2026년 3월 19일 AM 05:30 GMT+9)
4 분 소요
원문: Dev.to
Source: Dev.to
DCG Guard 작동 방식
- 가로채기 – OpenClaw 에이전트가
exec도구를 호출하려 할 때, 플러그인은before_tool_call이벤트를 통해 요청을 가로챕니다. - 검사 – 명령이 내부 로직에 의해 검토됩니다. 위험한 패턴으로 알려진 경우 즉시 차단됩니다.
- DCG 바이너리 검사 – 내장 로직에서 플래그되지 않은 명령은 DCG (Dangerous Command Guard) 바이너리(설치된 경우)로 전달됩니다. 이 과정은 약 27 ms의 지연을 추가하지만, 대부분의 파일 시스템이나 네트워크 작업에선 무시할 수 있는 수준입니다.
- 결정
- 명령이 안전하면 에이전트는 정상적으로 진행합니다.
- 차단된 경우 플러그인은
{ block: true }를 반환하여 명령이 셸에 도달하는 것을 방지합니다.
이러한 fail‑open 설계는 DCG 바이너리가 실패하더라도 플러그인이 알려진 위험 명령을 차단하도록 보장합니다.
DCG Guard 시작하기
- OpenClaw 마켓플레이스 또는 저장소에서 플러그인을 설치합니다.
- DCG 바이너리가 설치되어 접근 가능하도록 설정합니다(예:
/custom/path/to/dcg). - 플러그인을 OpenClaw 설정에 추가합니다.
설정
사용자 정의 설정은 openclaw.json 파일에 정의할 수 있습니다. 예시 스니펫:
{
"plugins": {
"dcg-guard": {
"dcgPath": "/custom/path/to/dcg",
"blockedCommands": [
"rm -rf",
"git reset --hard",
"Format-Volume"
]
}
}
}
모범 사례
- AI 에이전트의
AGENTS.md파일을 최신 상태로 유지하여 차단 상황을 원활히 처리하도록 합니다. - DCG Guard에 의해 명령이 차단되면 자동으로 재시도하지 말고, 사용자에게 명확한 설명이나 대체 방안을 요청하세요.
- 조직의 보안 정책에 맞게 차단 명령 목록을 정기적으로 검토하고 업데이트합니다.
참고 자료
- OpenClaw Hub – https://clawhub.example.com
- DCG Guard Skill Documentation –
guard/SKILL.md
DCG Guard를 통합하면 실수이든 악의적이든 파괴적인 명령으로부터 개발 워크플로를 보호할 수 있어, 개인 개발자이든 대규모 엔터프라이즈를 관리하든 모두에게 유용합니다.