
개인이 신고하는 데 드는 수고를 덜어 Authenticode 인증서 신고를 지원하는 도구입니다.
이 도구는 authenticode 인증서를 신고하는 데 필요한 노력을 줄이기 위해 제작되었습니다. 신고자에게는 최소한의 노력만 요구하면서도 인증 기관이 결정을 내리는 데 필요한 대부분의 정보를 제공하는 것을 목표로 합니다. 가능하다면, 발견한 의심스러운 지표를 인증서 제공자가 파악할 수 있도록 자체 조사 결과를 보고서에 추가하는 것이 좋습니다.
버전 2부터 VirusTotal API 사용 지원이 추가되었습니다. VirusTotal API를 사용할 수 있도록 추가 함수가 포함되었습니다. certReport의 기본 동작은 API 키가 필요 없는 MalwareBazaar를 조회하는 것입니다.
버전 3에서는 보고서에 대한 정보를 저장하는 SQLite 데이터베이스가 추가되었습니다. 개인적인 참고용으로 사용할 수 있을 뿐만 아니라 보고서를 보강하는 데에도 사용됩니다. 자세한 내용은 아래의 데이터베이스 섹션을 참조하세요!
pip를 사용하세요! pip install certReport 또는 pip3 install certReport
참고: 버전 2에서는 --hash(또는 -#)) 스위치를 제공해야 합니다
예시는 다음과 같습니다:
다음과 같이 스크립트를 호출하고 SHA256을 전달합니다:
certReport --hash 89dc50024836f9ad406504a3b7445d284e97ec5dafdd8f2741f496cac84ccda9
콘솔에 다음 정보가 출력됩니다:
---------------------------------
Greetings,
We identified a malware signed with a SSL.com EV Code Signing Intermediate CA RSA R3 certificate.
The malware sample is available on MalwareBazaar here: https://bazaar.abuse.ch/sample/89dc50024836f9ad406504a3b7445d284e97ec5dafdd8f2741f496cac84ccda9
Here are the signature details:
Name: A.P.Hernandez Consulting s.r.o.
Issuer: SSL.com EV Code Signing Intermediate CA RSA R3
Serial Number: 2941d5f8758501f9dbc4ba158058c3b5
SHA256 Thumbprint: a982917ba6de9588f0f7ed554223d292524e832c1621acae9ad11c0573df54a5
Valid From: 2024-01-25T16:51:40Z
Valid Until: 2025-01-24T16:51:40Z
The malware was tagged as exe, Pikabot and signed.
MalwareBazaar submitted the file to multiple public sandboxes, the links to the sandbox results are below:
Sandbox / Malware Family / Verdict / Analysis URL
Intezer None unknown https://analyze.intezer.com/analyses/c4915ef4-198f-4aba-81ed-81b29cd4dce6?utm_source=MalwareBazaar
Triage pikabot 10 / 10 https://tria.ge/reports/240222-pqlqkshb2w/
VMRay Pikabot malicious https://www.vmray.com/analyses/_mb/89dc50024836/report/overview.html
Please let us know if you have any questions.
------------------------
Send the above message to the certificate provider.
This report should be sent to SSL.com: https://ssl.com/revoke
이 정보는 적절한 악용 신고 채널(이메일 또는 웹사이트 등)을 통해 인증서 발급 기관에 제공해야 합니다. 적절한 채널은 보고서 끝에 제공됩니다(위 참조).
버전 2부터 VirusTotal을 조회할 수 있게 되었습니다. VirusTotal을 사용하려면 먼저 운영 체제에 맞는 방법으로 API 키를 설정하십시오:
On Linux:
echo "export VT_API_KEY=your_api_key_here" >> ~/.bashrc
source ~/.bashrc
On Windows:
setx VT_API_KEY "your_api_key"
On MacOS:
echo "export VT_API_KEY=your_api_key_here" >> ~/.zprofile
source ~/.zprofile
API 키가 환경 변수로 구성되면 다음 명령으로 보고서가 생성됩니다:
certReport --hash 89dc50024836f9ad406504a3b7445d284e97ec5dafdd8f2741f496cac84ccda9 --service virustotal
또는 스위치를 간단히 줄일 수 있습니다:
certReport -# 89dc50024836f9ad406504a3b7445d284e97ec5dafdd8f2741f496cac84ccda9 -s VT
두 명령 모두 다음 보고서를 반환합니다:
---------------------------------
Greetings,
We identified a malware signed with a SSL.com EV Code Signing Intermediate CA RSA R3 certificate.
The malware sample is available on VirusTotal here: https://www.virustotal.com/gui/file/89dc50024836f9ad406504a3b7445d284e97ec5dafdd8f2741f496cac84ccda9/detection
Here are the signature details:
Name: A.P.Hernandez Consulting s.r.o.
Issuer: SSL.com EV Code Signing Intermediate CA RSA R3
Serial Number: 56 B6 29 CD 34 BC 78 F6
Thumbprint: 743AF0529BD032A0F44A83CDD4BAA97B7C2EC49A
Valid From: 2017-05-31 18:14:37
Valid Until: 2042-05-30 18:14:37
The malware was tagged as a peexe, long-sleeps, spreader, detect-debug-environment, service-scan, overlay, revoked-cert, signed and checks-user-input.
The malware was detected by 50 out of 74 antivirus engines.
The malware was classified as trojan by 30 detection engines.
The file was flagged as pikabot by 23 detection engines, zusy by 6 detection engines and gdfvt by 2 detection engines
This file was found during our investigation and had the following suspicious indicators:
- The file triggered the following high IDS rules:
- ET CNC Feodo Tracker Reported CnC Server group 1
- ET CNC Feodo Tracker Reported CnC Server group 2
Please let us know if you have any questions.
------------------------
Send the above message to the certificate provider.
This report should be sent to SSL.com: https://ssl.com/revoke
앞서 언급했듯이, 보고서 끝부분에 추가 불릿 포인트를 추가하는 것이 좋습니다. 추가 불릿 포인트에는 직접 조사한 내용이 포함되어야 합니다. 이러한 세부 정보는 인증서 제공자의 의사 결정에 도움이 될 수 있습니다.
보고서를 Cert Graveyard에 게시하려면 -p 옵션을 사용하세요. "CERT_GRAVEYARD_API"라는 이름의 환경 변수로 CertGraveyard API 키를 설정해야 합니다. API 키는 TheCertGraveyard.org에 로그인한 상태에서 프로필 페이지를 통해 얻을 수 있습니다.
Please set your certGraveyard API key by running the doing the following:
On Linux:
echo "CERT_GRAVEYARD_API=your_api_key_here" >> ~/.bashrc
source ~/.bashrc
On Windows:
setx CERT_GRAVEYARD_API "your_api_key"
On MacOS:
echo "export CERT_GRAVEYARD_API=your_api_key_here" >> ~/.zprofile
source ~/.zprofile
버전 3에서는 certReport로 처리된 모든 인증서에 대한 정보가 데이터베이스에 저장됩니다. 이 데이터베이스에는 보고서에 나타나는 대부분의 세부 정보가 포함됩니다. 명령 실행 시 사용자는 -t 옵션을 사용하여 악성코드 패밀리를 지정할 수 있습니다. 사용자가 이렇게 하면 보고서는 사용자가 제공한 이름을 데이터베이스에 추가하고 데이터베이스에서 해당 악성코드 이름의 다른 사례가 있는지 확인합니다. 일치하는 항목이 있으면 해당 악성코드가 보고된 횟수에 대한 정보로 보고서를 보강합니다. 예를 들어, 보고서 하단 근처에 다음과 같은 메시지가 출력될 수 있습니다:
We have reported this same malware to SSL.com 2 times. We have reported the malware to other providers 10 times.
현재 버전에서는 데이터베이스를 SQLite 데이터베이스 뷰어로 조회하거나 관리해야 합니다. 프로그램 내에서는 조회하거나 관리할 수 없습니다.
참고: 사용자가 동일한 해시로 애플리케이션을 실행하면 데이터베이스에서 해당 해시의 첫 번째 인스턴스가 제거되고 새 정보로 대체됩니다.
데이터베이스는 사용자 홈 디렉터리의 폴더에 생성됩니다. 폴더 이름은 "certReport"이고 데이터베이스 이름은 "certReport.db"입니다.
추가 인증서 제공자 이메일 주소나 신고 방법을 위해 스크립트 변경을 자유롭게 제안해 주세요. 신고 작업에서 가장 중요한 부분 중 하나는 인증서를 제출할 곳을 찾는 것입니다.
2018년부터 대부분의 인증서는 더 이상 도난당하지 않고 사칭자에게 발급되었습니다(이 주장은 학술 논문에서 확인할 수 있습니다: http://users.umiacs.umd.edu/~tdumitra/papers/WEIS-2018.pdf). 저는 이를 "Impostor Certs"라고 부릅니다. 2023년에는 한 공격자가 사용한 50개의 인증서에 대한 연구를 발표했습니다. 제 연구 결과는 인증서가 여러 악성코드 패밀리를 서명하는 데 사용된다는 것을 확인했습니다: https://squiblydoo.blog/2023/05/12/certified-bad/. 2024년에는 동일한 악성코드를 서명하는 데 사용된 100개의 인증서를 폐기한 후 Impostor 인증서에 관한 기사를 게시했습니다. 해당 기사는 여기에서 읽을 수 있습니다: https://squiblydoo.blog/2024/05/13/impostor-certs/.
요약하자면, 여러 공격자가 동일한 인증서를 사용하며, 인증서를 신고하면 모든 위협 행위자의 서명 비용이 높아지고 여러 악성코드 캠페인에 영향을 미칠 수 있습니다.