
예측 불가능한 자동화를 위한 OS 수준 런타임 감사.
logira는 eBPF를 통해 런타임 exec, file, net 이벤트를 기록하는 관찰 전용 Linux CLI입니다. AI 에이전트 실행 및 다른 형태의 자동화 중에 실제로 발생한 일을 확인할 수 있도록 도와주며, 감사, 실행 후 검토, 검색 및 탐지 분류를 위해 실행별 로컬 저장소를 제공합니다.
codex --yolo 또는 claude --dangerously-skip-permissions).logira는 AI 에이전트 실행 감사를 목표로 하는 의견이 반영된 관찰 전용 기본 규칙 세트를 포함합니다. logira run --rules <file>을 사용하여 자체 실행별 규칙 YAML을 추가할 수도 있습니다.
~/.ssh, ~/.aws, kube/gcloud/docker 설정, .netrc, .git-credentials, 레지스트리 자격 증명..netrc, .git-credentials./etc 아래 쓰기, systemd 유닛, cron, 사용자 자동 시작 항목, 셸 시작 파일./tmp, /dev/shm, /var/tmp 아래 생성된 실행 파일.curl|sh, wget|sh, 터널링/리버스 셸 도구 및 플래그, 셸 힌트가 포함된 base64 디코드.rm -rf, git clean -fdx, , , 및 유사한 명령.옵션1. 편리한 스크립트를 통해 설치:
curl -fsSL https://raw.githubusercontent.com/melonattacker/logira/main/install.sh | sudo bash
옵션2. 릴리스 tarball에서 수동 설치:
tar -xzf logira_vX.Y.Z_linux-<arch>.tar.gz
cd logira_vX.Y.Z_linux-<arch>
sudo ./install-local.sh
재설치/업그레이드 후:
install.sh가 systemctl enable --now를 실행합니다).logirad를 재시작하세요.sudo systemctl daemon-reload
sudo systemctl restart logirad.service
sudo systemctl status logirad.service --no-pager
빌드:
make build
루트 데몬 시작 (추적에 필요):
sudo ./logirad
백그라운드에서 루트 데몬을 실행하려면 packaging/systemd/logirad.service에서 유닛 파일을 설치하세요.
# 1) Generate eBPF objects (only needed if missing)
make generate
# 2) Install the systemd unit
sudo install -D -m 0644 packaging/systemd/logirad.service /etc/systemd/system/logirad.service
# 3) Install the daemon binary (unit defaults to /usr/local/bin/logirad)
sudo install -m 0755 ./logirad /usr/local/bin/logirad
# 4) (Recommended) Point systemd at the eBPF .o files via an environment file.
# This avoids relying on the service working directory.
sudo mkdir -p /etc/logira
sudo tee /etc/logira/logirad.env >/dev/null <<'EOF'
LOGIRA_EXEC_BPF_OBJ=/absolute/path/to/collector/linux/exec/trace_bpfel.o
LOGIRA_NET_BPF_OBJ=/absolute/path/to/collector/linux/net/trace_bpfel.o
LOGIRA_FILE_BPF_OBJ=/absolute/path/to/collector/linux/filetrace/trace_bpfel.o
EOF
# 5) Enable + start
sudo systemctl daemon-reload
sudo systemctl enable --now logirad
# Follow logs
sudo journalctl -u logirad -f
# Check status
systemctl status logirad --no-pager
# Stop + disable
sudo systemctl stop logirad
sudo systemctl disable --now logirad
일반 사용자로서 감사 대상 에이전트 실행 (이벤트가 자동 저장됨):
./logira run -- bash -lc 'echo hi > x.txt; curl -s https://example.com >/dev/null'
./logira run --rules ./my-rules.yaml -- bash -lc 'cat ~/.aws/credentials >/dev/null'
Codex CLI 실행:
./logira run -- codex --yolo "Update the README to be clearer and add examples."
Claude Code CLI 실행:
./logira run -- claude --dangerously-skip-permissions "Find and fix flaky tests."
실행 목록:
./logira runs
마지막 실행 보기 및 설명:
./logira view last
./logira view last --ts both
./logira view last --color always
./logira explain last
./logira explain last --show-related
./logira explain last --drill 35
이벤트 쿼리:
./logira query last --type detection
./logira query last --type net --dest 140.82.121.4:443
./logira query last --related-to-detections --type net
./logira query last --contains curl
logira run -- <command...>: 감사 대상 명령어를 실행하고 새 실행을 자동 저장합니다logira runs: 저장된 실행 목록을 표시합니다logira view [last|<run-id>]: 실행 대시보드 (레거시 텍스트는 --raw 사용)logira query [last|<run-id>] [filters...]: 유형별 테이블 출력으로 이벤트 검색logira explain [last|<run-id>]: 기본적으로 그룹화된 탐지 (--show-related, --drill)Rules:
internal/detect/rules/default_rules.yaml)logira run --rules <yaml-file>로 추가할 수 있습니다examples/rules/README.md--watch는 호환성을 위해 사용 중단되었습니다기본 홈 디렉토리: ~/.logira (재정의: LOGIRA_HOME)
각 실행은 다음 위치에 저장됩니다:
~/.logira/
runs/<run-id>/
events.jsonl
index.sqlite
meta.json
run-id 형식: YYYYMMDD-HHMMSS-<tool>
docs/jsonl.mddocs/sqlite.mddocs/rules.mddocs/development.mdlogirad가 systemd 아래에서 실행되어야 합니다).logira status로 확인).logirad가 실행 중이어야 합니다. logira run 자체는 sudo가 필요하지 않습니다.LOGIRA_EXEC_BPF_OBJ / LOGIRA_NET_BPF_OBJ / LOGIRA_FILE_BPF_OBJ를 설정하세요.설치 프로그램은 다음 위치에 배치합니다:
/usr/local/bin/logira, /usr/local/bin/logirad/usr/local/lib/logira/bpf//etc/systemd/system/logirad.service/etc/logira/logirad.env (LOGIRA_EXEC_BPF_OBJ, LOGIRA_NET_BPF_OBJ, LOGIRA_FILE_BPF_OBJ 설정)Apache License 2.0. 자세한 내용은 LICENSE를 참조하십시오.
collector/linux/ 아래의 eBPF 프로그램은 이중 라이선스입니다: Apache-2.0 또는 GPL-2.0-only.
이는 GPL 전용 헬퍼가 필요한 eBPF 프로그램을 로드할 때 Linux 커널과의 호환성을 보장합니다.
find -deletemkfsterraform destroy