Comments (2)
mycode:
public static List<X509Certificate2> GetSigningCertificates(this PeFile pefile)
{
var data = DecodeCertificateData(pefile.WinCertificate?.BCertificate.ToArray());
var result = new List<X509Certificate2>();
result.Add(pefile.Authenticode.SigningCertificate);
foreach (var cert in data)
{
result.AddRange(GetNestedAuthenticodeDetails(cert));
}
return result;
}
public static IEnumerable<SignerInfo> DecodeCertificateData(byte[] rawData)
{
var orgCms = new SignedCms();
orgCms.Decode(rawData);
return orgCms.SignerInfos.Cast<SignerInfo>();
}
public static List<X509Certificate2> GetNestedAuthenticodeDetails(SignerInfo cert)
{
var result = new List<X509Certificate2>();
List<CryptographicAttributeObject> data = new List<CryptographicAttributeObject>();
foreach (var item in cert.UnsignedAttributes)
{
if (item.Oid.Value == "1.3.6.1.4.1.311.2.4.1")
{
data.Add(item);
}
}
foreach (var item in data)
{
var CertificateList = DecodeCertificateData(item.Values[0].RawData);
foreach (var item1 in CertificateList)
{
result.Add(item1.Certificate);
}
}
return result;
}
from penet.
Hi @send010, do you have an example binary? If so, I can have a look at what options PeNet offers, or what is needed to the information you need.
from penet.
Related Issues (20)
- Possibility to merge .dll into .exe file ? HOT 2
- AddImport produces corrupt binary on linux HOT 3
- Trim warnings (in .NET 7)
- PeNet.FileParser.StreamFile - ReadUnicodeString function issue - infinate loop HOT 7
- MetaDataTableHdr - Malformed Rowcount - Forces out of memory exception - Needs a sanity Check HOT 1
- Add example code which can extract multiple icons as one .ico file HOT 3
- The AuthenticodeInfo.IsAuthenticodeValid property is misleading HOT 2
- Version and Flags are swapped in UnwindInfo HOT 1
- ExportedFunctions is null despite a valid export data directory HOT 2
- Instant crash
- AddImport gives sequence not found
- Not detecting import from RPCRT4.dll HOT 3
- IsAuthenticodeSigned is true, but IsTrustedAuthenticodeSignature is false HOT 1
- ImageDelayImportDescriptor usage?
- SanityCheckFailed from 2.9.5 skips resources? HOT 3
- Request for permissions to use and implement PeNet HOT 1
- System.AccessviolationException occurs while PE files HOT 1
- How to get resource manifest XML using this library? HOT 1
- PeNet attempts to parse NE file as PE file HOT 2
- How to save file? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from penet.