
grep rough audit - 소스 코드 감사 도구
graudit는 GNU 유틸리티 grep을 사용하여 소스 코드에서 잠재적인 보안 결함을 찾을 수 있는 간단한 스크립트 및 시그니처 세트입니다. RATS, SWAAT 및 flaw-finder와 같은 다른 정적 분석 애플리케이션과 비교할 수 있으며, 기술적 요구 사항을 최소화하고 매우 유연합니다.
설치는 사용자 단위 또는 전역적으로 root로 수행할 수 있으며, make에 userinstall 또는 install 인수를 사용하면 됩니다. 그러나 git 저장소를 복제하여 graudit을 직접 사용하는 것이 권장됩니다. 배포 파일에 포함되지 않은 추가 데이터베이스 규칙이 포함되어 있기 때문입니다. 또한 이를 통해 릴리스 사이에 업데이트를 받을 수 있습니다. 다음 명령을 실행하십시오:
git clone https://github.com/wireghoul/graudit
그런 다음 선호하는 셸에 적절한 값을 사용하여 graudit을 PATH에 추가할 수 있습니다:
echo 'PATH="$HOME/graudit:${PATH:+:${PATH}}"; export PATH;' >> ~/.bashrc
graudit이 홈 디렉토리에 없는 경우, .bashrc 파일에 GRDIR 환경 변수를 시그니처 디렉토리로 설정할 수 있습니다.
export GRDIR=/path/to/graudit/signatures
graudit은 여러 옵션을 지원하며 좋은 셸 관행을 따릅니다. 옵션 목록은 graudit -h를 실행하거나 아래를 참조하십시오. graudit을 사용하는 가장 간단한 방법은 다음과 같습니다:
graudit [옵션] /path/to/scan
옵션
-d <dbname> 사용할 데이터베이스 또는 /path/to/file.db (지정되지 않은 경우 기본값 사용)
-A 원하지 않거나 까다로운 (ALL) 파일 스캔
-x 이러한 파일 제외 (쉼표로 구분된 목록: -x *.js,*.sql)
-i 대소문자를 구분하지 않는 스캔
-c <num> 일치 항목 전후에 표시할 컨텍스트 줄 수, 기본값은 1
-B 배너 숨기기
-L vim 친화적인 줄
-b 색맹 친화적인 템플릿
-z 색상 숨기기
-Z 고대비 색상
-l 사용 가능한 데이터베이스 목록 표시
-v 버전 번호 출력
-h 이 도움말 화면 출력
GRARGS 환경 변수를 통해 기본 명령줄 옵션을 설정할 수 있습니다. 이는 스크립트에서 graudit 사용에 영향을 줄 수 있으므로 B, L, b, z, Z 옵션만 이 용도로 사용하는 것이 좋습니다.
echo 'GRARGS="-b -L"; export GRARGS' >> ~/.bashrc
graudit은 시그니처로 확장 정규 표현식(POSIX)을 사용하며, 즉시 사용 가능한 여러 데이터베이스와 함께 제공됩니다. 기존 데이터베이스를 확장하거나 추가 시그니처가 필요한 경우 직접 만들 수 있습니다.
데이터베이스는 여러 위치에서 로드할 수 있으며, 우선 순위는 다음과 같습니다:
우선 순위에 따른 데이터베이스 파일 목록은 -l 스위치로 표시됩니다:
graudit -l
다음 데이터베이스가 포함되어 있습니다:
튜토리얼/소개 동영상은 다음에서 확인할 수 있습니다: https://youtu.be/b8Xbzer1n94
graudit에 기여하고 싶다면, 저장소를 포크하여 사용하십시오: https://github.com/wireghoul/graudit 특히 언어 규칙, 추가 스크립트 및 문서 기여를 환영합니다. graudit이 마음에 든다면 감사 인사를 전하고 주변에 공유해 주세요.
연락을 원하시면 github 또는 twitter로 메시지를 보내주세요: @wireghoul