Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Digitally sign DLLs as tampering protection proof #95

Open
hamjo opened this issue Jun 7, 2023 · 3 comments
Open

Digitally sign DLLs as tampering protection proof #95

hamjo opened this issue Jun 7, 2023 · 3 comments
Labels
enhancement New feature or request

Comments

@hamjo
Copy link

hamjo commented Jun 7, 2023

I'd like to be able to prove Serilog.Expressions.dll hasn't been tampered, but I can't since this file doesn't have a digital signature.

Signing Serilog.Expressions.dll in the the shipped NuGet package would enable us to secure our supply chain.

Our corporate policy requires us to only use digitally signed DLLs. We'll have to stop using Serilog without that feature.

@hamjo hamjo added the enhancement New feature or request label Jun 7, 2023
@nblumhardt
Copy link
Member

Hi @hamjo, thanks for dropping by!

Just to clarify, do you mean Serilog.Expressions.dll specifically, using code signing, or do you mean the Serilog.Expressions NuGet package?

Also, is there anything specific about Serilog.Expressions.dll that's different from Serilog.dll? (Just curious why you mention it specifically, rather than the core package/sink packages/etc.)

Many thanks,
Nick

@hamjo
Copy link
Author

hamjo commented Jun 13, 2023

Hi @nblumhardt

Yes I meant Serilog.Expressions.dll specifically. using code signing.
For some internal reason, this dll was the first to be internally flagged as unsigned.
But as this requirement rolls out, I would be opening similar issues in core packages.

@cocowalla
Copy link

@hamjo isn't it rather... unusual for OSS projects to supply authenticode-signed binaries? Very curious to find out what other OSS deps you have that ship signed binaries?

I once worked with a bank that had the requirement that all .NET binaries were digitally signed, but we had to build from source and sign ourselves, with a code signing certificate provided by the bank - it was the only way to avoid a supply chain attack, and know for sure that the signed binaries had been built from the expected code.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants