OV 코드사인에 비해 EV 코드사인은 비용도 비용이고 검증 과정이 매우 까다롭다.
EV 코드사인의 경우 기본적으로 평판이 좋게 주어지기 때문에 초기 평판을 올려놓으면
동일한 인증서(혹은 인증서의 회사 명)로 서명한 모든 exe 가 SmartScreen 에 안걸리는 것 같다.
회사 프로그램도 EV 코드사인으로 서명한건 한번도 (심지어 인증서 재발급 이후에도)
SmartScreen 에 걸리는걸 본 적이 없는 것 같다. 아마 이미 많이 다운받아서 회사명이 평판에 올라가있는 것 같다.
나는 다운로드 할 때 커스텀마이징정보 (할당 할 그룹 등) 을 설정해서 exe 에 포함시키는 방법을 종종 사용한다.
지금까지 이러한 방법을 사용했을 떄 문제가 생긴 적은 없었다. (Chrome 도 비슷한 방법을 사용하는 것 같다)
OV 코드사인을 사용하는 경우에도 이러한 방법을 사용할 수 있는지 확인해보고 싶었다.
(더불어 인증서로 평판이 관리되는지 - 그렇다면 EV 를 사용하지 않더라도 평판이 올라가면 새로운 프로그램도 SmartScreen 을 넘어갈 수 있을 것이다 - 아니면 파일 해시 별로 평판이 관리되는지를 확인해보고 싶었다.)
1. OV 코드사인 + 평판 좋은 샘플
원본: Release Release v7.3.4 · storj-archived/storjshare-gui · GitHub
5037151ce1358fad0cca83cedc44ac69da5668239456c149721152687c6c1f2d *storjshare-gui.win64.exe
Edge 다운로드 결과:
실행 시 UAC 화면:
2. 1번파일에 Tag 를 추가한 파일
tag 추가 방법 : smartscreen-test/taginjector at master · jclab-joseph/smartscreen-test · GitHub
(코드사인 CMSSignedData 에 더미 인증서를 넣는 방식)
e121ee11a2db90b665c0609d723ff68ccbf70254593c119aac4f9d9c5d302096 *storjshare-gui.patched.exe
Edge 다운로드 결과:
오 SmartScreen에 안걸림!
실행 시 UAC 화면:
동일하다
3. 1번 파일의 끝에 더미 데이터를 추가한 파일
fa60aff826e319b81162d27fdbbbca39ff905aeb4928f0a3633b4b3439dba94b *storjshare-gui.tail-appended.exe
Edge 다운로드 결과:
UAC 실행 시:
예상대로이다.
결론
SmartScreen 은 코드사인이 되어있는 경우에는 OV CodeSign 인증서 + PE Hash 를 통해 평판을 관리하고
(혹은 OV CodeSign 인증서만으로도 평판이 관리될수도 있을 것 같다. 새롭게 서명한 파일을 테스트할 방법이 없어서 못해봄..)
코드사인이 되지 않은 경우에는 파일 전체 Hash 로 평판을 관리하는 듯 하다.
테스트한 파일들은 https://github.com/jclab-joseph/smartscreen-test/releases/tag/r01 에 있습니다.
'개발 및 운영 > 프로그래밍' 카테고리의 다른 글
IntelliJ 한글이 바로 안쳐지는 문제 (0) | 2024.05.31 |
---|---|
Golang: 상속 관련 참고 (0) | 2021.01.12 |
When should AccessController.doPrivileged() be used? (0) | 2021.01.11 |
FIPS 인증을 위한 모듈 개발 (boringssl) (0) | 2020.10.15 |
WIMCreateFile에서 FILE_SHARE_READ 적용하기 (WIMCreateFile분석) (0) | 2020.04.04 |
댓글