github / github/codeql

Using "Value::named" search for call to "os.path.join" not working

Abierto
#3,261 3 comentarios 0 reacciones 0 asignados Ver en GitHub
Python question
Lenguaje dominante
CodeQL
Estrellas
10.1k
Forks
2.1k
Merge medio
2 d 15 h
PR fusionados (30 d)
141

Descripción

CodeQL version 2.1.0
```
from rest_framework.viewsets import ModelViewSet
from rest_framework.exceptions import ValidationError
import os
from rest_framework.decorators import list_route

def func1():
pass

def preprocess(request):
pass

class TestViewSet(ModelViewSet):
base = "111111"
@list_route(methods=['post'])
def upload(self, request):
try:
var1 = func1()
except:
raise ValidationError({'message': [_('1,1')]})
if var1['1']:
raise ValidationError({'message': [_('1,1')]})

(upload_file, file_name) = preprocess(request)
path1 = base.RELATED_DIR['11111111']
if not os.path.exists(path1):
os.makedirs(path1)
path2 = os.path.join(path1, file_name)
```

Query:
```
import python
from ControlFlowNode c
where Value::named("os.path.join").getACall() = c
select c
```

Expect result:
Can find the call to "os.path.join" on the last line

Actual result:
Just show 2 call in the python lib

Is this a bug or am I doing this in the wrong way?

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.