Kontrola ewlehiyê ya platforma cloudê ya MCS

Kontrola ewlehiyê ya platforma cloudê ya MCS
SkyShip Dusk ji hêla SeerLight

Avakirina her karûbar hewcedarî xebata domdar a li ser ewlehiyê dihewîne. Ewlekarî pêvajoyek domdar e ku analîzek domdar û başkirina ewlehiya hilberê, şopandina nûçeyên di derbarê qelsbûnê de û hêj bêtir vedihewîne. Tevlî kontrolên. Kontrolkirin hem li hundur û hem jî ji hêla pisporên derveyî ve têne kirin, yên ku dikarin bi awayekî radîkal ji ewlehiyê re bibin alîkar ji ber ku ew di projeyê de ne û xwedan hişek vekirî ne.

Gotar li ser vê nêrîna herî rast a pisporên derveyî ye ku alîkariya tîmê Mail.ru Cloud Solutions (MCS) kir ku karûbarê ewr ceribandine, û li ser tiştên ku wan dîtin. Wekî "hêzek derveyî", MCS pargîdaniya Ewlekariya Dîjîtal, ku bi pisporiya xwe ya bilind di derdorên ewlehiya agahdariyê de tê zanîn, hilbijart. Û di vê gotarê de em ê hin qelsiyên balkêş ên ku wekî beşek ji vekolînek derveyî hatine dîtin analîz bikin - da ku hûn gava ku hûn karûbarê xweya ewr biafirînin, ji heman rahê dûr bixin.

Pêşniyar

Mail.ru Cloud Solutions (MCS) platformek ji bo avakirina binesaziya virtual di ewr de ye. Ew IaaS, PaaS, û sûkek wêneyên serîlêdana amade yên ji bo pêşdebiran vedihewîne. Li gorî mîmariya MCS-ê, pêdivî bû ku ewlehiya hilberê li deverên jêrîn kontrol bikin:

  • parastina binesaziya hawîrdora virtualbûnê: hîpervisor, rêkirin, dîwarên agir;
  • parastina binesaziya virtual ya xerîdaran: veqetandina ji hevûdu, tevî torê, torên taybet ên di SDN de;
  • OpenStack û hêmanên wê yên vekirî;
  • S3 ya sêwirana me;
  • IAM: projeyên pir-kirêdar ên bi modelek rola;
  • Vision (vîzyona komputerê): API û qelsî dema ku bi wêneyan re dixebitin;
  • pêwendiya malperê û êrîşên webê yên klasîk;
  • qelsiyên pêkhateyên PaaS;
  • API ya hemî pêkhateyan.

Dibe ku ev her tiştê ku ji bo dîroka pêşdetir pêdivî ye.

Çi xebat hatin kirin û çima hewce bû?

Vekolînek ewlehiyê ji bo destnîşankirina qelsî û xeletiyên mîhengê ye ku dibe sedema derketina daneyên kesane, guheztina agahdariya hesas, an qutkirina hebûna karûbarê.

Di dema xebatê de, ku bi navînî 1-2 mehan dom dike, çavdêr kiryarên êrîşkarên potansiyel dubare dikin û di beşên xerîdar û serverê yên karûbarê hilbijartî de li qelsiyan digerin. Di çarçoveya vekolîna platforma cloudê ya MCS de, armancên jêrîn hatin destnîşankirin:

  1. Di karûbarê de analîzkirina rastkirinê. Qelsiyên di vê hêmanê de dê bibin alîkar ku hûn tavilê têkevin nav hesabên kesên din.
  2. Lêkolîna modela rola û kontrola gihîştina di navbera hesabên cihêreng de. Ji bo êrîşkerek, şiyana gihîştina makîneya virtual ya kesek din armancek xwestek e.
  3. Qelsiyên aliyê xerîdar. XSS / CSRF / CRLF / hwd. Ma gengaz e ku meriv bi girêdanên xirab êrîşî bikarhênerên din bike?
  4. Qelsiyên aliyê serverê: RCE û her cûre derzî (SQL / XXE / SSRF û hwd.). Zehfiyên serverê bi gelemperî dijwartir in ku werin dîtin, lê ew di yek carî de dibin sedema lihevkirina gelek bikarhêneran.
  5. Analîzkirina veqetandina beşa bikarhêner di asta torê de. Ji bo êrîşkerek, nebûna îzolasyonê rûyê êrîşê li dijî bikarhênerên din pir zêde dike.
  6. Analîza mantiqa karsaziyê. Ma gengaz e ku meriv karsaziyan bixapîne û makîneyên virtual belaş biafirîne?

Di vê projeyê de, kar li gorî modela "Grey-box" hate meşandin: çavdêran bi îmtiyazên bikarhênerên asayî re bi karûbarê re têkilî danîbûn, lê qismî xwedan koda çavkaniyê ya API-yê bûn û fersend hebûn ku hûrguliyan bi pêşdebiran re zelal bikin. Ev bi gelemperî modela xebatê ya herî rehet, û di heman demê de pir realîst e: agahdariya navxweyî hîn jî ji hêla êrîşker ve dikare were berhev kirin, ew tenê meseleyek dem e.

Qelsiyên dîtin

Berî ku çavdêr dest bi şandina barkêşên cihêreng (bara ku ji bo pêkanîna êrîşê tê bikar anîn) bişîne cîhên bêserûber, pêdivî ye ku meriv fêm bike ka tişt çawa dixebitin û çi fonksiyon têne peyda kirin. Dibe ku xuya bibe ku ev xebatek bêkêr e, ji ber ku li piraniya deverên lêkolînkirî dê qelsî nebin. Lê tenê têgihîştina strukturên serîlêdanê û mantiqa xebata wê dê gengaz bike ku vektorên êrîşê yên herî tevlihev bibînin.

Girîng e ku meriv cihên ku gumanbar xuya dikin an jî bi rengekî ji yên din pir cûda ne bibînin. Û yekem qelsiya xeternak bi vî rengî hate dîtin.

IDOR

Qelsiyên IDOR (Referansa Rasterê ya Neewle) yek ji wan qelsiyên herî gelemperî ne di mantiqa karsaziyê de, ku dihêle yek an yekî din bigihîje tiştên ku gihîştina wan bi rastî destûr nayê dayîn. Qelsiyên IDOR îhtîmala bidestxistina agahdariya li ser bikarhênerek bi dereceyên cihêreng ên krîtîk diafirîne.

Yek ji vebijarkên IDOR-ê ev e ku meriv bi hêmanên pergalê (bikarhêner, hesabên bankê, tiştên di selika kirînê de) çalakiyan bi manîpulekirina nasnameyên gihîştina van tiştan pêk bîne. Ev dibe sedema encamên herî nediyar. Mînakî, îhtîmala guheztina hesabê şanderê drav, bi navgîniya ku hûn dikarin wan ji bikarhênerên din bidizin.

Di doza MCS de, çavdêran tenê qelsiyek IDOR-ê ku bi nasnameyên ne-ewle ve girêdayî ye vedîtin. Di hesabê kesane yê bikarhêner de, nasnameyên UUID ji bo gihîştina her tiştan hatine bikar anîn, ku wekî pisporên ewlehiyê dibêjin, pir neewle xuya dikirin (ango, ji êrîşên hêza hov hatine parastin). Lê ji bo hin saziyan, hate kifş kirin ku hejmarên pêşbînîkirî yên birêkûpêk têne bikar anîn da ku agahdariya li ser bikarhênerên serîlêdanê bistînin. Ez difikirim ku hûn dikarin texmîn bikin ku gengaz bû ku hûn nasnameya bikarhêner bi yek biguhezînin, daxwazê ​​ji nû ve bişînin û bi vî rengî agahdariya ACL (lîsteya kontrolkirina gihîştinê, rêzikên gihîştina daneyê ji bo pêvajoyê û bikarhêneran) bistînin.

Sextekirina Daxwaza Serverê (SSRF)

Tiştê baş di derheqê hilberên OpenSource de ev e ku hejmareke mezin ji foruman bi raveyên teknîkî yên hûrgulî yên pirsgirêkên ku derdikevin hene û, heke hûn bextewar bin, ravekirina çareseriyê heye. Lê ev drav xwedan aliyekî din e: qelsiyên naskirî jî bi hûrgulî têne vegotin. Mînakî, li ser foruma OpenStack ravekirinên hêja yên qelsbûnê hene [XSS] и [SSRF], ku ji ber hin sedeman kes li ser rastkirinê lez nake.

Karbidestek hevpar a serîlêdanan ev e ku bikarhêner ji serverê re girêdanek bişîne, ku server li ser bikirtîne (mînakî, dakêşandina wêneyek ji çavkaniyek diyarkirî). Ger amûrên ewlehiyê zencîreyan bixwe an bersivên ku ji serverê ji bikarhêneran re vedigerin fîltre nekin, fonksiyonek weha dikare bi hêsanî ji hêla êrîşkaran ve were bikar anîn.

Qelsiyên SSRF dikarin pêşveçûna êrîşek pir pêşde bibin. Êrîşkarek dikare bigire:

  • gihîştina sînorkirî ya tora herêmî ya êrîşkirî, mînakî, tenê bi hin beşên torê û bi karanîna hin protokolek;
  • gihandina tam a tora herêmî, ger daxistina ji asta serîlêdanê berbi asta veguheztinê mimkun be û, wekî encam, rêveberiya barkirina tam di asta serîlêdanê de;
  • gihîştina xwendina pelên herêmî yên li ser serverê (heke pelê: /// scheme piştgirî be);
  • û pir zêde.

Zelaliyek SSRF ji mêj ve di OpenStack-ê de tê zanîn, ku di xwezayê de "kor" e: gava ku hûn bi serverê re têkilî daynin, hûn bersivek jê nagirin, lê hûn li gorî encama daxwaznameyê celebên xeletî / dereng distînin. . Li ser vê yekê, hûn dikarin li ser mêvandarên li ser tora hundurîn şanek portê bikin, digel hemî encamên paşerojê yên ku divê kêm neyên hesibandin. Mînakî, hilberek dibe ku xwedan API-ya paşîn a ku tenê ji tora pargîdanî tê gihîştin hebe. Bi belgekirinê (ji hundurên xwe ji bîr nekin), êrîşkar dikare SSRF bikar bîne da ku bigihîje rêbazên hundur. Mînakî, heke we bi rengekî karîbû navnîşek nêzikî URL-yên bikêr bidest bixin, wê hingê hûn dikarin bi karanîna SSRF-ê di nav wan de derbas bibin û daxwazek bicîh bînin - bi nisbî dipeyivin, drav ji hesabek hesab veguhezînin an sînoran biguhezînin.

Ev ne cara yekem e ku di OpenStack-ê de xisarek SSRF tê dîtin. Di paşerojê de, gengaz bû ku wêneyên VM ISO ji girêdanek rasterast dakêşin, ku ev jî bû sedema encamên heman rengî. Niha ev taybetmendî ji OpenStack hatiye rakirin. Xuya ye, civatê ev çareserî ya herî hêsan û pêbawer a pirsgirêkê dihesiband.

Û di ev Rapora gelemperî ya ji karûbarê HackerOne (h1) peyda dibe, îstismarkirina SSRF-ya ku êdî kor e bi şiyana xwendina metadaneyên mînakî rê li ber gihandina Root-ê li tevahiya binesaziya Shopify vedike.

Di MCS de, qelsiyên SSRF li du cihan bi fonksiyonên wekhev hatin keşif kirin, lê ji ber dîwarên agir û parastinên din îstismarkirina wan hema hema ne gengaz bû. Bi rengekî din, tîmê MCS vê pirsgirêkê bi her awayî çareser kir, bêyî ku li benda civakê bimîne.

XSS li şûna barkirina şêlên

Tevî bi sedan lêkolînên hatine nivîsandin, sal bi sal êrîşa XSS (nivîsandina navmalperê) hîn jî herî zêde ye gelek caran tê dîtin qelsbûna malperê (an êriş?).

Barkirina pelan ji bo her lêkolînerê ewlehiyê cîhek bijare ye. Bi gelemperî derdikeve holê ku hûn dikarin skrîptek kêfî (asp/jsp/php) bar bikin û fermanên OS-ê, di termînolojiya pentesters de - "barkirina şêlê" de bicîh bikin. Lê populerbûna qelsiyên weha di her du aliyan de dixebite: ew têne bîra wan û li dijî wan derman têne pêşve xistin, ji ber vê yekê di van demên dawî de îhtîmala "barkirina kelekek" ber bi sifirê ve diçe.

Tîma êrîşkar (ku ji hêla Ewlekariya Dîjîtal ve tê temsîl kirin) bi şens bû. OK, di MCS-ê de li ser milê serverê naveroka pelên dakêşandî hatin kontrol kirin, tenê wêne hatin destûr kirin. Lê SVG jî wêneyek e. Wêneyên SVG çawa dikarin xeternak bin? Ji ber ku hûn dikarin perçeyên JavaScript-ê di nav wan de bicîh bikin!

Derket holê ku pelên dakêşandî ji hemî bikarhênerên karûbarê MCS re peyda dibin, ku tê vê wateyê ku gengaz e ku êrişî bikarhênerên din ên ewr, ango rêvebiran, bikin.

Kontrola ewlehiyê ya platforma cloudê ya MCS
Mînakek êrîşa XSS li ser forma têketinê ya phishing

Nimûneyên karanîna êrîşa XSS:

  • Ma çima hewl didin ku danişînek bidizin (nemaze ji ber ku naha çerezên HTTP-Tenê li her derê ne, ji diziyê bi karanîna nivîsarên js têne parastin), heke skrîpta barkirî tavilê bigihîje API-ya çavkaniyê? Di vê rewşê de, payload dikare daxwazên XHR bikar bîne da ku mîhengê serverê biguhezîne, mînakî, mifteya giştî ya êrîşkar SSH zêde bike û gihîştina SSH-ê li serverê bigire.
  • Ger sîyaseta CSP (sîyaseta parastina naverokê) derzîlêdana JavaScriptê qedexe bike, êrîşkar dikare bêyî wê derbas bibe. Bi karanîna HTML-a paqij, formek têketinê ya sexte ji malperê re biafirînin û bi vê phishing-a pêşkeftî şîfreya rêveberê bidizin: rûpela phishing ji bo bikarhêner di heman URL-ê de diqede, û ji bikarhêner re zehmettir e ku wê bibîne.
  • Di dawiyê de, êrîşkar dikare amade bike xerîdar DoS - Cookies ji 4 KB mezintir saz bikin. Bikarhêner tenê pêdivî ye ku yek carî zencîreyê veke, û heya ku bikarhêner bifikire ku bi taybetî gerokê paqij bike, tevaya malper negihîştî dibe: di pirraniya bûyeran de, servera malperê dê qebûl kirina xerîdarek weha red bike.

Ka em li mînakek XSS-ya din a naskirî binêrin, vê carê bi karûbarek jîrtir. Karûbarê MCS dihêle hûn mîhengên firewall di nav koman de bihev bikin. Navê komê li cihê ku XSS hate tespît kirin bû. Taybetmendiya wê ev bû ku vektor tavilê nehate dest pê kirin, ne dema ku navnîşa qaîdeyan temaşe dike, lê dema ku komek jêbirin:

Kontrola ewlehiyê ya platforma cloudê ya MCS

Ango, senaryo wiha derketiye holê: êrîşkar qaîdeyek dîwarê dîwarê bi navê "bar" diafirîne, rêveber piştî demekê pê dihese û pêvajoya jêbirinê dide destpêkirin. Û li vir e ku JS-ya xirabkar dixebite.

Ji bo pêşdebirên MCS, ji bo parastina li dijî XSS di wêneyên SVG yên dakêşandî de (heke ew nekarin dev jê berdin), tîmê Ewlekariya Dîjîtal pêşniyar kir:

  • Pelên ku ji hêla bikarhêneran ve hatine barkirin li ser domanek cihêreng ku ti têkiliya wê bi "cookies" re tune ye bi cîh bikin. Skrîpt dê di çarçoveyek domainek cûda de were darve kirin û dê ji MCS re xetereyek çênebe.
  • Di bersiva HTTP ya serverê de, sernavê "Content-disposition: attachment" bişînin. Dê pelan ji hêla gerokê ve werin dakêşandin û neyên darve kirin.

Wekî din, naha gelek awayên ku ji pêşdebiran re peyda dibin hene ku xetereyên îstismarkirina XSS kêm bikin:

  • Bi karanîna ala "Tenê HTTP", hûn dikarin sernavên "Cookies" yên danişînê ji JavaScripta xerab re negihijin;
  • Siyaseta CSP-ê rast bicîh anîn dê ji bo êrîşkar bikar anîna XSS pir dijwartir bike;
  • motorên şablonê yên nûjen ên wekî Angular an React berî ku ew ji geroka bikarhêner re derxînin daneyên bikarhêner bixweber paqij dikin.

Qelsiyên erêkirina du-faktorî

Ji bo baştirkirina ewlehiya hesabê, bikarhêner her gav têne şîret kirin ku 2FA (verastkirina du-faktor) çalak bikin. Bi rastî, ev rêgezek bi bandor e ku rê li ber êrîşkerek bigire ku bigihîje karûbarek heke pêbaweriyên bikarhêner têkçûne.

Lê gelo karanîna faktorek rastkirina duyemîn her gav ewlehiya hesabê garantî dike? Di pêkanîna 2FA de pirsgirêkên ewlehiyê yên jêrîn hene:

  • Lêgerîna hovane ya koda OTP (kodên yek-car). Tevî hêsaniya operasyonê, xeletiyên wekî nebûna parastinê li dijî hêza hovane ya OTP jî ji hêla pargîdaniyên mezin ve têne dîtin: doza Slack, doza Facebook.
  • Algorîtmaya nifşa qels, mînakî şiyana pêşbînkirina koda paşîn.
  • Çewtiyên mantiqî, wek kapasîteya ku hûn OTP-ya kesek din li ser têlefona xwe bixwazin, bi vî rengî ji Shopify.

Di doza MCS de, 2FA li ser bingeha Google Authenticator û tête bicîh kirin duo. Protokol bixwe jixwe dem-ceribandine, lê pêkanîna verastkirina kodê li aliyê serîlêdanê hêjayî kontrolê ye.

MCS 2FA li çend cihan tê bikar anîn:

  • Dema ku bikarhêner piştrast dike. Parastina li dijî hêza hov heye: bikarhêner tenê çend hewildan heye ku şîfreyek yek-car têxe, paşê têketin ji bo demekê tê asteng kirin. Ev îhtîmala hilbijartina hêza hov a OTP asteng dike.
  • Dema ku ji bo pêkanîna 2FA-yê kodên paşvekêşana negirêdayî çêdikin, û hem jî wê neçalak dikin. Li vir, ti parastina hêza hov nehat bicîh kirin, ku ev gengaz kir, heke we şîfreyek ji bo hesab û danişînek çalak hebe, hûn kodên paşvekêşanê ji nû ve nûve bikin an 2FA bi tevahî neçalak bikin.

Bihesibînin ku kodên paşvekêşanê di heman rêza nirxên rêzikê de wekî yên ku ji hêla serîlêdana OTP ve hatî çêkirin de cih digirin, şansê dîtina kodê di demek kurt de pir zêde bû.

Kontrola ewlehiyê ya platforma cloudê ya MCS
Pêvajoya hilbijartina OTP-ê ji bo neçalakkirina 2FA bi karanîna amûra "Burp: Intruder".

Di encama

Bi tevahî, MCS wekî hilberek ewledar xuya dike. Di dema venêrînê de, tîmê pentestê nikarîbû bigihîje VM-yên xerîdar û daneyên wan, û qelsiyên ku hatin dîtin zû ji hêla tîmê MCS ve hatin rast kirin.

Lê di vir de girîng e ku em zanibin ku ewlehî karek berdewam e. Karûbar ne statîk in, ew bi berdewamî pêşve diçin. Û ne gengaz e ku meriv hilberek bi tevahî bêyî qelsî pêş bixe. Lê hûn dikarin wan di wextê de bibînin û şansê dûbarebûna wan kêm bikin.

Naha hemî qelsiyên navborî di MCS de jixwe hatine rast kirin. Û ji bo ku hejmara yên nû herî kêm bihêle û jiyana wan kêm bike, tîmê platformê vê yekê berdewam dike:

Source: www.habr.com

Add a comment