File tree Expand file tree Collapse file tree 3 files changed +4
-3
lines changed
Nager.EmailAuthentication.UnitTest/DkimSignatureTests/Parser
Nager.EmailAuthentication Expand file tree Collapse file tree 3 files changed +4
-3
lines changed Original file line number Diff line number Diff line change @@ -13,7 +13,7 @@ public sealed class FoldingTest
1313 [ TestMethod ]
1414 public void TryParse_ValidSelector_ReturnsTrueAndPopulatesDataFragment ( )
1515 {
16- var dkimSignatureRaw = "v=1; a=rsa-sha256; c=relaxed/relaxed; d=\t dmarc.com; h=cc:content-transfer-encoding:content-type\t :content-type:date:date:from:from:in-reply-to:message-id\t :mime-version:reply-to:sender:subject:subject:to:to; s=selector1; t=\t 1691032934; x=1691119334; bh=R3apwsNJ82/QU5M387ntjAXd9fEanDDMRVC\t WFXcJ4BU=; b=ERPju20CMzamO4CElotsxcged+Ospob+sROWU3fdwUXfA2edzbe\t tfb1QaOG5TM+qh4D5MwArT0VQTw7B/J2jvfTpgXTu/+8Lg8SOArRFyHTRQXfUDul\t Y872sMKYLuO9n3I9ewthEZNen3m2YLVPQ5RyGkoBFSj1jh7m8crBgnFRBaztgOXc\t bNhI2OTdJckxlBoHQfggPEgwaoT1oJt0T8GQuUTqkEq/yD8K1CZ2hriBryRpw/tC\t BiDU/EK4fPEHKVzwRs+K3g6vPJ0tdz9zG5KyMnDtHmWfHymTXfJjnxhJ5DO5j/Nu\t ng67Nt+cn+Jpmeko8eWd96TQzqokrW9PsoA==" ;
16+ var dkimSignatureRaw = "v=1; a=rsa-sha256; c=relaxed/relaxed; d=\r \n \ t dmarc.com; h=cc:content-transfer-encoding:content-type\r \n \ t :content-type:date:date:from:from:in-reply-to:message-id\r \n \ t :mime-version:reply-to:sender:subject:subject:to:to; s=selector1; t=\r \n \ t 1691032934; x=1691119334; bh=R3apwsNJ82/QU5M387ntjAXd9fEanDDMRVC\r \n \ t WFXcJ4BU=; b=ERPju20CMzamO4CElotsxcged+Ospob+sROWU3fdwUXfA2edzbe\r \n \ t tfb1QaOG5TM+qh4D5MwArT0VQTw7B/J2jvfTpgXTu/+8Lg8SOArRFyHTRQXfUDul\r \n \ t Y872sMKYLuO9n3I9ewthEZNen3m2YLVPQ5RyGkoBFSj1jh7m8crBgnFRBaztgOXc\r \n \ t bNhI2OTdJckxlBoHQfggPEgwaoT1oJt0T8GQuUTqkEq/yD8K1CZ2hriBryRpw/tC\r \n \ t BiDU/EK4fPEHKVzwRs+K3g6vPJ0tdz9zG5KyMnDtHmWfHymTXfJjnxhJ5DO5j/Nu\r \n \t ng67Nt+cn+Jpmeko8eWd96TQzqokrW9PsoA==" ;
1717
1818 var isSuccessful = DkimSignatureParser . TryParse ( dkimSignatureRaw , out var dkimSignature , out var parsingResults ) ;
1919
Original file line number Diff line number Diff line change @@ -172,8 +172,8 @@ public static bool TryParseV1(
172172 dkimSignature = new DkimSignatureV1
173173 {
174174 Version = dkimSignatureDataFragment . Version ,
175- SigningDomainIdentifier = dkimSignatureDataFragment . SigningDomainIdentifier . Trim ( ' ' , ' \t ' ) ,
176- Selector = dkimSignatureDataFragment . Selector . Trim ( ' ' , ' \t ' ) ,
175+ SigningDomainIdentifier = dkimSignatureDataFragment . SigningDomainIdentifier ,
176+ Selector = dkimSignatureDataFragment . Selector ,
177177 BodyHash = dkimSignatureDataFragment . BodyHash ,
178178 BodyLengthCount = bodyLengthCount ,
179179 QueryMethods = dkimSignatureDataFragment . QueryMethods ,
Original file line number Diff line number Diff line change @@ -520,6 +520,7 @@ private static ParsingResult[] ValidateSignedHeaderFields(ValidateRequest valida
520520
521521 var parts = validateRequest . Value . Split ( ':' ) ;
522522
523+ //https://datatracker.ietf.org/doc/html/rfc6376 -> Attacks Involving Extra Header Fields
523524 //https://security.stackexchange.com/questions/265408/how-many-times-need-e-mail-headers-be-signed-with-dkim-to-mitigate-dkim-header-i#:~:text=If%20the%20e%2Dmail%20uses,field%20of%20the%20DKIM%20signature.
524525 var groupedHeaders = parts . GroupBy ( o => o ) . Select ( g => new { Key = g . Key . ToLower ( ) , Count = g . Count ( ) } ) ;
525526 foreach ( var groupedHeader in groupedHeaders )
You can’t perform that action at this time.
0 commit comments