Add new state: Unicode compatibility normalization
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 35/100
Piste de recherche
Commencez dans python/ql/lib/semmle/python/security/dataflow/PathInjectionQuery.qll, en particulier aux lignes 20-28, et comparez les états existants de normalisation des chemins et de vérification de sécurité avec l’état signalé de normalisation de compatibilité Unicode. Utilisez le graphique de l’issue pour suivre l’ordre requis ; le travail est terminé lorsque la requête modélise la normalisation de compatibilité à la position pertinente sans manquer de cas.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Hey ,
I noticed that you are considering only two states:
- One regarding the path normalization if it is done or not before the safe check
- Second concerns the safe check.
as shown next:
However, there is a third state that is a required one: Unicode normalized. If ever a Unicode normalization is performed with a compatibility algorithm (NFKC or NFKD), the query would miss some cases precisely those ones where the Unicode normalization is not performed before the path normalization and the safe check. I draw a little chart to depict my saying:
The previous chart shows that when you consider a potential Unicode compatibility normalization, it is a required step before path normalization and safe check. If ever placed between the first two steps or after the last one, that would yield a vulnerable case that got missed due to the fact that the Unicode normalization may reintroduce unexpected special characters such as .. and /.
Regards
@Sim4n6
- Langage dominant
- CodeQL
- Étoiles
- 10.1k
- Forks
- 2.1k
- Merge moyen
- 2 j 17 h
- PR mergées (30 j)
- 145
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de github/codeql
-
agentic-workflows
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
-
false-positive javascript
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
-
C#: cs/simplifiable-boolean-expression false positive on Nullable<bool> compared with a literal Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
-
false-positive
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
Toutes les issues de github/codeql
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
-
oblt-aw/detector/security
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
-
setup tools wizard offers no GitHub auth path, and setup summary doesn't recognize `gh` CLI auth Ouvertearea/auth comp/cli P3 tool/skills type/bug
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
NousResearch/hermes-agent#121131 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
trailofbits/skills#330 ·
-
accepted
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100