本ページの情報は、2016年10月時点のものです。2023年10月に再構成をいたしました。 なお、内容に変更はありません。 2016年10月版 2002年2月に「Webプログラマコース」と「製品プログラマコース」、2007年の6月に「Webアプリケーション編」、9月に「C/C++編」と分けて公開してきた講座のうち、原則を中心として共通的なものをまとめて2016年10月に再編しました。 なお、資料内の参照先はすべてサイトリニューアル前のURLであるため、リダイレクトを設定しています。 セキュア・プログラミング講座(2016年10月版/2017年6月一部修正)(PDF:2.3 MB) 2007年版 「ソースコード検査技術の脆弱性検出能力向上のための研究」(注釈1)を実施した一環として取りまとめた内容を、2002年から公開していたセキュア・プログラミング講座(旧版)の改訂版(2007年版)として
Matt Caswell matt at openssl.org Mon Mar 16 19:05:31 UTC 2015 Next message: [openssl-announce] Forthcoming OpenSSL releases Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Forthcoming OpenSSL releases ============================ The OpenSSL project team would like to announce the forthcoming release of OpenSSL versions 1.0.2a, 1.0.1m, 1
以前、僕が実装している web サーバ Mighty が、Haskell で書いているにも関わらず、セグメンテーションフォールトを起こしていた。調べたところ hashable ライブラリがリンクする C の DJBX33X が、SipHash に変わったことが原因だった。このときから SipHash が気になっていたし、以前社内で説明した "Efficient Denial of Service Attacks" との関係も知りたかったので、少し調べてみた。この記事は、その覚え書き。 Hash-flooding DoS の歴史 1998 年に Alexander Peslyak 氏が Phrack Magazine で、Hash-flooding DoS を受けたことを報告している。ハッシュは、N 個の要素を挿入するのに通常 O(N) かかるが、ハッシュ値がすべて衝突する最悪の場合では O
DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】DeNA
再帰的名前解決を行う DNS リゾルバの実装には、委任を参照する名前解決を無限に繰り返す問題が存在します。 RFC 1034 では、DNS ドメインの権限委任の技術的な問題について記述しているものの、権限委任の実装方法については規定していません。再帰的リゾルバの実装によっては、細工されたゾーンデータを持つ権威サーバに対してクエリを実行することにより、ドメインの委任を参照する名前解決を無限に繰り返してしまう可能性があります。その結果、リソース枯渇による DoS 状態が発生する可能性があります。 この問題は、主に再帰的リゾルバにおいて発生しますが、ISC Security Advisory AA-01216 では、さらに次のように記載されています。 "Authoritative servers can be affected if an attacker can control a deleg
Network Time Protocol (NTP) は、様々なサービスやアプリケーションで時刻を同期するために使用される通信プロトコルです。ntpd には複数の脆弱性が存在します。 スプーフィングによる認証回避 (CWE-290) - CVE-2014-9298 ソースアドレスを IPv6 アドレス ::1 に偽装されると、ACL による制限を回避される可能性があります。 プログラムの異常状態や例外条件を適切に検査しない (CWE-754) - CVE-2014-9297 ntp_crypto.c において拡張フィールドの長さ (vallen) の値が正しく検証されていないため、情報漏えいやプログラムの異常終了が発生する可能性があります。 PRNG における不十分なエントロピー (CWE-332) - CVE-2014-9293 ntp.conf ファイルで auth key が設定さ
情報処理推進機構(IPA)とJPCERTコーディネーションセンター(JPCERT/CC)が共同で運営する脆弱性関連情報ポータルサイト「JVN(Japan Valnerability Notes)」は2014年12月22日、IT機器の時刻合わせに広く使われているサーバーソフト(デーモン)の「Network Time Protocol daemon(ntpd)」に複数の脆弱性が見つかったことを伝えた。発見された脆弱性の中には、不正に細工されたNTPパケットを一つ受け取るだけで、サーバーがいきなり乗っ取られる危険性があるものも含まれている。 見つかった脆弱性は四つ。(1)設定ファイルntp.conf中でauth keyを設定していない場合に、暗号強度が低いデフォルト鍵が生成される問題、(2)古いバージョンのntp-keygenが、弱いシード値を使って乱数を発生し、これを基に暗号強度の低い対称鍵を
この記事は脆弱性"&'<<>\ Advent Calendar 2014の17日目の記事です。今日は少し昔話をしようと思います。がはは。 かつて、日本製TwitterのようなWassrというサービスがありました。当時、Twitterは数日に一度くらいはサービスが落ちていて、Twitterユーザーも「またか」と思いながら我慢して使うようなサービスであり、Twitterが落ちるたびにWassrはユーザーを増やすとともに、画像の添付のように当時Twitterにはまだなかった機能をどんどんアグレッシブに取り入れていく、使っていて楽しいサービスでした。 さて、そんなWassrがある日絵文字機能を導入しました。当時はUnicode絵文字もなくスマートフォンも普及しておらず、主にレガシーな携帯電話で使える絵文字をなんとかWeb上でも使えるようにしたという感じのものでした。 絵文字をパレットから選択すると
JavaScriptで動的にリンクを生成する際に、DOM-based XSSを防ぐためにリンク先がhttpあるいはhttpsに限定されていることを確認したい場合がある。典型的には以下のようなコードとなる。 var div, elm; // 変数 url は攻撃者がコントロール可能な文字列 if( url.match( /^https?:\/\// ) ){ div = document.getElementById( "info" ); elm = document.createElement( "a" ); elm.setAttribute( "href", url ); elm.appendChild( document.createTextNode( url ) ); div.appendChild( elm ); } この場合、変数urlに「http://example.jp」や「
bashのセキュリティ脆弱性(通称:Shellshock)の影響はいまだとどまることなく、さらに広がりを見せている。この脆弱性を攻撃する手法としてすでにHTTPやDHCPが知られているが、新たにDNSの逆引きを利用する方法が発見された。さまざまなメディアで報道されているが、例えばFull Disclosureに掲載された「Full Disclosure: CVE-2014-3671: DNS Reverse Lookup as a vector for the Bash vulnerability (CVE-2014-6271 et.al.)」などが興味深い。スレッドで、この問題について詳しく解説されている。 DNSの逆引きの結果として「() { :;}; echo CVE-2014-6271, CVE-201407169, RDNS」といったShellshockを悪用する文字列を返すよう
私は、プログラマとして30年以上仕事をしてきた中で、学んだことがあります。そのいくつかを以下にご紹介します。もっと挙げることもできますよ。 実物を見せないと、顧客の希望は分からない。 このことは最初の仕事で学びました。顧客は、実物を見るまでは、何が本当に必要なのかがよく分かりません。言葉で長々と説明するよりも、機能検証のためのプロトタイプを提示する方が確実に役立ちます。 十分な時間があれば、あらゆるセキュリティは破られる。 現代社会において、セキュリティを保つことは信じられないほどの難題となっています。プログラマは常に完璧を求められますが、ハッカーは1回でもハッキングができれば成功なのです。 セキュリティが破られた場合、事前にその状況に備えた対策を講じているかどうかで結果が変わってくる。 最終的にセキュリティが破られることを想定する場合、その時に起こることに備えて対策を立てておく必要があり
Content-Security-Policy の nonce を利用すると、XSS の脅威をかなり軽減できます。 そこで、Web Application Framework ではデフォルトで対応したほうがよいのではないか、という旨を @hasegawayosuke さんから教えて頂いたので、実装について考えてみました。 とりあえず CSP の nonce はどういうものなのかを考慮するために、コード例を探していたのですが、実際に動くサンプルというものが nonce 関連のもので見当たりませんでした。 そこで、実際に動くサンプルを用意しました。 https://github.com/tokuhirom/csp-nonce-sample 以下は Sinatra で書かれたサンプルコードです。 require 'sinatra' require 'securerandom' get '/' d
1. はじめに、 昨日 OpenSSLのバージョンアップがアナウンスされ、9つの脆弱性が公開されました。バージョンアップの数日前にOpenSSLの次期リリース予告がアナウンスされていましたが、ちょうど BlackHat 開催初日にあたることもあり、なんかまた重大な脆弱性の修正が入るんじゃないかとドキドキしていました。蓋を開けてみるとHeatBleed程の大事ではなくホットひと安心です。 昨日公開されたOpenSSLの9つの脆弱性のうち、TLS プロトコルダウングレード攻撃 (CVE-2014-3511)の修正を見ていたところ、これはTLSプロトコルを学ぶいい題材になるなぁとふと思いつき、試しにこのOpensslの脆弱性の詳細をTLSプロトコルの基礎に合わせて書いてみました。 ちょっと長いですが、TLSプロトコルの仕組み(の一部)を知りたい方はお読みください。 2. OpenSSLの脆弱性
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く