#secretact
Explore tagged Tumblr posts
jprincetunes · 7 years ago
Photo
Tumblr media
Ahh HELL YEAH! Gonna see lovely Vienna for the first time and play the Melodica Festival with @littlebigsea @hellopiedpiper and @anebjerkan + a secret act... comment who you think it will be! My vote is @beyonce #melodica #vienna #live #festival #austria #acousticset #soloset #secretact (at Rien, Oberosterreich, Austria)
0 notes
tak4hir0 · 4 years ago
Link
エムスリーエンジニアリンググループ、マルチデバイスチームAndroidエンジニアの星川 (@oboenikui) です。セキュリティチームも兼任しています。 AndroidアプリでWebViewを扱うときに、http、https以外の様々なスキームのURIに対応する場合があります。中でもintentスキームのURIはWebサイトにとっては便利なURIであるため、実装を求められるケースも多いことと思います。しかし、このintentスキームのURIを扱う場合には注意が必要であるにも関わらず、世の中のサンプルコードではそのことに触れられていないケースが散見されます。 本記事ではサンプルコードを交えて、どのような危険性があり、どう実装��べきかを解説していきます。 intentスキームのイメージ intentスキームURIとは よくある実装 問題となるケース intentスキームURIの罠 回避方法 1. Chrome Custom Tabsを使用する 2. 生成されるIntentから情報を削る まとめ We are hiring!! 参考文献 intentスキームURIとは intent: で始まるURIです。WebページでこのURIを利用すると、Chromeから特定のアプリを起動できます。またアプリが未インストールの場合は、ChromeからPlayストアのアプリページにリダイレクトします。 例えばWebページに <a href="intent://launch/#Intent;scheme=example;package=com.example.sample;end;" Launch Sample App </a というタグを埋め込んでおくと、アプリのインストール状態によって以下のように処理が行われます。 com.example.sample というIDのアプリがインストールされている場合は example://launch/ というDeep Linkでアプリを起動します 未インストールの場合は com.example.sample に対応するアプリのPlayストアページを開きます この仕様はChromeの実装によるもので、Androidシステムでサポートしているわけではありません。しかしWebページ側はChromeと同じ挙動を想定していることが多く、WebViewを扱うアプリでは同様の実装が求められることがあります。 developer.chrome.com よくある実装 以下のような実装がよく解説のコードとして掲載されています。 webView.webViewClient = object: WebViewClient() { override fun shouldOverrideUrlLoading( view: WebView, request: WebResourceRequest ): Boolean { if (request.url.scheme == "intent") { val intent = Intent.parseUri(request.url.toString(), Intent.URI_INTENT_SCHEME) if (intent.resolveActivity(packageManager) != null) { startActivity(intent) return true } // Playストアを呼び出す実装 return launchPlayStore(request.url) } return super.shouldOverrideUrlLoading(view, request) } } 本記事ではPlayストア遷移の実装に関しては言及しませんが、こちらもただPlayストアに遷移させるというシンプルな仕様ではないので注意が必要です。詳しい仕様は上記のChromeの解説ページをご覧ください。 問題となるケース 例えば com.example.sample というアプリにて、 com.example.sample.WebActivity com.example.sample.SecretActivity という2つのActivityがある状況を考えます。 以下のようなAndroidManifest.xmlを想定しています。 <?xml version="1.0" encoding="utf-8" <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.sample" <activity android:name=".WebActivity" <action android:name="android.intent.action.MAIN" <category android:name="android.intent.category.LAUNCHER" <activity android:name=".SecretActivity" WebActivity では「よくある実装」にて述べた設定がなされています。 SecretActivity はユーザーが起動することを想定していない画面で、intent filterを設定していないため、外部のアプリから起動することはできません。 このとき、 intent:#Intent;component=com.example.sample/.SecretActivity;end; というURIを設定したリンクを WebActivity 上で踏むと、 SecretActivity が起動してしまいます。 例として「ユーザーが起動することを想定していない画面」と書きましたが、例えば認証画面を経由しないと起動してはいけない画面や、Intentのextraに自由に値を渡されるべきではない画面がある場合も同様に問題となります。Intentフィルターを設定していないActivityを予期しない形で起動できることが問題であるとご理解ください。 問題となりうる状況としては、以下が考えられます。 ユーザー自身が攻撃者で、アプリ制作者が被害者のケース。特定の起動が想定されていないActivityが起動されることで、通常の遷移ではユーザーにはできないはずの操作が行われる。(チートのような使われ方) 第三者が攻撃者で、ユーザーが被害者のケース。何らかの理由で被害者の端末ロックが解除された状態で攻撃者が操作できる状態で、アプリ側で設定されたパスコードなどを迂回して特定の画面にアクセスする。 攻撃の概要 intentスキームURIの罠 そもそもintentスキームのURIはPlayストアにリダイレクトするために存在する機能ではなく、様々なIntentを文字列で表現するための機能です。そのため、 Intent.parseUri はブラウザのようなアプリでセキュアに動くように遷移先を制限するようには作られていません。 加えて、intentスキームのURIの仕様はChromeのページで解説されている以上の機能を有します。幸いパーサのコードは比較的シンプルですので、実際にコードを読むのが早いと思います。 android.googlesource.com 回避方法 1. Chrome Custom Tabsを使用する ブラウザアプリでなく、機能的にもChromeと同等で良いのであれば、Chrome Custom Tabsを使用することをお勧めします。 developer.chrome.com 推奨する理由は以下のとおりです。 正しく実装した場合WebViewより高速になるケースがある セキュリティ的に独自WebViewより信頼できる WebView固有の問題に悩まされる必要がない ただし、JavascriptBridgeを利用するなど独自のカスタマイズが必要な場合には利用できません。 2. 生成されるIntentから情報を削る Chromiumの実装を参考に、Intentから情報を削ることで回避できます。 /** * Sanitize intent to be passed to {@link queryIntentActivities()} * ensuring that web pages cannot bypass browser security. */ private void sanitizeQueryIntentActivitiesIntent(Intent intent) { intent.setFlags(intent.getFlags() & ALLOWED_INTENT_FLAGS); intent.addCategory(Intent.CATEGORY_BROWSABLE); intent.setComponent(null); Intent selector = intent.getSelector(); if (selector != null) { selector.addCategory(Intent.CATEGORY_BROWSABLE); selector.setComponent(null); } } github.com この中で最も重要なのは intent.setComponent(null); および selector.setComponent(null); です。これらの処理により、特定のActivityが起動されるのを防いでいます。また、categoryは Intent.CATEGORY_BROWSABLE に制限されています。こちらも予期せぬActivityが起動することを防いでいます。 intent.setFlags(intent.getFlags() & ALLOWED_INTENT_FLAGS); では、利用できるIntentのフラグを制限しています。ここは最近追加された行で、セキュリティ的に非常にまずい問題は見つかっていないようですが、別のバグと併用して脆弱性となることを防ぐために追加されたのではないかと考えられます。組み合わせることで危険になりかねないフラグには Intent.FLAG_GRANT_WRITE_URI_PERMISSION などが考えられます。 まとめ Intent.parseUri を用いる際には細心の注意を払う必要があります。もし自分のWebViewを使った実装で同じようなことをしている方は一度確認してみてください。 We are hiring!! エムスリーでは、セキュリティエンジニアもAndroidエンジニアも募集しています! 興味のある方は、ぜひ以下よりカジュアル面談をお申し込みください! jobs.m3.com 参考文献 Takeshi Terada / Mitsui Bussan Secure Directions, Inc., Whitepaper – Attacking Android browsers via intent scheme URLs, 2014 https://www.mbsd.jp/Whitepaper/IntentScheme.pdf
0 notes
rebeleden · 7 years ago
Link
ONLY COONS CODDLE COONS
0 notes
ipzl · 6 years ago
Link
via EasyHealthTip Easy Health Tip https://ift.tt/2wRP7tY
Thanks to Secret Active for sponsoring this video. Learn more: http://bit.ly/secretactive
More Celebrity News ►► http://bit.ly/SubClevverNews
We’re breaking down ALL the hidden messages in the new 13 Reasons Why season two trailer. This episode is brought to you by Secret Active. New Secret Active provides protection in the moments when it matters most.
If you thought Netflix was gonna drop the new teaser without some Easter eggs, you might wanna watch season one all over again.
Yesterday we told you that Netflix had finally released the first clip from the second season of 13 Reasons Why. With it, came the reveal of a May 18th premiere date and glimpse of the main storyline. It’s time to take a closer look at the trailer and dissect what you may have missed the first time around.
If season one was all about the tapes, then season two is all about the POLAROIDS. That’s clear from the first second of the teaser, which one-by-one shows the students of Liberty High frozen with polaroids floating around them. If you look carefully, each polaroid in the trailer reveals a clue about that person’s storyline in the show. This seems to reinforce the idea that nothing is as it seems on the surface.
Okay let’s break down the clues, one by one. First, we see Tony who looks like he’s simply getting out of his car holding a tape from season one. Once a few polaroids float by we see Tony’s actually been in a horrible accident, he’s holding a suspicious note, and his face is all bruised. Next, we see Jessica in her room taking a selfie, but then you realize “Liar” is spray painted on her window and a polaroid reveals a tear streaming down her face. All we can think is: has she come forward with her story to the public? Now, flash to Mr. Porter and “Know Your Place” is written on his window with another polaroid showing a break in. We also see him in his office pulling Bryce’s file from his drawer- so we know there’s a lot more trouble in store for Bryce. In the very next clip we get morsels of that storyline- and we’re dying to know what the heck is going on with this mystery girl at a party next to him? In a revealing polaroid the same girl is now passed out on the couch. Um, that’s not looking good.
As for Hannah’s Mom, she’s all alone without Hannah’s Dad and trying to put together the mystery of Hannah’s suicide. Polaroids that pass her face include one of For Sale signs with “Go Away” spray painted on them. Last, we see Clay putting on a tie in his room there are court summons documents on his bed that indicate he’s getting ready for a day in court. We know Hannah’s family is taking the school to court over Hannah’s death- but what will the trail unveil? When you see Clay’s face match up with a polaroid of Hannah’s we know the show is hinting at some sort of alignment between the two characters. Further evidence is the note on the back of the polaroid that Clay picks up that reads, “The tapes were just the beginning.” Does this mean Hannah will be BACK?!
On another note- did anyone else notice the threatening red signs throughout the trailer look oddly similar to notes from A on Pretty Little Liars? 13 Reasons Why definitely has a conspiracy on their hands. But unlike PLL, someone wants to hide the truth of Hannah’s death instead of setting it free. However, the clues surpass what’s seen on screen in the trailer. Bustle has pointed out that the song used in the teaser, Depeche Mode’s “I Feel You” makes lots of references to the afterlife. Is this ANOTHER clue that Hannah will be back?
We gotta pass this over to you guys now- did we miss any Easter eggs in the trailer? And what do you make of all the characters MISSING from the teaser like Alex, Justin, and Zach? Get to typing below! As always I’m your host Renee Shafii, thanks for tuning in. Now, click to the right for more details on the 13 Reasons Why season two release date and don’t forget to tap to subscribe! This episode was brought to you by Secret Active. Elevate your performance with Secret Active.
For More Clevver Visit: There are 2 types of people: those who follow us on Facebook and those who are missing out http://bit.ly/2OvjBGv
Keep up with us on Instagram: http://instagr.am/Clevver Follow us on Twitter: http://twitter.com/ClevverTV Website: http://bit.ly/2Mrmiek
Add us to your circles on Google+: http://bit.ly/2xqENWQ Tweet Me: http://www.twitter.com/ReneeAriel This is a sponsored video. source
The post All The HIDDEN Messages in 13 Reasons Why Season 2 Trailer appeared first on Easy Health Tip.
0 notes
pyramideducationservices · 6 years ago
Text
ALL The Celebs Who SUPPORT Kanye West After Pro-Trump Tweets
ALL The Celebs Who SUPPORT Kanye West After Pro-Trump Tweets
ALL The Celebs Who SUPPORT Kanye West After Pro-Trump Tweets
Thanks to Secret Active for sponsoring this video. Learn more: http://bit.ly/secretactive More Celebrity News ►► http://bit.ly/SubClevverNews
Kanye West found himself at the center of yet another controversy after his pro-Trump tweets.
This episode is brought to you by Secret Active. New Secret Active…
View On WordPress
0 notes
schattenundhelden · 9 years ago
Video
Helden-Handy-Fundstück Part.2 💣 #KIZ #Splash18 #Festival #SecretAct
0 notes
djwhatberlin · 10 years ago
Video
instagram
@xocasperxo an einem donnerstag im #princecharles als #secretact kann man machen! #niggasinparis #turnup #party #goodlife #theheatison #berlinhustlesharder #remix #hiphop #trap #abriss #justsayin (hier: Prince Charles)
0 notes
generation-fuckk-blog · 10 years ago
Photo
Tumblr media
tua und kein anderaaaaa - ficki, was los!? ✨ #dieooorsons #berlinmusicweek #secretact (hier: Lido Berlin)
0 notes
thisisheks · 11 years ago
Photo
Tumblr media
#secretact bei #dandydiary: #scooter! Was ne Party!
0 notes
rebeleden · 7 years ago
Link
0 notes