mirror of
				https://github.com/go-gitea/gitea
				synced 2025-10-31 19:38:23 +00:00 
			
		
		
		
	The Gitea codebase was logging `Elasticsearch` and `Meilisearch` connection strings directly to log files without sanitizing them. Since connection strings often contain credentials in the format `protocol://username:password@host:port`, this resulted in passwords being exposed in plain text in log output. Fix: - wrapped all instances of setting.Indexer.RepoConnStr and setting.Indexer.IssueConnStr with the `util.SanitizeCredentialURLs()` function before logging them. Fixes: #35530 Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
This commit is contained in:
		| @@ -25,6 +25,7 @@ import ( | ||||
| 	"code.gitea.io/gitea/modules/process" | ||||
| 	"code.gitea.io/gitea/modules/queue" | ||||
| 	"code.gitea.io/gitea/modules/setting" | ||||
| 	"code.gitea.io/gitea/modules/util" | ||||
| ) | ||||
|  | ||||
| // IndexerMetadata is used to send data to the queue, so it contains only the ids. | ||||
| @@ -100,7 +101,7 @@ func InitIssueIndexer(syncReindex bool) { | ||||
| 			issueIndexer = elasticsearch.NewIndexer(setting.Indexer.IssueConnStr, setting.Indexer.IssueIndexerName) | ||||
| 			existed, err = issueIndexer.Init(ctx) | ||||
| 			if err != nil { | ||||
| 				log.Fatal("Unable to issueIndexer.Init with connection %s Error: %v", setting.Indexer.IssueConnStr, err) | ||||
| 				log.Fatal("Unable to issueIndexer.Init with connection %s Error: %v", util.SanitizeCredentialURLs(setting.Indexer.IssueConnStr), err) | ||||
| 			} | ||||
| 		case "db": | ||||
| 			issueIndexer = db.GetIndexer() | ||||
| @@ -108,7 +109,7 @@ func InitIssueIndexer(syncReindex bool) { | ||||
| 			issueIndexer = meilisearch.NewIndexer(setting.Indexer.IssueConnStr, setting.Indexer.IssueConnAuth, setting.Indexer.IssueIndexerName) | ||||
| 			existed, err = issueIndexer.Init(ctx) | ||||
| 			if err != nil { | ||||
| 				log.Fatal("Unable to issueIndexer.Init with connection %s Error: %v", setting.Indexer.IssueConnStr, err) | ||||
| 				log.Fatal("Unable to issueIndexer.Init with connection %s Error: %v", util.SanitizeCredentialURLs(setting.Indexer.IssueConnStr), err) | ||||
| 			} | ||||
| 		default: | ||||
| 			log.Fatal("Unknown issue indexer type: %s", setting.Indexer.IssueType) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user