中国でのソフト開発は大丈夫なのか?

中国でのソフト開発は大丈夫なのか?

中国でのソフト開発が進められています。例えば、

「NEC、中国のソフト開発体制を強化−5000人にトレーニング開始」
http://enterprise.watch.impress.co.jp/cda/topic/2008/06/11/13158.html

人件費が圧倒的に安い中国ですがセキュリティの問題も考えなければなりません。中国政府の機関が直接関与していると考えられるセキュリティ上の問題は海外メディアやブログではかなり頻繁に報道されています。

A New Cold War?
http://www.spinhunters.org/blog/a-new-cold-war/

にはアメリカの通商代表が中国訪問中にコンピュータから情報を盗まれた可能性があり、捜査中だとしています。

随分前になりますが国防相のメールが中国のサイバー攻撃により読み取られた、とする報道も記憶に新しいです。アメリカ軍が利用しているルータや兵器部品でさえ中国製の偽物が多数発見されるような状態です。まさに「何でもあり」の無法状態です。

セキュリティは意識しなくてもよいシステム開発案件なら良いですが、中国での開発はさらにリスクが高いと考えるべきでしょう。システム開発にもチャイナリスクを十分に考慮しなければならない時代がやってきたようです。

「オープンセミナー2008@四国」開催のご案内

追記:会場が変更されました。旧:66会議室、新:61会議室。参加者が予想より多いため大きな会議室になりました。

毎年四国で行っているオープンソース(特にPostgreSQL)とコンピュータ関連の話題をテーマに無料セミナーを行っています。今年も6/28(土曜)に高松市にて行います。

本年度でJPUG四国支部 担当理事を山下さんに交代したので、次のオープンセミナーからは山下さんが取りまとめ役を行います。

JPUGサイトのセミナーの告知文
http://www.postgresql.jp/branch/shikoku/300c30aa30fc30f330bb30df30ca30fc2008-56db56fd300d958b50ac306e304a77e53089305b

セミナー告知用のテンプレートです。興味がある方、ML等にお知らせ頂けると助かります。

○○@□□です。

「オープンセミナー2008@四国」開催のご案内をさせて頂きます。

2008年6月28日(土)にサンポート高松(香川県高松市)にて開催します。
参加費無料です。是非ご参加頂きますようお願い致します。

このメールは転送自由です。ご興味があると思われる方、メールリストに転送
頂ければ幸いです。

—————————————————————

       「オープンセミナー2008@四国」 開催のお知らせ

                       主催:
                       NPO法人 日本PostgreSQLユーザ会
                             瀬戸内Linuxユーザ会
                               四国BSDユーザ会
                       協力:
                              日本UNIXユーザ会

「オープンセミナー2008@四国」は毎年技術者向けにオープンソースとインターネットを
テーマとして開催している無料セミナーです。昨年は「オープンセミナー2007@四国」、
「オープンセミナー2007@徳島」としてそれぞれ7月と11月に開催されました。2008年
もオープンソースとインターネットをテーマに香川県高松市にて無料セミナーを開催致し
ます。事前登録は必要ございません。プログラミング、セキュリティ、オープンソースや
インターネットに興味をお持ちの技術者、管理者、学生の皆様をお待ちしています。

セミナーに使用する会議室の定員は30名です。定員を超える可能性もあります。定員を超
えた場合、立ち見となる場合がございます。お早めにお越し下さい。

当日夜に高松駅近辺にて懇親会も予定しています。予約を行うため懇親会の参加には申し
込みが必要です。懇親会に参加をご希望の方は問合せ先にEメールでご連絡下さい。
(メール末尾を参照)

                  記

オープンセミナー2008@四国 − 四国で学べるオープンソースとインターネットの世界

主催:  日本PostgreSQLユーザ会(JPUG)
     瀬戸内Linuxユーザ会(STLUG)
     四国BSDユーザ会(S*BUG)
協力:  日本UNIXユーザ会 (JUS)
開催日: 2008年6月28日 13:00 〜 18:00 (12:50受付開始)
開催場所:サンポート香川ホール棟6F 61会議室
http://www.sunport-hall.jp/shisetu/kaigi.htm
アクセス: JR高松駅より徒歩1分
懇親会: JR高松駅近辺

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
13:00 – 13:10 開会のご挨拶

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
13:10 – 14:00 KOFの過去、今、これから
講師:中野秀男 大阪市立大学 学術情報総合センター 所長・教授/
        大学院創造都市研究科 教授、KOF実行委員長
   法林浩之 日本UNIXユーザ会 副会長、KOF実行委員

近年ソフトウェアコミュニティの活動が各地でさかんになっていますが、関西では
「オープンソースならびにコミュニティが元気に交流できる場を、関西でも作ろう」
という目的の下に集った有志により、「関西オープンソース+関西コミュニティ大決戦」
(通称KOF)を2002年から開催しています。

本講演では、今年7年目を迎えるKOFの活動について、これまでの経緯、活動の経験
から得たもの、今年の予定、そして今後はどういう方向に向かっていくのかをお話し
します。

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
14:10 – 15:00 PG Cluster
講師:三谷 篤 株式会社SRA西日本/日本PostgreSQLユーザ会

PostgreSQLは本格的なオープンソースRDBMSと広く利用されています。PostgreSQL 8.3
では更なる高速化など大規模システムに欠かせない機能が追加されています。対規模DBに
はクラスタリングソリューションが欠かせませんが、PostgreSQL本体にクラスタリング
機能は組み込まれていません。

本講演では、PostgreSQLのクラスタリングソリューションとして実績を積んでいるPG
Clusterの技術と最新動向を紹介します。

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
15:10 – 16:00 最新セキュリティ事情
講師:片山 昌樹 有限会社マギシステム

各地で発生している様々なインシデントについて、最新の情報を交えつつ紹介します。

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
16:05 – 16:35 ライトニングトーク

1人5分程度でユーザ会や技術動向などを紹介するコーナーです。
ライトニングトーク講師を募集中です。コンピュータやインターネットに関連する
事であればテーマは自由です。応募される方は yohgaki@ohgaki.net までご連絡く
ださい。お待ちしております。

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
16:40 – 17:30 Rails 2.1
講師:吉田 和弘 日本Rubyの会, 株式会社ミッタシステム 取締役

RailsはWeb開発の現場でも広く利用されるようになりました。Rails 2.1では新機能が
数多く盛り込まれています。特にO/Rマッパ(ActiveRecord)の新機能についてご紹介し
ます。

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
17:40 – 18:30 JavaScriptで書かれたPIC-BASICエミュレータ
講師:白石 啓一 詫間電波工業高等専門学校

PIC基板を持ってなくともPIC-BASICプログラミングを楽しめる環境を作るため,Web
ブラウザに実装されたJavaScriptでPIC-BASICエミュレータを実装しました。本エミュ
レータの設計や実装方法を紹介します。

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
18:30 閉会のご挨拶

—-
日本PostgreSQLユーザ会 http://www.postgresql.jp/
瀬戸内Linuxユーザ会 http://www.stlug.org/
四国BSDユーザ会 http://www.bbsbrain.ne.jp/~sbug/
日本UNIXユーザ会 http://www.jus.orjp/

問い合わせ先:
日本PostgreSQLユーザ会 四国支部 (株式会社Result内)
四国支部長: 山下 武志 TEL: 087-832-5527
メール:tyama@mbp.ocn.ne.jp
ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

懇親会費は約4000円を予定しています。会場から徒歩で移動可能な居酒屋などを
予定しています。懇親会参加をご希望の方は以下のメールをお送りください。
……………………………………………………………
To: tyama@mbp.ocn.ne.jp
Subject: [オープンセミナー2008@四国 懇親会 参加申込]
——————–
※ 氏名(ふりがな): ( )
 所属:
 連絡先郵便番号:
 連絡先住所:
 Tel:
 Fax:
※ E-Mail:

注1 先頭に”※”がある項目は必須項目です。他はオプショナル項目です。
……………………………………………………………

BootcampのWindows VistaがParallelsで起動するとライセンス認証エラーでログインできない

先月のWindows Update以降、BootcampからはVistaは正常に起動し使えるのですが、Parallelsから起動するとWindowsライセンス認証のエラーが発生しログインできない状態になってしまいました。ちょっと探してみただけでは同じような問題で困っている方の情報は見つかりませんでした。

この状態はかなり使い勝手が悪いので、なんとかしたかったのですが時間の都合で放置していました。ようやく直す事ができました。

Windows側で何かしなければならないと思っていたのですが、Parallelsをアンインストールして再度インストール、ライセンス認証を求められるので認証を行うと使えるようになりました。

環境
OSX 10.5.3
Parallels Desktop build 5600
Windows Vista Business SP1

同じような問題でお困りの方、一度Parallelsをアンインストールしてみましょう。

PostgreSQLカンファレンス2008

PostgreSQLカンファレンス2008が今週金曜日(6/6)に開催されます。

http://www.postgresql.jp/events/postgresql-conference-2008

例年通り参加費が必要ですが懇親会費込みです。

参加費:
カンファレンス ならび に懇親会 4,000 円
チュートリアルも含むカンファレンス ならびに 懇親会 10,000 円

今回のカンファレンスの目玉は色々ありますが、その一つはチュートリアルセッションです。まだ、空席が残っているようなのでライセンスもBSDでMySQLよりも使いやすいPostgreSQLを始めてみたい方には良いチャンスだと思います。新人研修の一環としても良いと思います。

* MySQLユーザのためのPostgreSQL入門
(リナックスアカデミー 学校長 濱野 賢一朗 氏)

興味がある方は是非カンファレンスにお越し下さい。

Flashの0day脆弱性を利用した攻撃が蔓延

追記:この件、どうも0dayでなく既知の脆弱性の問題だったということで決着しているようです。情報ありがとうございます。ただ、このブログにアクセスしている方でもgoogle analyticsによると脆弱性の無いバージョンだと分かるFlashを利用している方がたったの16.6%です。前のバージョン(9.0.115)の利用者は31.78%です。残りのユーザもほとんどが危険なFlash Playerを利用していると思われます。かなり有効な攻撃であることには変わりないようです。Flash Playerは時々アップデートがある、と教えてくれますがあまり役立たないので自分で脆弱性情報を収集してバージョンチェックする方が良いです。

とりあえず9.0.124.0であれば大丈夫なようです。
http://www.adobe.com/jp/support/flashplayer/ts/documents/tn_15507.htm

いろいろ困る事もあるのですがFirefox+NoScriptを利用するとこの種の攻撃のリスクを大幅に低下させられます。

追記2:
Flash attack may as well have been zero-day
http://blogs.zdnet.com/security/?p=1236

結果的には0dayでなかったが同じくらい効果的に攻撃されているではないか、という意見です。私も同じ意見です。このブログでも時々Flashの自動更新は役立たずであり、その結果危険なFlashを使い続けているユーザが多い事を書いています。

Flashのバージョンチェックや設定チェックはお世辞にも分かり易いとは言えないのでWikiにリンク集も作っています。
http://wiki.ohgaki.net/index.php?Flash%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%B3%E3%83%81%E3%82%A7%E3%83%83%E3%82%AF

FlashやQuickTime等のプラグインはエンドユーザにとっては最大の脅威といっても良いくらいですが、あまりその事実は理解されていないと思います。このブログをご覧の方で最新版のFlash Playerに更新されている方はバージョンアップが進み、最新版を利用されている方の割合が17%から30%に向上しています。しかし、向上したと言ってもたったの3割で残りのほとんどは危険なFlash Playerを使い続けています。


もっと読む

誤ったWAFの使い方 – 国連でも

WAF(Web Application Firewall)とは、通常のレイヤー2や3(IP, TCP/UDP)レベルのファイアーウォールよりもさらに上のレベルのアプリケーション層のファイアーウォールです。アプリケーションはレイヤー7とも言われ、ネットワークスイッチなどではアプリケーションの中身まで参照してスイッチングするスイッチはレイヤー7スイッチと呼ばれてきましたが、ファイアーウォールではレイヤー7ファイアーウォールと呼ばれる事は少なく、WAFと呼ばれる事が多いです。

WAFの目的は名前からも明白です。Webアプリケーションを脅威から守るために利用されます。WAFはWebアプリケーションをセキュリティ上の脅威から守る事ができますが、昔レイヤー2/3のファイアーウォールの能力が誇大に広告され、誤った認識で利用されていたように、WAFの能力も誤解されている事が少なくありません。

もっと読む

多数のIISがクラックされる

日本ではサウンドハウスがSQLインジェクションによりクレジットカード情報を盗まれた事が記憶に新しいですが、F-Secureによると51万ページ以上のWebページがSQLインジェクションによりクラックされ、ドライブバイ攻撃に利用さているとしています。

IISサイトにはSQLインジェクションに脆弱なサイトが多いと言われていました。
Googleのリサーチでもアダルトサイト以外の一般サイトの方がマルウェアを含む確率が高いとしているのであまり驚くべき数字ではありません。

SQLインジェクションはJavaScirpt/HTMLインジェクションなどと異なり、簡単に防ぐ事が可能な脆弱性です…
# WAFでと言う意味ではなく、プログラムレベルで
# 完全に防げる脆弱性です。

Webサーバは攻撃対象にされる事が多く、昨年秋から数万台のLinux Webサーバがカーネルレベルルートキットに感染しマルウェア配布に利用されていた事例も記憶に新しいです。

有名サイト(ZD Net Asiaなど)に対して検索フォームとSEOと組み合わせた攻撃も記憶に新しいです。

攻撃の自動化もかなり進んでいるので「自分のサイトは大丈夫」と思っていられる状況ではなくなりつつあります。

私のemailアドレスからのメールに注意してください

私のメールアドレスを利用したSPAMメールが大量に送信されているようです。ここ数日大量のFailureメールを受信しています。内容を見れば一目瞭然だと思いますが、ご注意ください。

# あまり洗練されたプログラムではないようです。MLの購読、購読解除
# アドレスにも送っているようで確認、エラーメールが沢山来ています。

Python 2.5.3にリモートコード実行の可能性がある脆弱性

最近CVEのコピー&ペーストが続いていますがこのブログに書いていた予想通りの展開なのでまたコピーです。

コアとはいえあまり重要ではない箇所の脆弱性ですが、Python 2.5.3にリモートコード実行の可能性がある脆弱性がレポートされています。

CVE-2008-1679

Overview

Multiple integer overflows in imageop.c in Python before 2.5.3 allow context-dependent attackers to cause a denial of service (crash) and possibly execute arbitrary code via crafted images that trigger heap-based buffer overflows. NOTE: this issue is due to an incomplete fix for CVE-2007-4965.

Impact

CVSS Severity (version 2.0):
CVSS v2 Base score: 6.8 (Medium) (AV:N/AC:M/Au:N/C:P/I:P/A:P) (legend)
Impact Subscore: 6.4
Exploitability Subscore: 8.6

Access Vector: Network exploitable , Victim must voluntarily interact with attack mechanism
Access Complexity: Medium
Authentication: Not required to exploit
Impact Type: Provides unauthorized access, Allows partial confidentiality, integrity, and availability violation , Allows unauthorized disclosure of information , Allows disruption of service

直したつもりが直っていないのはよくある事です。直したはずだったCVE-2007-4965は以下の通りです。

CVE-2007-4965

Overview

Multiple integer overflows in the imageop module in Python 2.5.1 and earlier allow context-dependent attackers to cause a denial of service (application crash) and possibly obtain sensitive information (memory contents) via crafted arguments to (1) the tovideo method, and unspecified other vectors related to (2) imageop.c, (3) rbgimgmodule.c, and other files, which trigger heap-based buffer overflows.

関連:
Python 2.5.2以下に任意コード実行の脆弱性
GoogleのPython採用と脆弱性情報の関係

Python 2.5.2以下に任意コード実行の脆弱性

CVE登録されているので私がコピー&ペーストするまでもないですが、予想通りにPythonの脆弱性が出てきました。

CVE-2008-1887

Overview

Python 2.5.2 and earlier allows context-dependent attackers to execute arbitrary code via multiple vectors that cause a negative size value to provided to the PyString_FromStringAndSize function, which allocates less memory than expected when assert() is disabled and triggers a buffer overflow.

Impact

CVSS Severity (version 2.0):
CVSS v2 Base score: 7.5 (High) (AV:N/AC:L/Au:N/C:P/I:P/A:P) (legend)
Impact Subscore: 6.4
Exploitability Subscore: 10.0

Access Vector: Network exploitable
Access Complexity: Low
Authentication: Not required to exploit
Impact Type: Provides unauthorized access, Allows partial confidentiality, integrity, and availability violation , Allows unauthorized disclosure of information , Allows disruption of service

こういう脆弱性にはSELinuxが役立ちます。
未知の脆弱性に対してはSELinuxなどが無いと守るのは難しいです。

SELinuxの効用はわざわざ書くほど事ではない、と思っていましたがMACにより未知の脆弱性に対する防御がある程度できる事を正しく理解されていない場合もあるようです。

SELlinuxなどを導入していれば任意コード実行が試みられても、auditログに記録されログ監視システムなどで攻撃を直ぐに検出できる可能性が高くなります。

サーバを守る側は多くのプログラムを安全に保つ事が要求されますが、サーバを攻撃する側はたった一つの致命的脆弱性か攻撃パスを見つければ良いだけです。サッカーのPK戦のゴールキーパーのように守る側の方が圧倒的に不利なゲームです。この不利なゲームを効果的に戦うにはSELinuxなどのフェイルセーフな仕組みが必要不可欠です。

ゴールに全面(任意コマンド実行攻撃の目標全て)に蓋をするくらいの効果はありませんが、ゴール面積の7割くらいに障害物を置くイメージに近いと思います。守りやすさは比べ物にならないです。

Ruby 1.9.0以下のWEBrickにディレクトリ遷移攻撃脆弱性

WEBrick+Windowsでサービスしているところはあまり無いと思いますがファイルを不正に読み取られる可能性があります。

CVE-2008-1891

Overview

Directory traversal vulnerability in WEBrick in Ruby 1.9.0 and earlier, when using NTFS or FAT filesystems, allows remote attackers to read arbitrary CGI files via a trailing (1) + (plus), (2) %2b (encoded plus), (3) . (dot), (4) %2e (encoded dot), or (5) %20 (encoded space) character in the URI, possibly related to the WEBrick::HTTPServlet::FileHandler and WEBrick::HTTPServer.new functionality and the :DocumentRoot option.

Impact

CVSS Severity (version 2.0):
CVSS v2 Base score: 5.0 (Medium) (AV:N/AC:L/Au:N/C:P/I:N/A:N) (legend)
Impact Subscore: 2.9
Exploitability Subscore: 10.0

Access Vector: Network exploitable
Access Complexity: Low
Authentication: Not required to exploit
Impact Type: Allows unauthorized disclosure of information

スペック上は最大2GBのMacBookに4GBのメモリを搭載

追記:OSからも4GB見えていますが、実際に使えるのは2007年前期のMacBookだと3GBまでです。チップセットの制約(945GMチップセットの制約)でアドレス空間が4GBに制限され、I/Oなどに必要なメモリ領域として上位の1GBが割り当てられているからです。4GB物理メモリが載るならアドレス空間は8GBとか16GBにしてほしかった。

去年前半発売のMacBook

MB063J/A MacBook 2.16GHz Core 2 Duo

を使っています。購入と同時にスペック上最大の2GBにして使っていました。しかし、2GBだとParallelsやVmware Fusionを使うと遅くてぎりぎり我慢できる程度でした。メインノートでOSXからWindows Vistaを使うことも頻繁です。4GBにするためだけに新しいMacBookにしようかと本気で考えていたほどでした。

もっと読む

Apple Software Updateが「新しいアプリケーション」の「アップデート」方法を修正

http://www.macrumors.com/2008/04/18/apple-modifies-software-update-for-windows/

に新しいApple Software Updateのスクリーンショットが載っています。インストールもしていないのに、脆弱性が多く発見されている「Safari」(Webブラウザ)を勝手にインストールしてしまう、と非常に評判が悪かったのですがやっと修正したようです。

新しいApple Software Updateでは、インストール済みのアプリケーションのアップデートと新しいアプリケーションが明確に区別できるようになっている事が分かります。

ところで、QuickTimeも脆弱性の塊、と言えるソフトウェアです。全く使っていないユーザも多いと思われます。早くiTunesとQuickTimeの抱き合わせパッケージングも止めるべきだと思いますが、こちらは修正しない可能性が高いです。Safari強制インストールも問題ですが、QuickTimeの抱き合わせ問題も解消してほしいものです。

GoogleのPython採用と脆弱性情報の関係

GoogleがカスタムアプリケーションのホスティングにPythonを採用しました。これにより多くのセキュリティ研究者の研究対象がPythonに向けられ、PHPで報告されていたような問題がセキュリティ脆弱性して多数レポートされるようになるのではないか、と予想していました。

さっそくセキュリティ脆弱性が多く発見されるライブラリの一つであるzlibライブラリにお馴染みの脆弱性が報告されています。

CVE-2008-1721

Integer signedness error in the zlib extension module in Python 2.5.2 and earlier allows remote attackers to execute arbitrary code via a negative signed integer, which triggers insufficient memory allocation and a buffer overflow.

Impact

CVSS Severity (version 2.0):
CVSS v2 Base score: 7.5 (High) (AV:N/AC:L/Au:N/C:P/I:P/A:P) (legend)
Impact Subscore: 6.4
Exploitability Subscore: 10.0

負の整数が指定された場合が考慮されていないので攻略コードを埋め込まれた圧縮ファイルで任意コードが実行できるようです。よくあるタイプの脆弱性です。

しばらくは色々レポートされる事だと思います。

追記:
ところでこの脆弱性は未パッチです。
http://www.python.org/download/
の最新リリースは、現時点(4/14)でも、2/22日リリースされた2.5.2になっています。このページにはパッチへのリンクもありましたが、この脆弱性とは全く関係ないページが表示されていました。コメントにも書きましたが開発者がセキュリティに大きな注意を払っていない事を前提に対策を考える方が良いです。これは何もPythonやPHPに限った事ではありません。

参考
http://www.atmarkit.co.jp/news/200804/08/appengine.html

関連:

「例えば、PHPを避ける」ってなぁにその曖昧な書き方?

LAMPセキュリティを向上させる方法

LAMPのPをPHPからPerl/Python/Rubyに替えるだけではセキュリティは向上しない証拠

誤解を招く記事 – LAMPセキュリティを強化する4つの方法

追記:
予想通りの展開です。任意コード実行の脆弱性のCVEが公開されています。

Python 2.5.2以下に任意コード実行の脆弱性

Python 2.5.3にリモートコード実行の可能性がある脆弱性