A múlt héten a felhasználói felület fejlesztéséhez, devopshoz, fájlkezeléshez és egyebekhez szoftvereket és szolgáltatásokat értékesítő Progress Software Corporation figyelmeztette ügyfeleit MOVEitTransfer és ezzel kapcsolatos MOVEit Cloud termékek a kritikus sebezhetőség szinkronizált CVE-2023 34362-.
Ahogy a neve is sugallja, a MOVEit Transfer egy olyan rendszer, amely megkönnyíti a fájlok tárolását és megosztását egy csapaton, egy részlegen, egy vállalaton vagy akár egy ellátási láncon belül.
Saját saját szavak, "A MOVEit biztonságos együttműködést és érzékeny adatok automatizált fájlátvitelét, valamint fejlett munkafolyamat-automatizálási képességeket biztosít szkriptelés nélkül."
Sajnos a MOVEit webalapú kezelőfelületéről, amely egyszerűvé teszi a fájlok megosztását és kezelését pusztán webböngészővel (ez a folyamat általában kevésbé hajlamos a rosszul irányított vagy „elveszett” fájlokra, mint az e-mailben történő megosztás), kiderült, hogy SQL-t tartalmaz. injekciós sebezhetőség.
Az SQL injekciók magyarázata
Web-alapú SQL-befecskendezési hibák lépnek fel, amikor egy HTTP-kérés elküldésre kerül egy webszerverre nem biztonságosan konvertálódik lekérdezési paranccsá, amelyet ezután kiadnak a szerver által magának adatbázis-keresést végez annak érdekében, hogy kitalálja, milyen HTTP-választ kell létrehoznia.
Például egy weboldalról indított adatbázis-keresés a böngészője által kért URL-ként a következőképpen néz ki:
https://search.example.com/?type=file&name=duck
A lekérdezés szövege duck
ezt követően ki lehet bontani az URL-ben található név paraméterből, átalakítani adatbázis-lekérdezés szintaxissá, és összefűzni egy parancsot, amelyet elküldhet az adatbázis-kiszolgálónak.
Ha a háttéradatokat egy SQL-adatbázisban tárolják, akkor a webszerver az alábbi URL-címhez hasonló SQL-parancsokká alakíthatja át.
A %
karakterek hozzáadva a szöveghez duck
Ez azt jelenti, hogy a keresett kifejezés bárhol megjelenhet a letöltött fájlnévben, és az egyes végeken lévő egyetlen idézőjel karakterek hozzáadódnak jelölőkként az SQL szöveges karakterlánc jelölésére:
SELECT fájlnév FROM filesdb WHERE név MINT '%duck%'
A lekérdezésből visszaérkező adatok ezután szépen formázhatók, HTML-be konvertálhatók, és HTTP-válaszként visszaküldhetők a böngészőnek, így talán a megfelelő fájlok kattintható listáját kaphatja meg, amelyet letölthet.
Természetesen a webszervernek nagyon óvatosnak kell lennie a keresési kifejezésként beküldött fájlnevekkel, ha egy rosszindulatú felhasználó ilyen URL-t hoz létre és kér:
https://search.example.com/?type=file&name=duck';DROP table filesdb;--
Ha ezt a keresési kifejezést vakon lekérdezési karakterláncsá alakították át, akkor előfordulhat, hogy ráveheti a webszervert, hogy egy ehhez hasonló parancsot küldjön az SQL szervernek:
SELECT fájlnév FROM filesdb WHERE név LIKE '%kacsa';DROP TABLE filesdb;--%'
Mert a pontosvessző (;
) utasításelválasztóként működik az SQL-ben, ez az egysoros parancs valójában ugyanaz, mint három egymást követő parancs küldése:
SELECT fájlnév FROM filesdb WHERE név LIKE '%kacsa' -- megegyezik a duck végződésű nevekkel DROP TABLE filesdb -- a teljes adatbázis törlése --%' -- megjegyzés, nem csinál semmit
Alattomosan, mert minden után --
Az SQL programozói megjegyzésként elveti, ez a három sor megegyezik a következővel:
SELECT fájlnév FROM filesdb WHERE név LIKE '%kacsa' DROP TABLE filedb
Visszakapja az adatbázisban található összes fájlnév listáját, amely a karakterláncra végződik duck
(a speciális SQL karakter %
a keresőkifejezés elején azt jelenti, hogy „addig bárminek megfelel”…
…de te leszel az utolsó, aki bármi hasznosat kihozhat belőle filesdb
adatbázist, mert a csaló keresési kifejezés követi a keresést az SQL paranccsal a teljes adatbázis törléséhez.
Kis Bobby asztalok
Ha hallottál már rendszergazdákat vagy kódolókat viccelődni Kis Bobby asztalok, ez azért van így, mert ez a fajta SQL-injektálás egy XKCD rajzfilm vissza 2007-ben:
Ahogy a karikatúra az utolsó képkockában zárul, valóban meg kell tisztítani az adatbázis bemeneteit, ami azt jelenti, hogy nagyon ügyelni kell arra, hogy a keresőkifejezést beküldő személy ne szabályozza, hogyan értelmezze a keresési parancsot az érintett háttérkiszolgálók.
Láthatja, miért nevezik ezt a fajta trükköt injekciós támadásnak: a fenti példákban a rosszindulatú keresési kifejezések egy további SQL-parancs beszúrását okozzák a kérés kezelésébe.
Valójában mindkét példa két beszúrt parancsot tartalmaz, amelyek az alattomosan beszúrt „közeli idézet” karaktert követik a keresési karakterlánc korai befejezése érdekében. Az első extra parancs a destruktív DROP TABLE
utasítás. A második egy „megjegyzés parancs”, amely a sor többi részét figyelmen kívül hagyja, így ravaszul felemészti a zárójelet. %'
a kiszolgáló parancsgenerátora által generált karakterek, amelyek egyébként szintaktikai hibát okoztak volna, és megakadályozták volna a beinjektált DROP TABLE
parancsot a munkából.
Jó hír és rossz hír
A jó hír ebben az esetben az, hogy a Progress az összes támogatott MOVEit verzióját javította, a felhő alapú szolgáltatásával együtt, amint tudomást szerzett a sebezhetőségről.
Tehát, ha a felhőverziót használja, akkor mostantól automatikusan naprakész, és ha a MOVEit-et saját hálózatán futtatja, reméljük, hogy már javította.
A rossz hír az, hogy ez a sebezhetőség egy nulladik nap volt, ami azt jelenti, hogy a Haladás értesült róla, mert a Rosszfiúk már kihasználták, nem pedig azelőtt, hogy rájöttek volna, hogyan kell ezt megtenni.
Más szóval, mire a saját kiszolgálóit javította (vagy a Progress javította a felhőszolgáltatását), a szélhámosok már befecskendeztek rosszindulatú parancsokat a MOVEit SQL háttéradatbázisaiba, számos lehetséges kimenetelsel:
- Meglévő adatok törlése. Mint fentebb látható, az SQL injekciós támadás klasszikus példája a nagyszabású adatmegsemmisítés.
- Meglévő adatok kiszűrése. Ahelyett, hogy eldobnák az SQL-táblákat, a támadók saját lekérdezéseket szúrhatnak be, így nemcsak a belső adatbázisok szerkezetét tanulhatják meg, hanem a leglédúsabb részeiket is kivonhatják és ellophatják.
- Meglévő adatok módosítása. A finomabb támadók úgy dönthetnek, hogy megsértik vagy megzavarják az Ön adatait ahelyett, hogy ellopnák (vagy éppúgy), hogy azokat ellopnák.
- Új fájlok telepítése, beleértve a rosszindulatú programokat is. A támadók SQL-parancsokat fecskendezhetnek be, amelyek viszont külső rendszerparancsokat indítanak el, így tetszőleges távoli kódvégrehajtást érhetnek el a hálózaton belül.
A támadók egy csoportja, állítólagos A Microsoft által, hogy a hírhedt Clop ransomware banda legyen (vagy kapcsolatban álljon vele), nyilvánvalóan ezt a sebezhetőséget használta az úgynevezett ún. webhéjak az érintett szervereken.
Ha nem ismeri a webshelleket, olvassa el a mi oldalunkat egyszerű-angol magyarázó amit a zavaró HAFNIUM-támadások idején tettünk közzé, még 2021 márciusában:
Webshell veszély
Egyszerűen fogalmazva, a webshell-ek lehetőséget biztosítanak a támadóknak, akik új fájlokat adhatnak hozzá a webszerverhez, hogy később visszatérjenek, szabadidőben betörjenek, és a csak írási hozzáférést teljes távirányítóvá alakítsák.
A webshellek azért működnek, mert sok webszerver végrehajtható szkriptként kezel bizonyos fájlokat (amelyeket általában a könyvtár vagy a kiterjesztés határozza meg) futtatható szkriptként. a visszaküldéshez használt oldal létrehozásához, nem pedig a válaszban használandó tényleges tartalom.
Például a Microsoft IIS (internet információs szervere) általában úgy van beállítva, hogy ha egy webböngésző egy fájlt kér, pl. hello.html
, akkor a fájl nyers, módosítatlan tartalma beolvassa és visszaküldi a böngészőnek.
Tehát, ha van benne rosszindulatú program hello.html
fájlt, akkor a kiszolgálóra böngésző személyre lesz hatással, nem magára a szerverre.
De ha a fájlt hívják, mondjuk hello.aspx
(ahol az ASP az önleíró kifejezés rövidítése Aktív szerver oldalak), akkor ezt a fájlt a rendszer a kiszolgáló által végrehajtandó parancsfájlként kezeli.
A fájl programként való futtatása ahelyett, hogy egyszerűen csak adatként olvasná be, a kimenetet generálja, amelyet válaszként kell elküldeni.
Más szóval, ha van benne rosszindulatú program hello.aspx
fájlt, akkor az közvetlenül magát a szervert fogja érinteni, nem az arra böngésző személyt.
Röviden, egy webshell-fájl eldobása a parancsinjektálási támadás mellékhatásaként azt jelenti, hogy a támadók később visszatérhetnek, és felkeresik az adott webshell fájlnevének megfelelő URL-t…
…a rosszindulatú programjaikat közvetlenül a hálózaton belül futtathatják, és semmi gyanúsabbat nem használnak, mint egy egyszerű, hétköznapi webböngésző által küldött HTTP-kérés.
Sőt, egyes webshellek csak egy sor rosszindulatú szkriptből állnak, például egyetlen parancsból, amely azt mondja: „Szöveg lekérése egy adott HTTP-fejlécből a kérésben, és futtassa rendszerparancsként”.
Ez általános célú parancs- és vezérlési hozzáférést biztosít minden támadónak, aki ismeri a megfelelő URL-címet, amelyet meg kell látogatni, és a megfelelő HTTP-fejlécet használja a rogue parancs kézbesítéséhez.
Mit kell tenni?
- Ha Ön MOVEit felhasználó, győződjön meg arról, hogy a hálózaton lévő szoftver összes példánya javítva van.
- Ha most nem tudod foltozni, kapcsolja ki a web alapú (HTTP és HTTP) interfészt a MOVEit szerverein, amíg nem tudja. Úgy tűnik, ez a sérülékenység csak a MOVEit webes felületén keresztül érhető el, más elérési útvonalakon, például SFTP-n nem.
- Keresés a naplókban újonnan hozzáadott webszerver-fájlok, újonnan létrehozott felhasználói fiókok és váratlanul nagy adatletöltések esetén. A Progress-nek van egy listája a keresendő helyekről, valamint a fájlnevekről és a keresendő helyekről.
- Ha programozó vagy, fertőtlenítse a bemeneteit.
- Ha Ön SQL programozó, paraméterezett lekérdezéseket használt, ahelyett, hogy a kérést küldő személy által vezérelt karaktereket tartalmazó lekérdezési parancsokat generált volna.
Sok, ha nem a legtöbb webshell-alapú támadásban, amelyet eddig vizsgáltak, A haladás azt sugallja hogy valószínűleg talál egy szélhámos webshell fájlt human2.aspx
, talán újonnan létrehozott rosszindulatú fájlokkal együtt a .cmdline
kiterjesztés.
(A Sophos termékek felismerik és blokkolják az ismert webshell-fájlokat, mint Troj/WebShel-GO, akár hívják human2.aspx
vagy nem.)
Ne feledje azonban, hogy ha más támadók tudtak erről a nulladik napról a javítás megjelenése előtt, akkor előfordulhat, hogy másféle, és talán finomabb parancsokat adtak be, amelyeket most nem lehet észlelni a hátrahagyott rosszindulatú programok keresésével vagy kereséssel. ismert fájlnevekhez, amelyek megjelenhetnek a naplókban.
Ne felejtse el általánosságban átnézni hozzáférési naplóit, és ha nincs ideje saját maga megtenni, ne féljen kérjen segítséget!
Tudjon meg többet Sophos felügyelt észlelés és válasz:
24 órás fenyegetésvadászat, észlelés és reagálás ▶
Kevés idő vagy szakértelem a kiberbiztonsági fenyegetésekre való reagáláshoz? Aggódik, hogy a kiberbiztonság végül elvonja a figyelmét az összes többi tennivalóról?
- SEO által támogatott tartalom és PR terjesztés. Erősödjön még ma.
- PlatoAiStream. Web3 adatintelligencia. Felerősített tudás. Hozzáférés itt.
- A jövő pénzverése – Adryenn Ashley. Hozzáférés itt.
- Részvények vásárlása és eladása PRE-IPO társaságokban a PREIPO® segítségével. Hozzáférés itt.
- Forrás: https://nakedsecurity.sophos.com/2023/06/05/moveit-zero-day-exploit-used-by-data-breach-gangs-the-how-the-why-and-what-to-do/
- :van
- :is
- :nem
- :ahol
- $ UP
- 1
- 15%
- 2021
- a
- Képes
- Rólunk
- erről
- felett
- Abszolút
- hozzáférés
- Fiókok
- elérése
- cselekmények
- tényleges
- tulajdonképpen
- hozzá
- hozzáadott
- További
- fejlett
- érint
- fél
- Után
- Minden termék
- lehetővé
- mentén
- már
- Is
- an
- és a
- bármilyen
- bármi
- bárhol
- megjelenik
- VANNAK
- AS
- At
- támadás
- Támadások
- szerző
- auto
- Automatizált
- automatikusan
- Automatizálás
- tudatában van
- vissza
- háttér
- background-image
- Rossz
- BE
- lett
- mert
- óta
- előtt
- mögött
- lent
- vakon
- Blokk
- Londoni rendőr
- határ
- mindkét
- Alsó
- megsértése
- szünet
- böngésző
- Legelészés
- bogarak
- de
- by
- hívott
- jött
- TUD
- képességek
- ami
- óvatos
- rajzfilm
- eset
- Okoz
- okozott
- okai
- Központ
- bizonyos
- lánc
- karakter
- karakter
- klasszikus
- felhő
- kód
- együttműködés
- szín
- hogyan
- jön
- megjegyzés
- vállalat
- teljes
- összefüggő
- folyamatos
- figyelembe vett
- konstrukció
- tartalom
- ellenőrzés
- vezérelt
- megtérít
- átalakított
- VÁLLALAT
- Megfelelő
- tudott
- tanfolyam
- terjed
- teremt
- készítette
- Crooks
- Ügyfelek
- Kiberbiztonság
- dátum
- adatok megsértése
- adatbázis
- adatbázisok
- dönt
- átadó
- osztály
- észlelt
- Érzékelés
- eltökélt
- Fejlesztés
- DevOps
- különböző
- közvetlenül
- kijelző
- megszakítása
- do
- nem
- ne
- letöltés
- letöltések
- Csepp
- Csepegés
- szinkronizált
- minden
- Korai
- könnyű
- végén
- hiba
- Még
- EVER
- mindennapi
- példa
- példák
- kivégez
- végrehajtás
- létező
- szakvélemény
- Exploit
- kitett
- kiterjesztés
- külső
- külön-
- tény
- ismerős
- messze
- mintás
- filé
- Fájlok
- Találjon
- vezetéknév
- következik
- következő
- A
- talált
- KERET
- ból ből
- front
- Front end
- Banda
- általános
- Általános rendeltetésű
- általában
- generál
- generált
- generáló
- generátor
- kap
- ad
- Giving
- jó
- nagy
- Csoport
- kellett
- Kezelés
- Legyen
- hallott
- magasság
- remény
- lebeg
- Hogyan
- How To
- azonban
- HTML
- http
- HTTPS
- Vadászat
- if
- Iis
- in
- Beleértve
- aljas
- információ
- injekciót
- bemenet
- helyette
- Felület
- interfészek
- belső
- Internet
- bele
- vonja
- részt
- Kiadott
- IT
- ITS
- maga
- éppen
- csak egy
- ismert
- nagy
- nagyarányú
- keresztnév
- a későbbiekben
- indít
- tanulás
- balra
- kevesebb
- mint
- vonal
- vonalak
- Lista
- MEGJELENÉS
- lookup
- készült
- csinál
- KÉSZÍT
- Gyártás
- malware
- kezelése
- sikerült
- vezetés
- sok
- március
- Margó
- egyező
- max-width
- Lehet..
- jelent
- jelenti
- eszközök
- microsoft
- esetleg
- több
- a legtöbb
- név
- Nevezett
- nevek
- Szükség
- igények
- hálózat
- Új
- újonnan
- hír
- normális
- semmi
- Most
- of
- kedvezmény
- on
- egyszer
- ONE
- csak
- or
- érdekében
- Más
- másképp
- mi
- ki
- eredmények
- teljesítmény
- saját
- oldal
- paraméter
- alkatrészek
- Tapasz
- Paul
- talán
- person
- Helyek
- Plató
- Platón adatintelligencia
- PlatoData
- pozíció
- lehetséges
- Hozzászólások
- valószínűleg
- folyamat
- Termékek
- Program
- Programozó
- Haladás
- ad
- biztosít
- közzétett
- tesz
- lekérdezések
- idézet
- hatótávolság
- ransomware
- Inkább
- Nyers
- Olvass
- Olvasás
- tényleg
- összefüggő
- relatív
- távoli
- válasz
- kérni
- kért
- kéri
- válasz
- REST
- Kritika
- jobb
- futás
- futás
- azonos
- azt mondják
- azt mondja,
- letapogatás
- szkriptek
- Keresés
- keres
- Második
- biztonság
- lát
- Sells
- küld
- elküldés
- érzékeny
- küldött
- szolgáltatás
- Szolgáltatások
- Megosztás
- megosztás
- rövid
- előadás
- mutatott
- egyszerűen
- egyetlen
- So
- eddig
- szoftver
- szilárd
- néhány
- speciális
- különleges
- SQL
- SQL Injection
- kezdet
- nyilatkozat
- tárolni
- memorizált
- Húr
- struktúra
- beküldése
- benyújtott
- ilyen
- javasolja,
- kínálat
- ellátási lánc
- Támogatott
- gyanús
- SVG
- szintaxis
- rendszer
- táblázat
- Vesz
- csapat
- kifejezés
- feltételek
- mint
- hogy
- A
- azok
- Őket
- akkor
- Ott.
- Ezek
- ők
- dolgok
- ezt
- fenyegetés
- három
- egész
- idő
- nak nek
- felső
- átruházás
- transzferek
- átmenet
- átlátszó
- kezelésére
- váltott
- FORDULAT
- Fordult
- kettő
- -ig
- up-to-date
- URL
- használ
- használt
- használó
- felhasználói felület
- segítségével
- rendszerint
- változat
- keresztül
- Látogat
- sebezhetőség
- volt
- Út..
- we
- háló
- webböngésző
- webszerver
- web-alapú
- hét
- JÓL
- voltak
- Mit
- amikor
- vajon
- ami
- WHO
- egész
- miért
- lesz
- val vel
- nélkül
- szavak
- Munka
- dolgozzanak ki
- munkafolyamat
- Munkafolyamat automatizálás
- dolgozó
- aggódik
- lenne
- te
- A te
- magad
- zephyrnet