From 474bbfc775a0a9b3b016037eeea200932f9d0090 Mon Sep 17 00:00:00 2001 From: edoardottt Date: Wed, 30 Mar 2022 15:06:47 +0200 Subject: [PATCH] update detection duplicates --- scanner/errors.go | 38 +++++++++++++++++++------------------- scanner/info.go | 4 ++-- scanner/secrets.go | 4 ++-- 3 files changed, 23 insertions(+), 23 deletions(-) diff --git a/scanner/errors.go b/scanner/errors.go index ca3db98..45dc228 100644 --- a/scanner/errors.go +++ b/scanner/errors.go @@ -74,7 +74,7 @@ func GetErrorRegexes() []Error { "Debug information", []string{ `(?i)Debug trace`, - `(?i)stack trace\\:`}, + `(?i)stack trace\:`}, }, { "MySQL error", @@ -88,7 +88,7 @@ func GetErrorRegexes() []Error { `(?i)SQL syntax.*?MySQL`, `(?i)Warning.*?mysqli?`, `(?i)Unknown column '[^ ]+' in 'field list'`, - `(?i)com\\.mysql\\.jdbc`, + `(?i)com\.mysql\.jdbc`, `(?i)Zend_Db_(Adapter|Statement)_Mysqli_Exception`, `(?i)Syntax error or access violation`}, }, @@ -109,10 +109,10 @@ func GetErrorRegexes() []Error { `(?i)PostgreSQL error`, `(?i)PostgreSQL.*?ERROR`, `(?i)Warning.*?\\Wpg_`, - `(?i)Npgsql\\.`, - `(?i)org\\.postgresql\\.util\\.PSQLException`, - `(?i)ERROR:\\s\\ssyntax error at or near`, - `(?i)org\\.postgresql\\.jdbc`}, + `(?i)Npgsql\.`, + `(?i)org\.postgresql\.util\.PSQLException`, + `(?i)ERROR:\s\ssyntax error at or near`, + `(?i)org\.postgresql\.jdbc`}, }, { "MSSQL error", @@ -122,35 +122,35 @@ func GetErrorRegexes() []Error { `(?i)ODBC SQL Server Driver`, `(?i)Unclosed quotation mark after the character string`, `(?i)SQLServer JDBC Driver`, - `(?i)Driver.*? SQL[\\-\\_\\ ]*Server`, + `(?i)Driver.*? SQL[\-\_\ ]*Server`, `(?i)OLE DB.*? SQL Server`, `(?i)\bSQL Server[^<"]+Driver`, - `(?i)Warning.*?\\W(mssql|sqlsrv)_`, + `(?i)Warning.*?\W(mssql|sqlsrv)_`, `(?i)\bSQL Server[^<"]+[0-9a-fA-F]{8}`, - `(?i)System\\.Data\\.SqlClient\\.SqlException`, - `(?is)Exception.*?\bRoadhouse\\.Cms\\.`, - `(?i)\\[SQL Server\\]`, - `(?i)ODBC Driver \\d+ for SQL Server`, - `(?i)com\\.jnetdirect\\.jsql`, - `(?i)macromedia\\.jdbc\\.sqlserver`, + `(?i)System\.Data\.SqlClient\.SqlException`, + `(?is)Exception.*?\bRoadhouse\.Cms\.`, + `(?i)\[SQL Server\]`, + `(?i)ODBC Driver \d+ for SQL Server`, + `(?i)com\.jnetdirect\.jsql`, + `(?i)macromedia\.jdbc\.sqlserver`, `(?i)Zend_Db_(Adapter|Statement)_Sqlsrv_Exception`, - `(?i)com\\.microsoft\\.sqlserver\\.jdbc`, + `(?i)com\.microsoft\.sqlserver\.jdbc`, `(?i)SQL(Srv|Server)Exception`}, }, { "OracleDB error", []string{ - `(?i)(\\bORA-\\d{5}|Oracle error|Oracle.*Driver|Warning.*\\Woci_.*|Warning.*\\Wora_.*)`}, + `(?i)(\bORA-\d{5}|Oracle error|Oracle.*Driver|Warning.*\Woci_.*|Warning.*\Wora_.*)`}, }, { "IBMDB2 error", []string{ - `(?i)(CLI Driver.*DB2|DB2 SQL error|\\bdb2_\\w+\\(|SQLSTATE.+SQLCODE)`}, + `(?i)(CLI Driver.*DB2|DB2 SQL error|\bdb2_\w+\(|SQLSTATE.+SQLCODE)`}, }, { "SQLite error", []string{ - `(?i)(SQLite\\/JDBCDriver|SQLite.Exception|System.Data.SQLite.SQLiteException|Warning.*sqlite_.*|Warning.*SQLite3::|\\[SQLITE_ERROR\\])`}, + `(?i)(SQLite\/JDBCDriver|SQLite.Exception|System.Data.SQLite.SQLiteException|Warning.*sqlite_.*|Warning.*SQLite3::|\[SQLITE_ERROR\])`}, }, } return regexes @@ -162,7 +162,7 @@ func RemoveDuplicateErrors(input []ErrorMatched) []ErrorMatched { list := []ErrorMatched{} for _, entry := range input { if _, value := keys[entry.Match+entry.Url]; !value { - keys[entry.Url] = true + keys[entry.Match+entry.Url] = true list = append(list, entry) } } diff --git a/scanner/info.go b/scanner/info.go index 4da909a..c3b0bf8 100644 --- a/scanner/info.go +++ b/scanner/info.go @@ -78,8 +78,8 @@ func RemoveDuplicateInfos(input []InfoMatched) []InfoMatched { keys := make(map[string]bool) list := []InfoMatched{} for _, entry := range input { - if _, value := keys[entry.Match+entry.Url]; !value { - keys[entry.Url] = true + if _, value := keys[entry.Match]; !value { + keys[entry.Match] = true list = append(list, entry) } } diff --git a/scanner/secrets.go b/scanner/secrets.go index 034c1c9..d0c62e9 100644 --- a/scanner/secrets.go +++ b/scanner/secrets.go @@ -345,8 +345,8 @@ func RemoveDuplicateSecrets(input []SecretMatched) []SecretMatched { keys := make(map[string]bool) list := []SecretMatched{} for _, entry := range input { - if _, value := keys[entry.Match+entry.Url]; !value { - keys[entry.Url] = true + if _, value := keys[entry.Match]; !value { + keys[entry.Match] = true list = append(list, entry) } }