Reverse Tab Nabbing
Maelezo
Katika hali ambapo mshambuliaji anaweza kudhibiti hoja ya href
ya lebo ya <a
na sifa ya target="_blank" rel="opener"
ambayo itabonyezwa na mwathirika, mshambuliaji anaweza kuielekeza kiunga hiki kwenye wavuti chini ya udhibiti wake (wavuti mbaya). Kisha, mara tu mwathirika anapobonyeza kiunga na kufikia wavuti ya mshambuliaji, wavuti hii mbaya itaweza kudhibiti ukurasa asili kupitia kitu cha javascript window.opener
.
Ikiwa ukurasa hauna rel="opener"
lakini una target="_blank"
na hauna rel="noopener"
pia inaweza kuwa na udhaifu.
Njia ya kawaida ya kutumia tabia hii ni kubadilisha eneo la wavuti asili kupitia window.opener.location = https://attacker.com/victim.html
kwenda kwenye wavuti inayodhibitiwa na mshambuliaji ambayo inafanana na ile asili, ili iweze kuiga fomu ya kuingia ya wavuti asili na kuomba sifa za mtumiaji.
Hata hivyo, kumbuka kwamba sasa mshambuliaji anaweza kudhibiti kitu cha dirisha cha wavuti asili anaweza kukitumia kwa njia nyingine kufanya mashambulizi ya siri (labda kwa kubadilisha matukio ya javascript ili kutoa habari kwa seva inayodhibitiwa na yeye?)
Muhtasari
Na kiunga cha nyuma
Kiunga kati ya kurasa ya mzazi na mtoto wakati sifa ya kuzuia haijatumika:
Bila kiunga cha nyuma
Kiunga kati ya kurasa ya mzazi na mtoto wakati sifa ya kuzuia inatumika:
Mifano
Unda kurasa zifuatazo kwenye saraka na endesha seva ya wavuti na python3 -m http.server
Kisha, fikia http://127.0.0.1:8000/
vulnerable.html, bonyeza kiunga na uone jinsi URL ya wavuti asili inavyobadilika.
Maliwazo yanayoweza kufikiwa
Katika hali ambapo ufikiaji wa msalaba-eneo unatokea (ufikiaji kati ya uwanja tofauti), maliwazo ya darasa la JavaScript la window, yanayotajwa na kumbukumbu ya kitu cha JavaScript cha opener, ambayo yanaweza kufikiwa na tovuti yenye nia mbaya ni mdogo kwa yafuatayo:
opener.closed
: Mali hii inatumika kuamua ikiwa dirisha limefungwa, ikirudisha thamani ya boolean.opener.frames
: Mali hii inatoa ufikiaji kwa vipengele vyote vya iframe ndani ya dirisha la sasa.opener.length
: Idadi ya vipengele vya iframe vilivyopo katika dirisha la sasa inarudishwa na mali hii.opener.opener
: Kumbukumbu kwa dirisha ambalo lilifungua dirisha la sasa inaweza kupatikana kupitia mali hii.opener.parent
: Mali hii inarudisha dirisha mama ya dirisha la sasa.opener.self
: Ufikiaji kwa dirisha la sasa yenyewe unatolewa na mali hii.opener.top
: Mali hii inarudisha dirisha la kivinjari cha juu kabisa.
Hata hivyo, katika hali ambapo uwanja ni sawa, tovuti yenye nia mbaya inapata ufikiaji wa mali zote zinazofichuliwa na kumbukumbu ya kitu cha JavaScript cha window.
Kuzuia
Maelezo ya kuzuia yameandikwa katika HTML5 Cheat Sheet.
Marejeo
Last updated