clr.sll!StrongNameSignatureVerification CPU consum

2020-07-08 07:44发布

问题:

I have a C# (.NET 4.0) WinForm application that continuously communicates to a Linux based application, receives some data from it few times a second. I have been fine-tuning this WinForm application to reduce it's high CPU use when I saw 'clr.sll!StrongNameSignatureVerification' is consuming a lot of CPU for this application. I used Process Explorer to find this out. Some Google searching told me that 'clr.sll!StrongNameSignatureVerification' is kicking-in because CLR is trying to verify whether this is a strongly named assembly (which I don't want CLR to).

After my further research on this, I tried sn.exe from Microsoft SDK to skip signature verification for this WinForm application. I got an error saying that this is not a strongly named assembly. I wasn't surprised as I haven't signed this application or don't remember setting anything that should invoke CLR to verify the signature of this application.

My experience in .net application security is almost zero so at moment I am looking for some help on this matter. Any pointer will be helpful.

Thanks in advance.

回答1:

Look at the offset after clr.sll!StrongNameSignatureVerification, if it's larger than a few thousand bytes, it probably means the symbols are not loaded in Process Explorer and the problem might be in any other method in clr.dll.