Először is, a git auditálásra került. Ezt az Open Source Technology Improvement Fund (OSTIF) nevű nonprofit szervezet támogatta, amely a nyílt forráskódú projektek biztonságának javításán dolgozik. Magát az auditot az X41 és a GitLab kutatói végezték, ill két kritikus biztonsági rést találtak, mindkettőt ugyanaz a rossz kódolási szokás okozza – egy int
pufferhosszak megtartására.
A modern rendszereken a size_t
mindig előjel nélküli, és ugyanolyan bithosszúságú, mint az architektúra bitszélessége. Ez a megfelelő adattípus a karakterlánc- és pufferhosszúságokhoz, mivel garantáltan nem csordul túl a rendszer maximális címezhető memóriájáig terjedő hosszúságok kezelésekor. Másrészt egy int
általában négy bájt hosszú és előjeles, maximális értéke 2^31-1 vagy 2147483647 – körülbelül 2 GB. Nagy puffer, de nem hallatlan mennyiségű adat. Dobj valami nagyot a git-re, és váratlan módon eltörik.
Az első példánk a CVE-2022-23521, egy határon túli írás, amelyet egy int
túlcsorduló negatív. A .gitattributes
fájl véglegesíthető egy lerakatban egy módosított git klienssel, majd ennek a tárolónak az ellenőrzése a num_attrs
változó a túlcsorduláshoz. Tolja a túlcsordulást egészen egy kis negatív számig, és a git ekkor jelentősen alulfoglalja az attribútumpuffert, és az összes adatot a lefoglalt puffer végére írja.
A CVE-2022-41903 egy másik előjeles egész túlcsordulás, ezúttal akkor, amikor egy csinos nyomtatási formátumot visszaélnek valami váratlan művelethez. Vessen egy pillantást erre a kódblokkra:
int sb_len = sb->len, offset = 0; if (c->flush_type == flush_left) offset = padding - len; else if (c->flush_type == flush_both) offset = (padding - len) / 2; /* * we calculate padding in columns, now * convert it back to chars */ padding = padding - len + local_sb.len; strbuf_addchars(sb, ' ', padding); memcpy(sb->buf + sb_len + offset, local_sb.buf, local_sb.len);
Az exploit formátum valahogy így nézne ki %>(2147483647)%a%>(2147483646)%x41
, ahol a fenti kód minden kitöltési példánynál lefut (A %>(#)
blokkok) található a formátumban. A kód első alkalommal (2^31)-1 szóközt ad a kimeneti karakterlánc elejéhez. Ez a szám véletlenül egy négy bájtos előjelű egész szám maximális értéke. De a fenti kódblokk máskor is lefut, és egyszer újabb szöveg kerül a pufferbe, és a hossza meghaladja a maximális egész értéket. A blokk első sora implicit leadást végez size_t
nak nek int
, beállítás sb_len
negatív értékre.
Aztán a memcpy()
hívás, sb->buf
a puffer elejére mutató mutató, az sb_len a túlcsordult nagy negatív számunk, az offset pedig egy felhasználó által szabályozott érték. Ez a címzett cél helyét jelenti memcpy()
akaratlanul is alacsonyabb memóriahelyre állítható, mint a tervezett puffer kezdete. Támadó irányított ír. Hozzáadtam néhány hibakereső printf() utasítást ehhez a szövegblokkhoz, és lefuttattam egy tesztesetet:
$ ./bin-wrappers/git log -1 --pretty="format:%>(2147483647)%a%>(2147483635)%s" >/dev/null Padding: 2147483647 sb_len: 0 offset: 2147483647 Memcpy: Padding: 2147483635 sb_len: -2147483647 offset: 2147483591 Memcpy: CI: upgrade to macos-12, and pin OSX version ================================================================= ==844038==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x7fd8989f97c8 at pc 0x7fdb15e49d21 bp 0x7ffe8fa5c100 sp 0x7ffe8fa5b8b0 WRITE of size 44 at 0x7fd8989f97c8 thread T0 0x7fd8989f97c8 is located 56 bytes to the left of 4831838268-byte region [0x7fd8989f9800,0x7fd9b89f983c)
A kimenetek első kvartettje a setup, a naplósor alapozása párnázással, hogy max int hosszú legyen. A második kvartett a puffertúllépés, ahol sb_len
negatívra van állítva, majd hozzáadjuk az eltoláshoz, hogy a puffer kezdetétől balra 56 bájttal kapjunk helyet. Ebben az esetben az adott helyre nyomtatott tartalom az %s
, amelyet a véglegesítés tárgysora vált fel – 44 bájt hosszú. A szerzők azt sugallják, hogy ez felfegyverkezhető egy „git kovácsolással”, AKA GitHubbal és GitLabbal, mivel ezek a szoftvercsomagok a git archiválás parancsot futtatják, amely egy felhasználó által vezérelt szép karakterláncot hívhat meg.
A javításokat még december 8-án betolták a git forráskódba, de csak most érhetők el az ezeket a javításokat tartalmazó új kiadások. A nyersanyagnak körülbelül 2200 példánya van int
probléma, és ezek eltakarítása eltart egy ideig, még néhány szórakoztató hack mellett is cast_size_t_to_int()
, egy soron belüli függvény, amely csak megöli a programot, ha egy 2 GB+ size_t
kezelik. Szóval frissíts!
Mailchimp – Újra
Úgy tűnik, a Mailchimp munkatársai nem tudnak pihenni belső adminisztrációs eszközeikhez ismét hozzáfértek a támadók, ami 133 ügyfélfiók, köztük a WooCommerce megjelenéséhez vezetett. Ez a harmadik alkalom, hogy a Mailchimp egy social engineering vagy adathalász támadásba esik az elmúlt évben, és minden alkalommal adathalász e-maileket küldtek a végfelhasználóknak. Tehát ha a Mailchimp levelezőlistáján szerepel, tartsa szem előtt ezt a szabálysértést, amikor legközelebb kapcsolódó e-mail érkezik. (A szerkesztő megjegyzése: Hackaday két hírlevele a Mailchimpet használja, és nem kaptunk értesítést, ezért úgy gondoljuk, hogy jók vagyunk.)
Royal Mail Ransomware
Egy olyan történetben, amelynek nagy következményei lehetnek, a A brit Royal Mail zsarolóvírus-támadást szenvedett el nemzetközi levelek kezelésére szolgáló rendszerükön. A támadás Lockbit ransomware-t használ, egy olyan csoportot, amelyről feltételezik, hogy egy oroszul beszélő ransomware banda. Ez jelentős lehet, mivel egy tényleges kormányhivatal elleni támadás sokkal súlyosabb, mint egy vállalkozás elleni támadás. Mivel a Lockbit ransomware-ként-szolgáltatásként fut, nagyon nehéz lesz pontosan meghatározni, hogy valójában ki hajtotta végre a támadást. Egyelőre az ajánlás egyszerű: ne küldjön nemzetközi leveleket. Hoppá.
SPF rekordok szkennelése
[Sebastian Sallának] van egy furcsa hobbija, mégpedig a formájában az SPF rekordok szkennelése furcsa hibás konfigurációkért. Legutóbbi kalandjában ez a vizsgálat volt a 3 millió leglátogatottabb domain között. És hibás konfigurációt találtak.
De várjunk csak, mi az az SPF, és miért érdekel minket? A Sender Policy Framework egy txt rekord, amely a tartomány DNS-rekordjainak része. És megadja, hogy valójában mely IP-címek jogosultak e-mailek küldésére az adott domainhez. Tehát ha egy bejövő e-mail azt állítja, hogy érvényes SPF-rekorddal rendelkező tartományról származik, és a küldő IP-cím nem szerepel ebben a rekordban, akkor nyilvánvalóan nem az igényelt domainről származik.
Ha pedig SPF-probléma miatt elutasítják a domain e-mailjeit, az az egyik legbiztosabb módja annak, hogy elkapd a hibásodást. Szóval csábító, hogy az SPF rekordot egy kicsit… *liberálisabbá* tegyük, mint amilyennek lennie kellene. Ennek pedig a legszélsőségesebb iterációja, hogy csak pofont a +all
az SPF-rekordon, és végezzen vele. Természetesen elmondja a világnak, hogy minden spammer bárhol, amely az Ön domainjét használja, valójában valódi e-maileket küld, de legalább újra működik a főnök kimenő e-mailjei. Több mint ezer SPF-re állított domainnel +all
, úgy tűnik, ez a vártnál gyakoribb hiba.
Az igazán érdekes dolog az, hogy ki kicsoda ezek közül a rosszul konfigurált tartományok közül, például több amerikai kormányzati ügynökség, más kormányzati tartományok szerte a világon és több egyetem. A legérdekesebb az ukrán védelmi minisztérium volt, ahol az SPF rekordot a -all
nak nek +all
kb 4 hónapja.
Bitek és bájtok
A Tailscale egy potenciálisan súlyos problémát fedezett fel, ahol egy másik ügyfél csomópontazonosítójának ismerete lehetővé teszi a támadó számára, hogy hozzáadja a csomópontot a saját hátsó hálózatához. Ez egy támadót juttatott volna a VPN belsejébe, ami határozottan rossz forgatókönyv. Mielőtt azonban megkapta volna a pitchforks-t, a sebezhető kódot kevesebb mint négy hónapig telepítették, mielőtt kijavították. E hónap 11-én jelentették privátban, és 12-én rögzítették. A rendszerindításhoz a támadás egy naplóaláírást hagy maga után, amelyet a Tailscale meg tudott keresni, és arra a következtetésre jutott, hogy az elszigetelődött a koncepció bizonyítási tesztje során. Megerősítés céljából ellenőrizheti a saját irányítópultján, hogy nincs-e megosztva a saját hátsó hálózatán kívülről. És bár ez egy csúnya sebezhetőség, jó a Tailscale számára, hogy felfedje. Sok eladó ráült volna erre, és soha nem hozta volna nyilvánosságra.
A A Linux kernel puffertúlcsordulást szenvedett a Netfilter kódjában, ahol a puffer túlcsordulása adatszivárgást és kódvégrehajtást is eredményezhet. A távoli kiaknázáshoz nem vezet út, de a fent hivatkozott e-mail teljes PoC-t tartalmaz a helyi jogosultságok kiterjesztéséhez. És ha a kernel kihasználása a te dolgod, akkor a Google Project Zero igen új írás a témában, minden a null dereferencingről szól.
Ha pedig a Zoho ManageEngine-jét használod, akkor ma éghet a hajad, ha még nem frissített a CVE-2022-47966-ot javító kiadásra. Kutatók a A Horizon3 visszafejtette a javítást, és ráborította a babot erre az RCE-re. Ez egy probléma a SAML egyszeri bejelentkezés megvalósításában, részben a termék részeként becsomagolt rendkívül régi könyvtár miatt. Ez egy nagyon egyszerű kizsákmányolás, ezért ideje újra ellenőrizni a telepítéseket!
- SEO által támogatott tartalom és PR terjesztés. Erősödjön még ma.
- Platoblockchain. Web3 metaverzum intelligencia. Felerősített tudás. Hozzáférés itt.
- Forrás: https://hackaday.com/2023/01/20/this-week-in-security-git-deep-dive-mailchimp-and-spf/
- a
- Képes
- Rólunk
- felett
- igénybe vett
- Fiókok
- tulajdonképpen
- hozzáadott
- cím
- címek
- Hozzáteszi
- igazgatás
- Kaland
- ellen
- ügynökségek
- ügynökség
- Minden termék
- elkülönített
- mindig
- összeg
- és a
- Másik
- várható
- bárhol
- körülbelül
- építészet
- Archív
- körül
- érkezik
- támadás
- attribútumok
- könyvvizsgálat
- szerzők
- elérhető
- vissza
- Rossz
- bbc
- mert
- előtt
- Hisz
- Nagy
- Bit
- BleepingComputer
- Blokk
- Blocks
- BP
- megsértése
- szünet
- ütköző
- puffer túlcsordulás
- üzleti
- hívás
- ami
- eset
- Fogás
- Okoz
- okozott
- ellenőrizze
- ellenőrzése
- azt állította,
- követelések
- világosan
- vásárló
- kód
- Kódolás
- Oszlopok
- elkövetni
- elkötelezett
- Közös
- megkötött
- Következmények
- figyelembe vett
- tartalmaz
- tartalom
- vezérelt
- megtérít
- tudott
- kritikai
- vevő
- műszerfal
- dátum
- adatszivárgás
- december
- mély
- mély merülést
- Védelem
- minden bizonnyal
- telepített
- rendeltetési hely
- Határozzuk meg
- nehéz
- Közzététel
- felfedezett
- dns
- domain
- domainek
- ne
- kétszeresére
- minden
- erőfeszítés
- e-mailek
- Mérnöki
- eszkaláció
- Eter (ETH)
- Még
- pontosan
- példa
- végrehajtás
- Exploit
- Exponálás
- szélső
- rendkívüli módon
- Elesett
- filé
- természet
- vezetéknév
- első
- rögzített
- forma
- formátum
- talált
- Keretrendszer
- ból ből
- front
- Tele
- móka
- funkció
- alap
- Banda
- kap
- megy
- GitHub
- Ad
- Go
- megy
- jó
- Kormány
- kormányzati
- kormányzati szervek
- Csoport
- Garantált
- hack
- Haj
- Kezelés
- Hang
- megtörténik
- tekintettel
- tart
- Hogyan
- HTML
- HTTPS
- végre
- javul
- javulás
- in
- Beleértve
- Bejövő
- példa
- érdekes
- belső
- Nemzetközi
- IP
- IP-cím
- IP-címeket
- izolált
- kérdés
- IT
- ismétlés
- maga
- Tart
- Megöli
- Ismerve
- nagy
- keresztnév
- Tavaly
- legutolsó
- vezető
- Hossz
- könyvtár
- vonal
- összekapcsolt
- listák
- helyi
- található
- elhelyezkedés
- Hosszú
- néz
- készült
- MailChimp
- csinál
- sok
- max
- maximális
- eszközök
- Memory design
- millió
- bánja
- minisztérium
- modern
- módosított
- Hónap
- hónap
- több
- a legtöbb
- többszörös
- negatív
- Új
- hírlevelek
- következő
- csomópont
- csomópontok
- non-profit
- szám
- eltolt
- Régi
- ONE
- nyitva
- nyílt forráskódú
- nyílt forráskódú projektek
- Más
- saját
- rész
- múlt
- ösvény
- PC
- talán
- Adathalászat
- adathalász támadás
- Egyszerű
- Plató
- Platón adatintelligencia
- PlatoData
- PoC
- politika
- potenciálisan
- szép
- Probléma
- Termékek
- Program
- program
- projektek
- megfelelő
- nyilvános
- Nyomja
- meglökött
- Toló
- tesz
- ransomware
- Nyers
- igazi
- Ajánlást
- rekord
- nyilvántartások
- vidék
- összefüggő
- engedje
- Releases
- távoli
- helyébe
- Számolt
- raktár
- kutatók
- eredményez
- királyi
- futás
- azonos
- beolvasás
- Második
- biztonság
- Úgy tűnik,
- elküldés
- súlyos
- készlet
- beállítás
- felépítés
- megosztott
- kellene
- aláírt
- jelentős
- Egyszerű
- óta
- Méret
- kicsi
- So
- Közösség
- Szociális tervezés
- szoftver
- néhány
- valami
- forrás
- forráskód
- terek
- Szponzorált
- kezdet
- nyilatkozatok
- Történet
- tárgy
- feltételezett
- rendszer
- Systems
- Vesz
- Technológia
- megmondja
- Tesztelés
- A
- a világ
- azok
- dolog
- Harmadik
- ezen a héten
- Keresztül
- idő
- Cím
- nak nek
- Ma
- szerszámok
- felső
- ukrán
- Váratlan
- Egyetemek
- frissítve
- frissítés
- us
- használ
- Felhasználók
- rendszerint
- érték
- gyártók
- változat
- látogatott
- VPN
- sérülékenységek
- sebezhetőség
- Sebezhető
- módon
- hét
- Mit
- ami
- míg
- WHO
- lesz
- dolgozó
- világ
- lenne
- ír
- év
- A te
- zephyrnet
- nulla
- Zoho