Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

[python] The tuple (*) argument of a call cannot step to function parameter for the CommandInjectionCustomizations flow

Aberta
#19,900 7 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
35/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
django, python
Domínio
security

Direção de pesquisa

Comece reproduzindo o exemplo de Python fornecido e revisando o tratamento da propagação de taint do CodeQL para argumentos com asterisco. A issue não menciona arquivos-fonte nem testes; o trabalho estará concluído quando o fluxo de taint chegar a os.system por meio de build_cmd(*args), com um teste de regressão cobrindo o exemplo.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

question

In Python, when passing the typle (*) argument to function parameters, the taint propagation chain breaks. As shown in the following code snippet, this issue occurs. Are there plans to support this scenario? How do i resolve this issue?

from django.contrib.auth.decorators import login_required
from django.conf.urls import url
import os

def build_cmd(cmd: str):
    cmd = cmd + "; touch aa"
    print(cmd)
    return cmd

@login_required 
def GetOperateLog(request):
    cmd = request.POST.get('cmd', None)
    args = []
    args.append(cmd)
    cmd3 = build_cmd(*args)
    os.system(cmd3)

urlpatterns = [
    url(r'^GetOperateLog', GetOperateLog, name='GetOperateLog'),
]

This is the taint propagation flow.
Image

Linguagem predominante
CodeQL
Estrelas
10.1k
Forks
2.1k
Merge médio
2d 17h
PRs com merge (30d)
145

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de github/codeql

Todas as issues de github/codeql

Issues semelhantes

Mais issues de Security

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.