「exe」への自己署名 VisualBasic


exeソフト自己署名 Signtool.exe

VBやVCで作ったソフトはClickOnceなど使わないと無署名ソフトとなります。そうするとセキュリティソフトがあやしいソフトとしてヒューリスティックエンジン(ウイルスとして類推するエンジン)が反応することがあります。そこで俗にいうオレオレ自己署名をしてみようともいます。

signature

必要なソフト

Windows SDK and emulator archive

Windows 8.1のSDKをダウンロードしてください

Windows10のsdkには使いたいソフトが入っていないようです。

上記ソフトをインストール

画像のチェックだけで今回はokです。

SDK8.1

Cフォルダ直下にsignフォルダをつくります。

コマンドプロンプトにて

  1. cd C:\Program Files (x86)\Windows Kits\8.1\bin\x64
  2. makecert -a sha512 -e 12/31/2099 -cy authority -r -n "CN=組織名,O=組織名,C=JP,E=foo@bar.co.jp" -sv C:\sign\mysoft_rootca.pvk C:\sign\mysoft_rootca.cer

passwordを記入します。

signフォルダのmysoft_rootca.cerをクリックし信頼された期間にインストールします

  1. makecert -a sha512 -e 12/31/2099 -cy end -n "CN=組織名,O=組織名,C=JP,E=hoge@huga.co.jp" -ic C:\sign\mysoft_rootca.cer -iv C:\sign\mysoft_rootca.pvk -sv C:\sign\mysoft.pvk C:\sign\mysoft.cer

passwordを記入します。

  1. cert2spc C:\sign\mysoft.cer C:\sign\mysoft_rootca.cer C:\sign\mysoft.spc

passwordを記入します。

  1. pvk2pfx -pvk C:\sign\mysoft.pvk -spc C:\sign\mysoft.spc -po パスワード -pfx C:\sign\mysoft.pfx -f

コードサイニングしたいEXEファイルをSIGNフォルダに置きます。今回はbit.exe

  1. signtool sign -f C:\sign\mysoft.pfx -p パスワード C:\sign\bit.exe

※組織名、hoge@huga.co.jp、パスワードは適宜書き換えてください
signature

ということでコードサイニング完了しました。

プロパティのタイムスタンプが利用不可になっていましたが詳細を押していくと2099まで有効とでています。

この状態でウィルスチェックには引っかからないようになりました。次回へ続く

参考リンク Spcial thanks

paburica.com
logo