auditor암호화 해시 함수를
사용하여 빠른 무결성 감사를 위한 포렌식 도구입니다 .
이는 다른 인기 도구(fsum, hashdeep, sha256sum 등)와 유사하지만, 디지털 데이터 감사를 더 간단 하고 빠르게 만들어주는 기능이 추가되었습니다 .
auditor여러 해시 알고리즘을 지원합니다.
기본값은 이며 sha256, 2015년부터
NIST에서 권장하고 있습니다(
NIST 해시 함수 정책
참조 ).
기본적으로,
thash
method
활성화되어 있지만, 이 모드는 비활성화할 수 있습니다.
감사 프로세스는 무결성 정보를 저장하는 감사 파일에서 제공하는
무결성 체인auditor 개념을
기반으로 합니다 .
이 프로세스에 관련된 용어는 다음과 같습니다. Audit_FullList: 처리된 각 원본 데이터 파일의 무결성 정보를 포함하는 감사 파일입니다.
: 파일
Stamp의 실제 무결성 정보는 관련
작업을 수행할 때 항상 다시 계산되어 표시됩니다. : 생성 시 의 을 저장하는
감사 파일입니다 .Audit_FullListStamp
Audit_StampStampAudit_FullList
무결성 체인은 다음 순서로 생성됩니다(기본 동작).
내부의 데이터 파일은 input_path처리되어
무결성 정보(해시, 크기, 상대 파일 경로 등)를 생성하여 .에 저장됩니다
Audit_FullList.
Audit_FullList또한 처리되어, 를 생성하고
Stamp, 이는 터미널에 인쇄되어 에
저장됩니다 Audit_Stamp.
무결성 체인 검사는 위의 프로세스의 역순Stamp 으로 수행되며, 파일을 다시
처리하고 감사 파일과 무결성을 검사합니다. 또한 다시 계산하여 터미널에
인쇄한 다음, 에 저장된 값과 비교하여
Audit_Stamp일치하는지 확인합니다.
감사 파일 생성을 진행하고 향후 무결성 체인 검증이 올바르고 안전하게 수행되도록 하려면 아래 단계를 따르세요.
input_path)에 정리하세요. Auditor가
설치된 경우 명령 터미널을 열고 를 실행하세요
auditor hash input_path. 기본적으로
이 명령은 input_path 폴더의 루트에 Audit 파일을 생성합니다
Audit_FullList.
Audit_Stamp(필요한 경우 이 설정을
변경할 수 있습니다.)
Audit_Stamp 하거나
디지털 서명하세요 . auditor check위에서 설명한 무결성
체인이 실행됩니다. 프로세스가 끝나면 의 무결성 데이터가
Audit_FullList다시 계산되어 터미널에
출력되며
, 이는 이전 단계에서 출력되거나 디지털 서명된 값과 정확히
일치해야 합니다.
일치하지 않으면 무결성 검사가 유효하지 않습니다 .
Audit_FullList. 의 사용 섹션에서 예를
참조하세요 auditor check.
시스템에 설치한 후 auditor다음과 같이
사용할 수 있습니다.
auditor subcommands:
hash포렌식 감사의 첫 단계입니다. 파일 무결성을 검증할 수 있는 감사
파일을 생성합니다.
auditor hash input_path
이렇게 하면:
input_path기본 알고리즘을 사용하여
해시 파일을 만듭니다 ( sha256)
input_path):
Audit_FullList: 파일의 무결성
데이터(해시, 크기, 이름)를 포함합니다
input_path. 기본 이름:
_auditor_hashes.txt
Audit_Stamp: 의 무결성 데이터만
포함합니다 Audit_FullList. 기본
이름: _auditor_stamp.txt. 이
파일은 모든 무결성 체인을 검사하기 위해 인쇄하거나 디지털
서명해야 합니다.
Audit_FullList
이후 hash, 무결성을 검증하는
명령을 실행할 수 있습니다 check.
향후 무결성 검사를 제대로 수행하려면
무결성 체인 섹션을 읽고 해당 섹션의 지침을
따르세요.
해시만 생성하고 파일은 생성하지 않습니다(-l)
auditor hash input_path -l
빠른 디스크(-z)를 기본 알고리즘과 함께 사용하여 감사 파일을 덮어씁니다(-o): (빠르게 진행하기 위해 SSD 디스크에 유용합니다):
auditor hash input_path -o -z
위와 동일하지만, strict 모드를 활성화하여 input_path에 있는 모든 파일이 해시되도록 합니다.
auditor hash input_path -o -z --strict
thash 메서드(-d)를 사용하지 않고 감사 파일을 덮어씁니다(-o):
auditor hash input_path -o -d
감사 파일을 덮어씁니다(-o), 루트 폴더에만 txt 파일만 포함합니다(-i "**/*.txt")(-u 1)(플래그 -i 및 -e는 glob 패턴을 사용합니다. 자세한 내용은 참고 사항을 참조하세요).
auditor hash input_path -o -i "**/*.txt" -u 1
감사 파일을 덮어씁니다(-o), txt 파일을 제외한 모든 파일을 포함합니다(-e "**/*.txt")
auditor hash input_path -o -e "**/*.txt"
감사 파일을 덮어씁니다(-o), 이름이 "file1.doc"인 파일만 포함합니다(-i "**/*/file1.doc") 및 "file2.xls"인 파일만 포함합니다(-i "**/*/file2.xls")
auditor hash input_path -o -i "**/*/file1.doc" -i "**/*/file2.xls"
감사 파일을 덮어쓰고(-o), $RECYCLE.BIN 및 "시스템 볼륨 정보" 폴더 내의 파일을 제외한 모든 파일을 포함합니다. 참고: $RECYLE.BIN의 문자 $는 name에 속하며, 올바르게 구문 분석하려면 앞에 문자 \로 이스케이프해야 합니다!
auditor hash input_path -o -e "**/\$RECYCLE.BIN/**" -e "**/System Volume Information/**"
감사 파일을 덮어씁니다(-o), 모든 txt 파일을 포함합니다(-i "**/*/*.txt"). 단, folder1이라는 이름의 디렉토리 내부에 있는 파일은 제외합니다(-e "**/*/folder1/*").
auditor hash input_path -z -o -a blake3 -i "**/*/*.txt" -e "**/*/folder1/*"
감사 파일을 덮어씁니다(-o), fast-disk(-z)와 알고리즘 'blake3'(매우 빠름):
auditor hash input_path -o -z -a blake3
감사 파일을 덮어쓰기(-o), blockSize 10MB 및 'whirlpool' 해시 함수 사용
auditor hash input_path -o -b 10MB -a whirlpool
lock기존 감사 파일을 보존해야 할 때 유용합니다. after
hash
명령에서 사용하면 실수로 새 감사 파일이 생성되는 것을 방지할 수
있습니다 input_path.
auditor lock input_path
이렇게 하면:
_auditor_lock.txt파일 을 생성합니다
.input_path
input_path.
잠금을 해제하려면 input_path파일을
수동으로 삭제해야 합니다._auditor_lock.txt
check포렌식 감사의 두 번째 단계입니다. 감사 파일의 정보를 사용하여
데이터의 무결성을 검사하며, 해시를 수행한 후 사용할 수 있습니다.
auditor check input_path
이렇게 하면:
input_path):
Audit_Stamp확인합니다
Audit_FullList.
Audit_FullList의 원본 파일과
비교합니다 input_path.
Audit_FullList.
기본 감사 파일을 사용하여 빠른 디스크 모드(-z)로 체크인합니다.
auditor check input_path -z
위와 동일하지만, strict 모드를 활성화하여 input_path에 있는 모든 파일이 검증되도록 합니다.
auditor check input_path -z --strict
기본 감사 파일을 사용하여 txt 파일만 확인합니다(-i "**/*.txt")(플래그 -i 및 -e는 glob 패턴을 사용합니다. 자세한 내용은 참고 사항 참조).
auditor check input_path -i "**/*.txt"
기본 감사 파일을 사용하여 조용한 모드(-q)에서 체크인하고 첫 번째 오류 발생 시 중지(-x)합니다.
auditor check input_path -q -x
특정 이름을 가진 감사 파일을 사용하여 F:\data_path를 확인합니다. (-f는 <Audit_FullList>에 사용하고 -s는 <Audit_Stamp>에 사용합니다.)
auditor check F:\data_path -f C:\other_path\personal_fullList.txt -s C:\other_path\personal_stamp.txt -q -x
<input_path>에 있는 단 하나의 파일의 무결성을 일부 감사 파일과 비교하여 확인합니다.
auditor check F:\data_path\file1.txt -f C:\other_path\some_audit.txt -q -x
참고: 감사자 확인은 fsum 형식과 호환됩니다.
)
cloneinput_path데이터를 내부 로 복사
dest_path하고 동시에 복사된 데이터의
무결성을 검증하는 데 사용됩니다 .
auditor clone input_path dest_path
이렇게 하면:
input_path,
무결성 데이터(해시, 크기, 이름)를 생성합니다.
dest_path.dest_path.에서 생성된 무결성
데이터와 파일의 무결성을 비교합니다
input_path.
input_path또는
dest_path-g 옵션을 사용하여 감사
파일을 생성할 수 있습니다. 감사 파일이 존재하면 생성할 수
없습니다.
오류가 발생하는 경우 다시 시도합니다(기본값은 3회이며, 이는 변경될 수 있습니다).
빠른 디스크 모드(-z).
auditor clone input_path dest_path -z
위와 동일하지만, strict 모드를 활성화하여 input_path에 있는 모든 파일이 복제되도록 합니다.
auditor clone input_path dest_path --strict
조용한 모드(-q)로 설정하고 첫 번째 오류 발생 시 중지(-x).
auditor clone input_path dest_path -q -x
input_path와 dest_path 모두에 감사 파일을 생성하여 복제합니다(참고 사항 참조!).
auditor clone input_path dest_path -g both
dest_path에서만 감사 파일을 생성하여 복제합니다.
auditor clone input_path dest_path -g dest
input_path에서만 감사 파일을 생성하여 복제합니다.
auditor clone input_path dest_path -g input
-i 및/또는 -e를 사용하면 프로세스의 파일을 포함하거나 제외할 수 있습니다(--strict와 함께 사용할 수 없음).
auditor clone input_path dest_path -q -x -i "**/*.txt" -e "**/dir1/**/*
참고: 감사 파일을 생성할 때
input_path감사 파일(Audit_FullList 및
Audit_Stamp)을 사용할 수 없습니다! 이는 기존 감사 파일과의 혼동을
방지하기 위한 조치입니다.
audit clone --help를 사용하여 모든 옵션을 확인하세요.
)
chkcopyinput_path는 감사 파일 내부 데이터를
확인하고 에 복사하는 데 사용되며
dest_path, 동시에 에 복사된 데이터의
무결성을 검증합니다 dest_path.
auditor chkcopy input_path dest_path
이렇게 하면:
input_path해당 파일의 무결성
데이터를 확인합니다.
dest_path.dest_path감사 파일의 무결성 데이터
와 파일의 무결성을 비교합니다 .
오류가 발생하는 경우 다시 시도합니다(기본값은 3회이며, 이는 변경될 수 있습니다).
빠른 디스크 모드(-z)에서는 SSD, M.2 등의 빠른 디스크를 사용합니다.
auditor chkcopy input_path dest_path -z
위와 동일하지만, strict 모드를 활성화하여 input_path에 있는 모든 파일이 검사되고 복사되도록 합니다.
auditor chkcopy input_path dest_path --strict
조용한 모드(-q)로 설정하고 첫 번째 오류 발생 시 중지(-x).
auditor chkcopy input_path dest_path -q -x
-i 및/또는 -e를 사용하면 프로세스의 파일을 포함하거나 제외할 수 있습니다(--strict와 함께 사용할 수 없음).
auditor clone input_path dest_path -q -x -i "**/*.txt" -e "**/dir1/**/*
참고:
input_path 감사 파일(Audit_FullList /
Audit_Stamp)이 있어야 합니다!
info해시 무결성 검사를 수행하지 않습니다. 감사 파일과 그 내용을
테스트하고 input_path유용한 정보만
표시합니다. 해시가 수행된 후에 사용할 수 있습니다.
auditor info input_path
이렇게 하면:
input_path):
Audit_Stamp합니다
Audit_FullList.
Audit_Stamp, 그리고
Audit_FullList나열된 크기가 .와
같은지 확인하세요 input_path.
input_path나열되어 있는지
확인하세요 Audit_FullList.
Audit_FullList 감사 파일 의 무결성
데이터를 다시 계산하고 확인합니다.Audit_Stamp
\, .로 끝나는 부분은
생략해야 합니다. 원하는 경우 .로 끝나는 부분에 백슬래시를 두 개 사용할
수 있습니다 \\. 백슬래시가
따옴표를 이스케이프 처리하여 터미널이 경로를 올바르게 해석할 수 없기
때문입니다.
이것은 작동합니다:
"C:\My Data Path" 또는"C:\My Data Path\\"
실패합니다:
"C:\My Data Path\"
바이너리의 다운로드 및 무결성 데이터(zip 파일 내부):
면책 조항: 이 버전은
auditor개발 단계의 소프트웨어로
제공되며,
어떠한 종류의 보증이나 지원도 제공되지 않습니다 . 비상업적 용도로만 무료로 제공됩니다 . 사용에 따른 모든
책임은 사용자에게 있습니다.
라이선스: 이 버전은 비상업적 용도로만auditor 라이선스가 부여됩니다 . 자세한
내용은
전체 라이선스 약관을
참조하세요 .
감사 파일의 형식은 간단합니다. 각 줄에는 다음이 포함됩니다.
hash_value ?ALGORITHM[<THASH-BlockSize>]|file_size[:hex]*relative_filepath
여기서 [ ]는 선택 사항입니다.
hash_value: 해시 값.
ALGORITHM[<THASH-BlockSize>]: 해싱에 사용되는 알고리즘으로, 다른 도구와의 호환성을 유지하기 위해
대문자로 저장됩니다. <THASH-BlockSize> 매개변수는 선택 사항이며,
해싱 방법과 BlockSize가 사용되었음을 나타냅니다. BlockSize는 KB, MB, GB
또는 TB 단위여야 합니다. 예: 10MB.
file_size: 해시된 원본 파일의
파일 크기입니다. 크기가 일치하지 않을 때 속도를 향상시키기 위해 검사에
유용합니다. 크기가 원본과 일치하지 않는다는 것을 이미 알고 있는데 왜 큰
파일을 해시할까요?
[:hex]: 파일 경로가 16진수
형식임을 나타내는 선택적 플래그입니다. 일부 OS에서는 '\n', '\r' 또는
'\0'과 같은 문자가 허용되며, 16진수를 사용하면 결과 형식 지정 시 문제가
발생하지 않기 때문에 이 플래그가 필요합니다.
relative_filepath: 해시된 파일의
상대적 파일 경로입니다.
예제 1: 메서드 사용 thash알고리즘 sha256 및 BlockSize 50MB:
281d5d93464f1165ea7c403ca99d63ff4bf9a360864f8df4bd0e8e6c03774e98 ?SHA256<THASH-50MB>|500000*file_hashed.bin
예제 2: 일반적인 방법을 사용하고, 알고리즘 blake3만 사용하고, 파일 경로를 16진수 형식으로 지정합니다.
7357b67824d086dc53f5e1ded565f500456bea1812783f1fbcddc08fddc3944c ?BLAKE3|2233:hex*1aCb344356e4e2b2b6
다른 형식도 향후 구현될 수 있습니다.
초미세한 것을
사용하여 테스트합니다.
auditor, fsum, rhash 및 hashdeep64가 수행되었으며 결과는 아래와 같습니다.
Machine configs:
S.O.: Windows 11 Home 64bits
Processor: AMD Ryzen 7 (7800X3D 4.20 GHz)
RAM: 64 GB of RAM (Corsair Vengeance DDR5 64GB - 5200MHz)
Disk: SSD M.2 2TB (Corsair MP600 Pro NVMe)
Data Source 1:
Benchmarks using Data Source 1:
Data Source 2
Benchmarks using Data Source 2: