mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-11-04 10:44:12 +01:00 
			
		
		
		
	Fixes possible vulnerabilities with keyword hijacking (#20)
- Added public entries to reserved keywords list - Rename variables - Derped comment
This commit is contained in:
		
							parent
							
								
									3dedc027ac
								
							
						
					
					
						commit
						3ef022b071
					
				@ -505,12 +505,12 @@ func NewGhostUser() *User {
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var (
 | 
					var (
 | 
				
			||||||
	reversedUsernames    = []string{"debug", "raw", "install", "api", "avatar", "user", "org", "help", "stars", "issues", "pulls", "commits", "repo", "template", "admin", "new", ".", ".."}
 | 
						reservedUsernames    = []string{"assets", "css", "img", "js", "less", "plugins", "debug", "raw", "install", "api", "avatar", "user", "org", "help", "stars", "issues", "pulls", "commits", "repo", "template", "admin", "new", ".", ".."}
 | 
				
			||||||
	reversedUserPatterns = []string{"*.keys"}
 | 
						reservedUserPatterns = []string{"*.keys"}
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// isUsableName checks if name is reserved or pattern of name is not allowed
 | 
					// isUsableName checks if name is reserved or pattern of name is not allowed
 | 
				
			||||||
// based on given reversed names and patterns.
 | 
					// based on given reserved names and patterns.
 | 
				
			||||||
// Names are exact match, patterns can be prefix or suffix match with placeholder '*'.
 | 
					// Names are exact match, patterns can be prefix or suffix match with placeholder '*'.
 | 
				
			||||||
func isUsableName(names, patterns []string, name string) error {
 | 
					func isUsableName(names, patterns []string, name string) error {
 | 
				
			||||||
	name = strings.TrimSpace(strings.ToLower(name))
 | 
						name = strings.TrimSpace(strings.ToLower(name))
 | 
				
			||||||
@ -535,7 +535,7 @@ func isUsableName(names, patterns []string, name string) error {
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func IsUsableUsername(name string) error {
 | 
					func IsUsableUsername(name string) error {
 | 
				
			||||||
	return isUsableName(reversedUsernames, reversedUserPatterns, name)
 | 
						return isUsableName(reservedUsernames, reservedUserPatterns, name)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// CreateUser creates record of a new user.
 | 
					// CreateUser creates record of a new user.
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user