問題タブ [authenticode]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
code-signing - コード署名証明書でコードに署名できません
Thawte からMicrosoft Authenticode証明書を購入しました。今、私はそれをPFXファイルに入れています。私は次のことを試します:
しかし、実行するmySetup.exe
と、署名なしのように実行され、「不明な発行元」が表示されます。SignTool で EXE ファイルを検証すると、次のようになります。
なにが問題ですか?
google-chrome - Chromeの悪意のあるファイルの警告を回避する
*.exe
多数のファイルで構成されるアプリケーションを作成しました。これらを自分のWebサイトでホストしているNSISインストーラーにパッケージ化しました。ダウンロードしようとすると、Chromeは潜在的に悪意のあるものとして報告します。最初は、ホストしているURL /サイトが認識されていない可能性があると思ったので、Amazon S3ストレージにサインアップして、そこにファイルを移動しました。同じ問題。次に、実行可能ファイルをパックするとこれが発生する可能性があると考えたので、実行せずに試しました。
同じ問題。
もう少し読んだ後、実行可能ファイルとインストーラーパッケージEXEに署名してみることにしました。
次のように開発証明書を作成しました。
まだ悪意があります...ダウンロード後もexeをチェックし、デジタル署名タブがあることを確認しました。完全に検証された商用証明書ではないことを認めましたが、Chromeの半ば焼きコード分析を回避する唯一の方法は200ドルを費やすことだとは信じられません。ベリサインなどのコード署名証明書を発行する年はありますか?
この厄介なメッセージを回避するために私がしていることをどのように変えることができるかについてのアイデアはありますか?
open-source - オープンソースプロジェクトの個人のコード署名
オープンソースプロジェクトのコード署名証明書を取得しています。それらについていくつか質問があります。
- オープンソースプロジェクトを開発する未登録の会社であるため、検証プロセスに合格する方法はありますか?
- コード署名証明書を自分の名前で登録した場合、身元の盗難やストーカー行為などのリスクはありますか?
windows - 署名付き実行可能ファイルを変更できます
署名済みの実行可能ファイル ( http://live.sysinternals.com/procexp.exe ) をダウンロードして変更しようとしました。私はそれができないと思っていました.Windowsはどういうわけか私がそれを実行するのを妨げます(または少なくとも私に警告します). しかし、単一の文字 (たとえば、DOS スタブやその他のテキスト データ) を変更しても、実行可能です。
変更前、このアプリを実行すると、Microsoft に署名したことを示す UAC 警告が表示され、実行するかどうかを尋ねられました。改造後はそのようなことはありません。変更を元に戻しても、まだ表示されません。変更して元に戻した実行可能ファイルを元の (総司令官) と比較しましたが、違いはありません。しかし、オリジナルはまだUACをはねかけます。
何故ですか?
Windows 7 と Firefox を使用しています。
windows - 自己解凍型自己チェック実行可能ファイル
コンテンツを制御するauthenticode署名済み自己解凍型実行可能ファイルを配布しています。
分散システムのホットスワップを制御するMSIベースのインストーラーのキノコが含まれているため、MSI自体を簡単に作成することはできません。
実行可能ファイルがそれ自体のauthenticodeをチェックし、署名されていない場合は自己抽出を拒否した場合は、それがあれば便利です。これは実際の整合性を保証するものではないことを私は理解していますが、コンテンツは決してカスタマイズ可能ではなく、おそらくいくつかの正式な認証を処理しやすくするというメッセージを補強します。
考えられる戦略の1つは、このまだ回答されていない質問に基づいている可能性があります。他のアイデアはありますか?
c# - 署名された .Net アセンブリからデジタル署名情報を読み取るにはどうすればよいですか?
ソフトウェア ビルド プロセスで使用するアセンブリ情報アプリケーションを作成しており、署名済みの .Net アセンブリからデジタル署名情報を読み取ろうとしています。
署名されたアセンブリを右クリックし、[デジタル署名] タブを選択して [詳細] ボタンをクリックすることにより、Windows エクスプローラーで実行できることを C# コードで実行したいと考えています。例えば
C#でこれをプログラムで行う方法を知っている人はいますか? 現在、Mono Cecil ライブラリを使用して、アセンブリから残りの情報を取得しています。あなたの助けが最も高く評価されます。
azure - Azure アプリケーションの認証コードの取得
私は、オンライン アプリケーション用の Authenticode 証明書を取得しようとしています。証明書の料金を支払いました (Comodo の再販業者である KSoftware を通じて)。彼らは、サイトアドレスのWHOIS情報が会社名/住所などと一致する必要があると主張しています.
ここに問題があります。アプリケーションは Azure でホストされています。サイト アドレスの WHOIS レコードを照会すると、Microsoft の詳細が返されます。
おそらく、誰かが Azure アプリケーションの署名を取得するプロセスを経験したか、私が参照できる適切なリファレンスを知っているでしょう。
authenticode - コード署名 --> 発行元: 不明 - 正しいチェーンがある
解決しました!
皆さんが助けてくれることを願っています!
最初に。SOやMSDNなどで見つけたすべての記事を調べました。
installshield exe に署名しようとしています。
私は Godaddy コード署名証明書を持っており、証明書への署名にまったく問題はありません。私が問題を抱えているのは、何をしても、他のすべてのコンピューターで発行元が不明になることです。
以下の出力を参照してください。
結論: 証明書の署名に問題はありませんが、UAC プロンプト中に不明な発行元エラーを削除できません (テスト コンピューターはインターネットにアクセスできます)。
また: 確認時に /kp オプションを省略すると、次のメッセージが表示されます: SignTool エラー: 証明書チェーンが処理されましたが、信頼プロバイダーによって信頼されていないルート証明書で終了しました。
最終更新: verify /pa /v temp\setup.exe を実行すると、verify は成功しますが、不明なパブリッシュでエラーが発生します。この記号では、/kp オプションが正しく使用されていません。
手順: %SIGNTOOL% 署名 /v /ac %BUILDROOT%%CERTPATH%%MSCERT% /f %BUILDROOT%%CERTPATH%%CERT% /p %CERTPW% /n "%COMPANY%" /t %TIMESTAMP% %BUILDROOT% %TEMPPATH%\setup.exe
出力: 次の証明書が選択されました: 発行先: %COMPANY NAME% 発行元: Go Daddy Secure Certificate Authority - G2 有効期限: Sat Jun 22 14:07:27 2013 SHA1 ハッシュ: 612A38DDED199101442B09D884ED718BBE00D252
クロス証明書チェーン (マシン ストアを使用): 発行先: Microsoft Code Verification Root 発行元: Microsoft Code Verification Root 有効期限: 11 月 1 日 09:54:03 2025
追加ストアの追加が完了しました 正常に署名され、タイムスタンプが付けられました: c:\build\temp\setup.exe
正常に署名されたファイルの数: 1 警告の数: 0 エラーの数: 0
確認:
検証中: c:\build\temp\setup.exe ファイルのハッシュ (sha1): 62F814EFC81400AD938AB9D9D49B36F7175A098A
署名証明書チェーン: 発行先: Go Daddy ルート認証局 - G2 発行元: Go Daddy ルート認証局 - G2 有効期限: 12 月 31 日木曜日 19:59:59 2037 SHA1 ハッシュ: 47BEABC922EAE80E78783462A79F45C254FDE68B
署名のタイムスタンプ: Sun Jun 24 09:57:57 2012 タイムスタンプ 検証者: 発行先: Thawte Timestamping CA 発行者: Thawte Timestamping CA 有効期限: Thu Dec 31 19:59:59 2020 SHA1 ハッシュ: BE36A4562FB2EE05DBB3D32323ADF445084ED656
クロス証明書チェーン: 発行先: Microsoft Code Verification Root 発行元: Microsoft Code Verification Root 有効期限: 2025 年 11 月 1 日 09:54:03 SHA1 ハッシュ: 8FBE4D070EF8AB1BCCAF2A9D5CCAE7282A2C66B3
正常に検証されました: c:\build\temp\setup.exe
正常に検証されたファイルの数: 1 警告の数: 0 エラーの数: 0
解決しました!
問題は、exe インストーラー内の MSI でした。setup.exe ファイルは署名されていましたが、内部の msi を抽出して実行すると、そのファイルは署名されていませんでした。両方に署名すると、エラーはなくなりました!!!
c - ASN1 を使用してエンコードされたデジタル署名付き PE ファイルの Authenticode から署名者情報を抽出する方法は?
ASN1 構造のデジタル署名された PE ファイルSignerInfo
からを抽出する必要があります。Authenticode
INFO
Security Directory RVA
: PE ファイルには、内部で指定されたオフセットに認証コードが含まれていますOptional Header Data Directories
。Microsoft Authenticode PE Signature Formatで入手可能なドキュメントを読んだ後に開始しようとしましたが、SSL/TSL に非常に慣れていないためうまくいきませんでした。
私の質問:
バイナリを解析してデータ構造を C 文字列形式で出力する方法はありますか?
SignerInfo
指定されたバイナリを解析してorを指す方法はありますSignerName
か?
NOTE
: コードをプラットフォームに依存しないようにしたいので、プラットフォームに依存する API を使用したくありません。
すべての達人に事前に感謝します:-)
UPDATE:
C# でコードを見つけました。同じものに相当するCを見つけるのを手伝ってくれる人はいますか。
windows - pwszTimestampURL を指定すると CryptUIWizDigitalSign が失敗する
CryptUIWizDigitalSignを呼び出して、UI を表示せずに公開コード署名証明書を使用してプログラムで実行可能ファイルに署名すると、問題が発生します。証明書は Comodo コード署名証明書です。
タイムスタンプ URL パラメーターが null に設定されている場合は問題なく動作しますが、null 以外のものを渡すと、呼び出しは失敗します (0 が返されます)。
問題は、タイムスタンプがないと副署名がないことです。そのため、署名の有効性の問題はさらに先に進みます。
環境は Windows7 x64 です。正常に動作する標準のインターネット接続があります。ネットワーク トラフィックをスニッフィングするCryptUIWizDigitalSign
と、タイムスタンプ サーバーへの接続が試行されていないように見えます。
私は PInvoke を介して .NET からこれを呼び出していますが、違いがあるとは思えません。
この機能についてはネット上ではあまり多くありません...
CRYPTUI_WIZ_DIGITAL_SIGN_INFO タイプは次のように定義されます。