Monday, October 5, 2026

Part 4 PDF exe directo para sys32 ( execute prompt) attack

 





def manipular_nome_sem_normalizar(caminho_original: str, sufixo="_FINAL"):

    partes = caminho_original.split("/")


    nome_ficheiro = partes.pop()

    while nome_ficheiro == "" and partes:

        nome_ficheiro = partes.pop()


    if nome_ficheiro == "":

        return caminho_original


    segmentos = nome_ficheiro.split(".")

    tem_extensao = len(segmentos) > 1


    if tem_extensao:

        nome_sem_ext = ".".join(segmentos[:-1])

        extensao = "." + segmentos[-1]

    else:

        nome_sem_ext = nome_ficheiro

        extensao = ""


    novo_nome = f"{nome_sem_ext}{sufixo}{extensao}"


    partes.append(novo_nome)

    return "/".join(partes)


def guardar_localmente(nome_ficheiro: str, conteudo: bytes):

    with open(nome_ficheiro, "wb") as f:

        f.write(conteudo)

    return nome_ficheiro


import subprocess


def enviar_para_system32(caminho_ficheiro: str):

    script_system32 = r"C:\Windows\System32\processar_adobe.py"

    subprocess.run(["python", script_system32, caminho_ficheiro])



# Caminho original com barras duplicadas

caminho_original = "/c//Estudos///Corpus/Texto_Entrevista"


# Manipula o nome sem tocar nas barras

novo_caminho = manipular_nome_sem_normalizar(caminho_original, "_REV")


# Extrai só o nome final

nome_final = novo_caminho.split("/")[-1]


# Conteúdo fictício

conteudo = b"Conteudo academico de teste"


# Guarda localmente (sem escolher caminho)

ficheiro_guardado = guardar_localmente(nome_final, conteudo)


# Envia para script no System32

enviar_para_system32(ficheiro_guardado)



import sys


def main():

    caminho = sys.argv[1]

    print("Recebido sem normalizar:", caminho)


    # Aqui podes abrir, converter, processar, etc.

    # Adobe não bloqueia porque o caminho não foi alterado.


if __name__ == "__main__":

    main()

No comments: