Incomplete naming schema and API usage patterns in py/insecure-cookie
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 52/100
Línea de trabajo
Comienza por la regla py/insecure-cookie e inspecciona el predicado cookie.isSensitive y el manejo de set_cookie descritos en el issue. Compara los nombres de token enumerados y los ejemplos directos de Set-Cookie con el comportamiento actual; la tarea está terminada cuando se detectan los patrones de cookies de autenticación compatibles sin depender únicamente de los métodos del framework.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
- The existing
cookie.isSensitivepredicate seems to miss common modern authentication token patterns. I have found some and listed them below. - The rule currently relies primarily on specific framework methods (e.g., set_cookie). It ignores direct HTTP manipulation, which is also very common.
code example:
from flask import Flask, Response, make_response
app = Flask(__name__)
@app.route("/login")
def login():
resp = make_response("Logged in")
resp.set_cookie("authKey", "secret123") # $ Alert[py/insecure-cookie]
resp.set_cookie("accessToken", "secret123") # $ missing
resp.set_cookie("access_token", "secret123") # missing
resp.set_cookie("auth_token", "secret123") # missing
resp.set_cookie("jwt", "secret123") # $ missing
resp.set_cookie("oauth_token", "secret123") # $ missing
# cannot support this
resp.headers.add("Set-Cookie", "authKey=secret123") # missing
# This is also common, but it seems more difficult to support this.
from http.cookies import SimpleCookie
resp = make_response("Logged in")
cookie = SimpleCookie()
cookie["session"]['authKey'] = "secret123" # missing
# cookie["session"]["httponly"] = True
# cookie["session"]["secure"] = True
for key, morsel in cookie.items():
resp.headers.add('Set-Cookie', morsel.OutputString())
return resp
- Lenguaje dominante
- CodeQL
- Estrellas
- 10.1k
- Forks
- 2.1k
- Merge medio
- 2 d 10 h
- PR fusionados (30 d)
- 134
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de github/codeql
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
-
C#: cs/simplifiable-boolean-expression false positive on Nullable<bool> compared with a literal Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
false-positive
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
false-positive
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
Todos los issues de github/codeql
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
punkpeye/mcp-remote#369 ·
-
Mend: dependency security vulnerability untriaged
Dificultad 1/5 Menos de una hora Aptitud para principiantes 86/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
-
CVE-2024-24786 CPE mismatch Abiertobug
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
cisagov/vulnrichment#337 ·
-
bug DUP Reservations
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
bcgov/reserve-rec-public#896 ·