
사용자 정의 가능한 정규식 패턴을 사용하여 파일에서 민감한 정보를 재귀적으로 검색하며, 침투 테스터가 대규모 파일 세트에서 비밀 및 자격 증명을 신속하게 발견할 수 있도록 설계되었습니다.
Gold Digger는 재귀적으로 파일에서 민감한 정보를 빠르게 찾을 수 있도록 도와주는 간단한 도구입니다. 원래 침투 테스트 중에 얻은 파일을 신속하게 검색하기 위해 작성되었습니다.
Gold Digger는 Python3가 필요합니다.
virtualenv -p python3 .
source bin/activate
python dig.py --help
usage: dig.py [-h] [-e EXCLUDE] [-g GOLD] -d DIRECTORY [-r RECURSIVE] [-l LOG]
optional arguments:
-h, --help show this help message and exit
-e EXCLUDE, --exclude EXCLUDE
JSON file containing extension exclusions
-g GOLD, --gold GOLD JSON file containing the gold to search for
-d DIRECTORY, --directory DIRECTORY
Directory to search for gold
-r RECURSIVE, --recursive RECURSIVE
Search directory recursively?
-l LOG, --log LOG Log file to save output
Gold Digger는 gold.json 파일에 나열된 항목과 일치하는 콘텐츠를 찾기 위해 모든 폴더와 파일을 재귀적으로 탐색합니다. 또한, 특정 확장자를 가진 파일을 건너뛰기 위해 exclusions.json이라는 제외 파일을 활용할 수 있습니다. 루트 폴더를 --directory 플래그로 지정하세요.
예시 구조는 다음과 같습니다:
~/Engagements/CustomerName/data/randomfiles/
~/Engagements/CustomerName/data/randomfiles2/
~/Engagements/CustomerName/data/code/
다음 명령어를 사용하여 3개의 계정 보고서를 모두 파싱할 수 있습니다:
python dig.py --gold gold.json --exclude exclusions.json --directory ~/Engagements/CustomerName/data/ --log Customer_2022-123_gold.log
이 도구는 스캔 결과를 포함한 로그 파일을 생성합니다. 정규 표현식을 사용하는 특성상 많은 오탐(false positive)이 발생할 수 있습니다. 그럼에도 불구하고 이 도구는 수천 개의 파일을 처리할 때 생산성을 높이는 데 효과적임이 입증되었습니다.
git-wild-hunt를 공개해 주신 @d1vious님께 감사드립니다 (https://github.com/d1vious/git-wild-hunt)! GoldDigger의 정규 표현식 대부분은 이 훌륭한 프로젝트에서 가져왔습니다.