2 진 패턴과 일치하는 경우 2 진 파일 내부를 확인하고 싶습니다. 이를 위해 BASH : 문자열 내에서 16 진수 표현을 2 진수로 변환하십시오.
, 나는이 육각 서명 문자열 또한signature=$(echo "$line" |awk -F':' '{ print $4 }')
내가 진
에 진수 문자열을 변경하려면를 검색 할Exploit.HTML.ObjectType:3:*:3c6f626a65637420747970653d222f2f2f2f2f2f2f2f2f2f2f2f
I 코드 ClamAV의 서명 데이터베이스를 사용하고 있습니다
tmp=$(echo -n $signature | sed 's/\([0-9A-F]\{2\}\)/\\\\\\x\1/gI' | xargs print)
마지막으로 내 파일 (* $ raw_file_path *)이 내 바이너리 패턴과 일치하는지 확인하고 싶습니다
test_var=$(cat $raw_file_path | grep -U -P "$tmp")
(지금 $ tmp를에) 나는 그것이 작동하지 않습니다하지 않는 이유.
혹시 궁금한 점이 있으시면.
감사합니다.
그렙 및 유닉스 도구, 바이너리 파일을 읽도록 설계되어 있지 않습니다 그들의 정상적인 데이터. 유닉스 도구는 줄 바꿈 문자 (Windows 파일 시스템에서는 \ n 또는 \ r \ n)로 구분 된 데이터 행 읽기에 의존합니다. Null 문자는이 기본 처리 모델을 무효화합니다. 'od'에 대한 조합 옵션을 통해 원하는 것을 할 수 있습니다. 행운을 비네. – shellter