パスワードを忘れた? アカウント作成

アカウントを作成して、スラドのモデレーションと日記の輪に参加しよう。

13286424 story
Android

Android Oのパブリックベータ版とAndroid Studio 3.0のCanary版が公開 11

ストーリー by headless
公開 部門より
Googleは17日、次期Android「O」初のパブリックベータとなるDeveloper Preview 2(DP2)およびCanary版の開発環境Android Studio 3.0 Canary 1を公開した(Android Developers Blogの記事[1][2]Android Oの機能とAPIDP2リリースノート)。

DP2ではDeveloper Preview 1(DP1)で導入されていたPicture in Picture(PIP)やバックグラウンドアプリの制限などに加え、テキストを長押ししたときに住所やURL、電話番号などを認識して全体を選択する「Smart Text Selection」、ランチャー上のアプリアイコンに通知を表示する「Notification Badge」、Googleの機械学習ライブラリTensorFlowの軽量版「TensorFlow Lite」などが追加されている。また、これまで半球形だった顔の絵文字が一般的な円形のものに変更されたようだ。

DP2の公開にともない、Android O Beta Program(要ログイン)も開始された。DP2の対応デバイスはDP1と変わらず、Nexus 5X/Nexus 6P/Nexus Player/Pixel/Pixel XL/Pixel Cとなっている。

Android Studio 3.0 Canary 1ではKotlinを使用したアプリ開発が可能になっており、JavaからKotlinへの変換機能も提供される。Java 8サポートやレイアウトエディターが強化され、Adaptive IconやカスタムフォントなどAndroid Oの新機能に対応する機能も追加されている。エミュレーター用のシステムイメージにはPlayストアが追加され、Google Play開発者サービスの更新も容易になるとのこと。このほか、17日からすべての開発者に開放されたInstant Appsのサポートも追加されている。
13284742 story
Android

KotlinがAndroidアプリの開発言語として公式に採用される 73

ストーリー by hylom
一気にメジャーに 部門より

チェコJetBrainsが開発を主導するオープンソースのプログラミング言語「Kotlin」が、Androidアプリ開発の「第一級言語」になることが発表された(TechCrunchJetBrainsのブログ)。

Kotlinは2011年に発表され、2012年にオープンソース化されたプログラミング言語。静的型やJavaとの互換性が特徴で、Java仮想マシン(JVM)上で動作する(OSDN Magazine)。

まず、Android Studio 3.0ではデフォルトでKotlinが利用できるようになるという。いっぽうでJavaを完全に置き換えるわけではなく、今後もJavaやC++でのアプリ開発はサポートされるとのこと。

13283733 story
Windows

Microsoft Edgeの同一生成元ポリシーを迂回可能なバグ 17

ストーリー by hylom
難しい 部門より
headless曰く、

Microsoft Edgeの同一生成元ポリシー(SOP)を迂回し、別のドメインからCookieやログイン情報などを取得できるバグが発見された(Broken BrowserRegisterOn MSFTの記事[1][2]Neowin)。

Microsoft EdgeやInternet Explorerには、サーバーリダイレクトの途中でwindow.locationの内容を書き換えると、リダイレクト先をリクエスト元と認識するバグがあるのだという。これをリダイレクト先ページ内のiframeに適用し、locationにデータURIスキームでJavaScriptコードを指定すれば、ほぼ親ドキュメント(リダイレクト先ページ)のコンテキストでコードが実行できるとのこと。ただし、リダイレクト先の読み込みが開始される前にlocationを書き換えてしまうと予期した通りの動作をしない。そのため、PoCではアラートを表示してコードの実行を待機させている。

PoCとしては、TwitterやFacebookのログインページにリダイレクトしてブラウザーが保存したログイン情報を表示するものや、Google reCAPTCHAのページにリダイレクトしてCookieを表示するもの、リファラーをmicrosoft.comに偽装するものが公開されている。コードを一部変更することで、Internet Explorerでも動作するようだ。

なお、テストした環境(Windows 10 Creators Update)ではFacebookのログイン情報が取得できず、Twitterは空のユーザー名とパスワードが表示されることもあった。また、Broken Browserの記事に掲載されているスクリーンショットとは異なり、リファラー偽装のPoC以外ではアドレスバーにURLが表示されず、ページタイトルも「空白のページ」となっていた。

今回のバグはMicrosoftも認識しているが、修正時期については明言していないようだ。バグを発見したセキュリティ研究者のManuel Caballero氏は、4月にもMicrosoft EdgeでSOPを迂回可能なバグ2件発見しているが、これらは未修正のままだという。ちなみに、昨年12月にCaballero氏が発見したMicrosoft EdgeのSmartScreenに偽URLや偽連絡先を表示可能な問題については、3月の月例更新での修正は迂回方法が同日発見され、さらに5月の月例更新での修正も迂回方法が同日発見されている。

13280289 story
インターネット

ChromeやFirefoxをそのままUWP化してもWindowsストアでは公開できない 57

ストーリー by headless
障壁 部門より
Microsoftが先日発表したWindows 10の新エディション「Windows 10 S」では既定のWebブラウザーがMicrosoft Edgeに固定されており、変更できない。MicrosoftはどのようなWebブラウザーでもWindowsストアで公開されていれば実行できると述べているが、Google ChromeやMozilla Firefoxが実行できるようになる可能性は低いようだ(MSPoweruserの記事BetaNewsの記事The Vergeの記事On MSFTの記事)。

Windowsストアポリシーの10.2.1には「Web を閲覧するアプリでは、Windows プラットフォームによって提供される適切な HTML エンジンと JavaScript エンジンを使用する必要があります。」との記載がみられる。つまり、ChromeやFirefoxをUWP化しただけではWindowsストアで公開できないことになる。このような項目はこれまで存在しなかったが、変更履歴によれば、1月17日のドキュメントバージョン7.2で追加されたようだ。

ストアポリシーの変更についてMicrosoftでは、ユーザーの安全を保つためだとし、他のストアで入手したアプリが使いたいユーザーはWindows 10 Proにいつでも変更できると述べているとのことだ。

なお、NetApplicationsの4月分デスクトップブラウザーシェアデータによれば、1位のChromeが59%を占めており、以下IE(18.40%)、Firefox (11.80%)、Edge(5.62%)、Safari(3.44%)の順になっている。StatCounterではChromeが63.45%。以下全バージョン合計でFirefoxが14.5%、IEが9.00%、Safariが5.18%となっており、Edgeのシェアは3.72%にとどまる。
13241574 story
アップル

Internet Archive、System 7のアプリを利用できるコレクションを公開 18

ストーリー by hylom
まだMacOSになる前のやつ 部門より
あるAnonymous Coward 曰く、

インターネット・アーカイブはJavaScriptベースのエミュレータを使ったSystem 7のアプリが利用できるコレクションのページを公開した(Internet Archive BlogsAppleちゃんねる)。

Froggerレミングスのデモ版Airbonrneなどを遊ぶこともできる。小学生の時にこれらで遊んだことがあったが、懐かしきもあり、僕も年をとったなと思うタレコミ子でした。

13232326 story
Google

GoogleのJavaScriptベンチマーク「Octane」が引退 25

ストーリー by headless
引退 部門より
Googleは12日、JavaScriptベンチマーク Octaneの引退を発表した(V8 JavaScript Engineブログの記事Ars Technicaの記事BetaNewsの記事)。

SunSpiderのような初期のマイクロベンチマークの弱点を克服すべく開発されたOctaneだが、2015年までに多くのJavaScript実装はOctaneで高いスコアを得るためのコンパイラー最適化が進んでいたという。その結果、Octaneのスコアは実際のWebサイト読み込み速度を反映しないものになっている。現実のユースケースでは不利益になるような最適化や、Octaneのバグを悪用する最適化も行われているとのこと。

現在では多くのJS VMでスコアの差が出にくくなってきており、現実的な幅広いコードでの高速化を実装するのではなく、Octaneに特化した最適化が行われている現実を踏まえ、Octaneを推奨されるベンチマークから外す時期が来たとのことだ。
13225330 story
Google

Google、社内標準言語の一つとしてTypeScriptを採用 55

ストーリー by hylom
意外な普及 部門より
あるAnonymous Coward曰く、

Microsoftが開発する、JavaScript代替のプログラミング言語「TypeScript」を、Googleが社内の標準プログラミング言語として採用した(Publickey基調講演動画)。

4月5日から開催されていた、同社が開発を主導するJavaScriptライブラリ「Angular」のイベント「ng-conf 2017」において発表されたもの。Googleには社内の標準プログラミング言語が規定されており、これまではC/C++、Java、JavaScript、Python、Goが設定されていたという。AngularはTypeScriptを使って開発されていることも背景にあるようだ(OSDN Magazine)。

GoogleではTypeScriptの利点として、読みやすく書きやすいInline types、高速なコンパイル、Decorators、Closure互換、IDEのサポート、それに活発なコミュニティなどを評価しているという。

13205713 story
Chrome

ハッキングコンテスト「Pwn2Own」で狙われたEdge、仮想マシン内のEdgeからホストにアクセスできる攻撃も行われる 29

ストーリー by hylom
よく見つけるなぁ 部門より
taraiok曰く、

WebブラウザやOSの脆弱性を狙うハッキングコンテスト「Pwn2Own 2017」で、Edgeブラウザの新たな脆弱性や、仮想マシン内からゲストOSにアクセスする手法などが発見された(PC WatchTomsHardwareSlashdot)。

昨年の同コンテストでは、EdgeブラウザのセキュリティはIEやSafariよりも優れているもののChromeには及ばないという結果が出ていたが、今年はEdgeブラウザの状況が悪化し、Edgeに対する攻撃は合計で5回成功したという。Edgeに対する賞金額が多かったために狙われたという側面もあるようだが、一方でChromeへの攻撃は一度も成功しなかったという。

発見された具体的な問題は、JavaScriptエンジンとサンドボックスのロジックバグ、UAF脆弱性とWindowsカーネルでの別のUAFバグを使った攻撃、VMware Workstationの初期化されていないバッファを悪用する攻撃など。特にVMware Workstationの不具合とEdge、Windowsの不具合を組み合わせた攻撃では、仮想マシン上で動作していたEdgeからホストOSへのアクセスが可能になっていたという。この攻撃を成功させたチームは10万5000ドルの賞金を獲得したとのこと。

13190205 story
アップル

Apple側の審査を通さずにアプリの挙動を変更するAPIの利用に対しAppleが検閲を強化へ 11

ストーリー by hylom
抜け穴禁止 部門より
あるAnonymous Coward 曰く、

Appleはこれまで、App Storeのレビューを通さずにアプリの挙動を変更できる「Hot Code Push」を認めてきた。これにより、開発者はバグフィックス版の提供を早めたり、Apple Storeレビューチームの承認を待たずに新版の提供が可能になっていた。しかし、この流れは変わってきたようだ(踊る犬.netApple Developer ForumsHacker NewsSlashdot)。

Apple Developer Forumsへの投稿によると、App Storeでアプリを公開していたある開発者に対し、アプリのレビュー後にその挙動や機能を変更できる点がAppleのガイドラインに違反しているとしてAppleからこのような機能を取り除くよう連絡が来たという。「dlopen()、dlsym()、respondsToSelector:、performSelector:、method_exchangeImplementations()」といったメソッドの利用やリモートコードの実行などが問題点として挙げられていたとのこと。

これらの機能を使ってアプリの迅速なアップデートを可能にする「Rollout.io」や「JSPatch」といったサービスがあり、今回Appleからガイドライン違反の可能性を指摘されたアプリはRollout.ioを使っていたのだが、それが問題とされた模様。これを受けてRollout.ioはAppleに失望したという旨のコメントを出している。

なお、WebKitなどのエンジン上で動作するJavaScriptコードについては例外とのことで、これを利用しているReact Nativeなどは問題ないという。

13187968 story
プログラミング

TIOBE IndexでSwiftが初のトップ10入り 20

ストーリー by headless
堅調 部門より
3月のTIOBE Indexで、Swiftが初めてトップ10に入っている。

Swiftは2015年7月以降、前月比で減少した月はあるものの前年比で減少した月はなく、順調にレーティングを伸ばしてきた。2015年12月にはObjective-Cを初めて上回り、その後16か月中10か月でObjective-Cを上回っている。3月は前年比0.68ポイント増の2.268%で、前年の14位から10位まで上昇した。一方のObjective-Cは2014年をピークに前年比での減少が続いていたが、2016年9月以降は前年比で増加に転じている。3月は前年比0.54ポイント増の1.997%となったが、順位は前年から1ランク下げて15位となっている。

1位~3位はJava、C、C++の順になっており、2015年4月にJavaがCを上回って1位になって以降は2年近く順位の変動がない。ただし、トップ3はいずれもレーティングを減らしており、2位のCは前年比6.86ポイント減の7.742%と半分近くまで減少している。1位のJavaも減少幅は大きく、4.14ポイント減の16.384ポイントとなった。3位のC++は1.54ポイント減の5.184%となっている。

4位~8位はC#(4.409%)、Python(3.919%)、Visual Basic .NET(3.174%)、PHP(3.009%)、JavaScript(2.667%)が2ポイント以内の差で並んでいる。前年との比較では6位のVisual Basic .NETと7位のPHPが入れ替わっただけだが、月単位では順位の入れ替わりが激しい。レーティングはPythonが前年比0.34ポイント減少している以外、1ポイント未満の増加となっている。9位のObject Pascal/Delphiは3年ほど前から増加傾向にあり、2月に9位となってトップ10入りしている。3月は前年比0.54ポイント増の2.544%となった。

トップ20で前年比1ポイント以上増加したのは17位のGoのみ。Goは前年比1.78ポイント増で1.982%となり、前年の48位から大きく上昇している。このほか、Rが0.73ポイント増の2.016%(16位→14位)、Scratchが0.70ポイント増の1.472%(26位→20位)などとなっている。
13186049 story
Firefox

WebAssemblyに初対応したFirefox 52がリリース 60

ストーリー by hylom
レガシープラグインを使っていたサイト、どうなる 部門より
あるAnonymous Coward 曰く、

Mozillaは3月7日、ブラウザ上でプラットフォーム非依存のバイナリ実行ファイルをサポートする「WebAssembly」に対応した「Firefox 52」を公開した(プレスリリースOSDN MagazizeEngadget JapanesePC Watch)。

WebAssemblyは、JavaScriptに代わる実行ファイルフォーマットとして主要ブラウザメーカーが共同で開発しているもので、これによりブラウザ上でもネイティブに近いパフォーマンスが期待できるとされている。一般向けブラウザとしての対応は今回が初となるという。同様の仕組みとしてはasm.jsが存在するが、こちらはあくまでもJavaScriptのサブセットであったため、パフォーマンス上の制約がかかっていた。

一方、Firefox 52では兼ねてより発表されていたNPAPIプラグインのサポート終了も行われている。かつ、本バージョンはWindows XPとVistaに対応する最後のメジャーバージョンになるともアナウンスされている(Slashdot)。

13183224 story
インターネット

Apache Struts 2にリモートからの任意コード実行を許す脆弱性 20

ストーリー by hylom
またStrutsか 部門より
あるAnonymous Coward曰く、

JavaベースのWebアプリケーションフレームワークApache Strutsに深刻な脆弱性が発見された(JVNVU#93610402piyolog)。

対象はApache Struts 2.3.5~2.3.31および2.5~2.5.10。Jakarta Multipart parserの処理に不具合があり、multipart/form-dataが文字列として含まれる不正なリクエストを送信することで、リモートから任意のコードを実行できる可能性があるという。

Struts 2はOGNLという独自の言語でJavaオブジェクトを操作できる機能を備えており、しばしばOGNLが原因の脆弱性が発見されていたが、今回もOGNL周りの問題のようで、Content-Typeヘッダ内に細工したOGNKを入れるだけで攻撃できてしまう模様。

ちなみにStrutsについては2014年にセキュリティ的には相当にダメな部類などと指摘されていた。

13180383 story
Android

開発に使われたPCがウイルスに感染していたためにウイルスが混入したと見られるAndroidアプリ、多数見つかる 24

ストーリー by hylom
気を付けましょう 部門より

Google Playで公開されているAndroidアプリのセキュリティ問題についてはたびたび話題になっている。アプリ開発者が意図的にバックドアなどを組み込む例もあるが、最近ではアプリの開発に使われたWindows機がウイルスに感染していたため、ウイルスが含まれたHTMLやJavaScriptがアプリに混入する、というケースがあるという。(Computerworld)。

Palo Alto Networksの調査によると、同社はこのような「開発機の汚染」が原因でウイルスが混入したと見られるアプリを132個発見したという。問題となっているアプリはWebViewを使ってアプリ内に含まれている静的なHTMLファイルを表示する機能を持っており、ここで表示されるHTML内にマルウェア配布サイトなどにアクセスするような悪質なコードが挿入されていたそうだ。

これらコードの中には、Windowsの実行ファイルをダウンロードしてインストールさせようとするものもあったらしい。しかし、当然ながらAndroid端末ではこれらは動作しない。また、VBScriptで実装されたコードが埋め込まれていたケースもあるという。これらのコードはアプリ開発者が意図して組み込んだわけではなく、開発機にHTMLファイルなどを改変するようなウイルスが仕込まれており、これによって悪意のあるコードが埋め込まれたHTMLファイルなどを気付かずにアプリ内に組み込んでしまったのが原因だと推測されている。

13177239 story
Windows

Windowsの未修正脆弱性に対するサードパーティのパッチが公開される 31

ストーリー by headless
微妙 部門より
Microsoftが2月の月例更新を3月に延期する一方で、GoogleのProject ZeroがWindowsの未修正脆弱性を2月14日 (CVE-2017-0038)と23日 (CVE-2017-0037)に相次いで公表した。これらの脆弱性のうち、CVE-2017-0038に対するパッチをACROS Securityの0patch Teamが公開している(0patch Blogの記事BetaNewsの記事Softpediaの記事)。

CVE-2017-0038はgdi32.dllのバグにより、リモートの攻撃者が細工したEMFイメージファイルを使用してプロセスのヒープメモリーから情報を取得できるというもの。バグは昨年3月に発見され、Microsoftは6月の月例更新で修正したものの、修正が不完全だったという。そのため、Project Zeroでは11月にMicrosoftへ再度通知したが、90日間の期限が過ぎたとして2月14日に公表した。

Project Zeroで公開されているPoC(poc.emf)は1×1ピクセルのビットマップを含むが、DIBデータは16×16ピクセルに改変されている。影響を受けるシステムのInternet Explorer 11に画像をドロップすると、255ピクセル分がヒープ内のジャンクデータに基づいて描画されることになる。

0patchのパッチは、0patch.comで公開されている「0patch Agent」(ベータ版)をインストールして実行することで適用できる。ただし、利用にはユーザー登録が必要となる。0patch Agentは常駐し、パッチ適用の有無も切り替え可能だ。パッチを適用した状態では空のイメージが描画され、エクスプロイトをブロックしたことがポップアップ表示される。

パッチが提供されるのは、Windows 7および64ビット版のWindows 8.1/10のみ。なお、パッチは脆弱性のあるバージョンのDLLに対してのみ適用され、Microsoftから公式の修正プログラムがリリースされれば適用されなくなるとのこと。

ちなみに、CVE-2017-0037はMicrosoft EdgeとInternet Explorer 11に存在する型の取り違えの脆弱性だ。この脆弱性を利用すると、リモートの攻撃者は細工したCSSとJavaScriptにより、任意コードの実行が可能になるとのこと。
13170954 story
Chrome

Google Chromeの追加フォントダウンロードに見せかけた攻撃が確認される 9

ストーリー by headless
偽物 部門より
Google Chromeで必要なフォントが見つからないなどと表示して、Windowsユーザーにマルウェアをインストールさせようとする攻撃が確認されている(NeoSmartのブログ記事The Next Webの記事Neowinの記事Softpediaの記事)。

攻撃の内容としては、JavaScriptを使用してページ内のテキストを文字化けしたように見せかけ、正しく表示するには「Chrome Font Pack」を更新する必要があるとのプロンプトを表示するというもの。プロンプトには現在使用しているChromeのバージョンが反映されておらず、クローズボタンがプロンプトの内部にあるといった問題はあるものの、不足しているというフォントは実在のフォントであり、プロンプト内のテキストや配色なども本物らしい仕上がりとなっている。

しかし、「Update」ボタンをクリックすると攻撃のクオリティは急激に低下するという。プロンプトはインストール手順を説明する内容に切り替わるが、実行するよう指示されるファイルと実際にダウンロードされるファイルの名前が異なる。しかも、Chromeのダウンロードバーには「一般的にダウンロードされておらず、危険を及ぼす可能性」があるとの警告が表示される。また、説明で使われている警告ダイアログボックスの画像は別の実行ファイルのもので、ファイル名や発行者名の部分にぼかしがかけられている。

ただし、Chromeは危険性に関する警告を表示するにとどまり、ChromeもWindows Defenderもマルウェアとは認識しないという。VirusTotalのスキャン結果では59本のセキュリティソフト中、このファイルをマルウェアと認識したのは9本にとどまる。この攻撃を発見したNeoSmart TechnologiesのMahmoud Al-Qudsi氏は、Chromeのセーフブラウジング機能でブロックできるよう、このファイルのコピーをChromeのセキュリティチームに送っているとのこと。なお、Al-Qudsi氏はクラックされたWordPressサイトをブラウズしているときにこの攻撃を発見したそうだ。
typodupeerror

開いた括弧は必ず閉じる -- あるプログラマー

読み込み中...