Improper Handling of Unicode Encoding
The product does not properly handle when an input contains Unicode encoding.
Unicode characters can have multiple encodings or representations. If an application does not properly handle Unicode, attackers may be able to bypass security filters or cause unexpected behavior using alternate encodings.
Jak naprawić tę podatność
Strategie zapobiegania dla Improper Handling of Unicode oparte na 3 regułach detekcji Shoulder.
Normalize strings with NFKC before security-sensitive comparisons
- func handler(w http.ResponseWriter, r *http.Request) { - username := r.FormValue("username") - if username == "admin" { + import "golang.org/x/text/unicode/norm" + + func handler(w http.ResponseWriter, r *http.Request) { + username := r.FormValue("username") + normalized := norm.NFKC.String(strings.ToLower(username)) + if normalized == "admin" { grantAdminAccess() } }
Normalize Unicode strings with NFKC before security-sensitive comparisons
app.post('/login', (req, res) => { - if (req.body.username === 'admin') { + const username = req.body.username.normalize('NFKC').toLowerCase(); + if (username === 'admin') { return res.send('Admin access'); } });
Normalize Unicode strings with NFKC before comparison or security-critical operations
- def check_username(input_name, stored_name): - if input_name == stored_name: + import unicodedata + + def check_username(input_name, stored_name): + normalized_input = unicodedata.normalize('NFKC', input_name).lower() + normalized_stored = unicodedata.normalize('NFKC', stored_name).lower() + if normalized_input == normalized_stored: grant_access()
Znajdz podatnosci w swoim kodzie
Uzyj Shoulder do skanowania kodu w poszukiwaniu wzorcow Improper Handling of Unicode Encoding. 3 reguly.
# Scan with Shoulder CLI npx @shoulderdev/cli trust --cwe=176 # Or scan entire project npx @shoulderdev/cli trust .
Reguly Wykrywania (3)
Na co zwracac uwage podczas przegladu kodu
Te wzorce wskazuja na potencjalne podatnosci Improper Handling of Unicode Encoding. Szukaj ich podczas przegladow kodu i audytow bezpieczenstwa.
Przeskanuj swój kod w poszukiwaniu Improper Handling of Unicode Encoding
Shoulder CLI znajduje podatne wzorce w całym Twoim kodzie.