Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
ブラウザのUIのバグを探す / Secusoba PopUnder
Masato Kinugawa
November 26, 2017
Technology
2
1.4k
ブラウザのUIのバグを探す / Secusoba PopUnder
第40回セキュそば勉強会(
http://secusoba.info/?%E7%AC%AC40%E5%9B%9E%2811%E6%9C%8825%E6%97%A5%29
) で発表した資料です。
Masato Kinugawa
November 26, 2017
Tweet
Share
More Decks by Masato Kinugawa
See All by Masato Kinugawa
masatokinugawa
21
5k
masatokinugawa
5
70k
masatokinugawa
9
11k
masatokinugawa
17
10k
masatokinugawa
35
17k
masatokinugawa
20
20k
masatokinugawa
4
2.2k
masatokinugawa
7
2.2k
masatokinugawa
8
15k
Other Decks in Technology
See All in Technology
lain21
12
5.1k
kenichimunezawa
0
790
kloudleinc
0
680
htomine
0
160
ihcomega56
2
140
ayatokura
0
230
yuuu
0
120
kema1015
0
560
hmatsu47
1
160
noriyukitakei
0
1.1k
p1ass
15
5.5k
pauloxnet
1
300
Featured
See All Featured
lynnandtonic
272
16k
roundedbygravity
242
21k
orderedlist
PRO
330
36k
rmw
12
860
chriscoyier
146
20k
jacobian
257
20k
mojombo
359
62k
sstephenson
146
12k
smashingmag
283
47k
maggiecrowley
10
540
shlominoach
176
7.6k
deanohume
294
28k
Transcript
None
None
None
• • •
•
• •
None
• • newWin = window.open('//example.com/','w','a'); newWin.blur();//新しいウインドウのフォーカスを離す window.focus();//親にフォーカスを移す
• •
• https://www.youtube.com/channel/UClcE-kVhqyiHCcjYwcpfj9w
None
None
None
None
None
confirm(1);
prompt(1);
print();
//Basic認証
//外部アプリを開くプロトコルへナビゲーション location = "mms:";
onbeforeunload=function(e){return 1;} //どこかへ移動しようとするとダイアログ出現
new PresentationRequest("").start();
new PaymentRequest([{ supportedMethods: ['basic-card'] }], { total: { label: 1,
amount: { currency: 'USD', value: 0 } } }).show();
navigator.usb.requestDevice({filters:[]});
<form> <input type="email" value="a"> <button id="button"> </form> <script> button.click(); </script>
• • • • • •
<script> function popUnder() { new PresentationRequest("").start(); window.open("https://example.com/", "_blank","a"); setTimeout(function(){ location.reload();//リロードでダイアログを消す
},1000); } </script> <button onclick="popUnder()">Create PopUnder</button>
None
• • • • • • •
• • • • •
• •
• • •
None