カテゴリ:Web( 59 )

e87.com(千趣会イイハナ) 花を贈るなら日比谷花壇

Firefox + Greasemonkey + All-In-One Sidebar

ここのところ、Firefox で Greasemonkey を使おうとしたところ、
お気に入りの All-In-One Sidebar(AiOS) を有効にしていると、
Greasemonkeyのスクリプト管理画面が表示されない問題があり、
AiOSを無効化して使っていました。

ですが、新しい情報をキャッチ!

こちらで公開されている 最新ベータ版をインストールする事で、
AiOSのサイドバーの中で、Greasemonkeyのスクリプトの管理が出来るようになりました。

Greasemonkeyで何をやりたかったかというと、
横浜市図書館のHPの改造です。

横浜市の図書館のページは、画面遷移がすべてFORMのPOSTで処理されているため、
特定のページのブックマークが出来ません。

それだけなら、まだしも、検索結果のリンクをクリックした時には、裏でJavaScriptが動いて、
FORMに値をセットしてSubmitするので、新しいウインドウで表示する事も出来ません。

かなり困ったちゃんなので、強制的に新しいウインドウで開かせるためのスクリプトを作りました。

こんな感じの超簡単なスクリプトです。

// ==UserScript==
// @name Yokohama Library - New Tab
// @namespace http://isobe.exblog.jp
// @description Open Link in New Tab
// @include https://www.lib.city.yokohama.jp/cgi-bin/Swi5sken.sh?*
// ==/UserScript==

document .forms[0].target = "_blank";
//----------^--------- (本当はここにスペース無し。セキュリティ上繋げて書いちゃだめだって)

method を "GET" にするスクリプトも作ってみましたが、
なぜかWeb側がどうさせず。
パラメータは渡されるのですが、ページが正しく表示されません。
以前は、手打ちでパラメータをURLに指定したら、
そのページが表示できていたので、なにやら対策が
施されたのかも知れません。

あまり研究して、不幸にも図書館のシステムがダウンしてしまったら、
犯人扱いされてしまうかも知れないので、この辺で我慢しときます・・・(笑)
[PR]
by isoq | 2011-02-26 23:54 | Web
e87.com(千趣会イイハナ) 花を贈るなら日比谷花壇

セブンネットショッピング が危機的状況らしい。

おごちゃんの雑文 » Blog Archive » これは「エンジニアの反乱」ではないか?からスクラップ:
12月 18th, 2009 by ogochan

ヨーカドーのネット通販が酷いことになっている。

セブンネットショッピング、会員の個人情報がダダ漏れ。さらにネラーに注文番号の規則性を解析される

セブンアンドワイ、XSS脆弱性が見つかる。また社員が2chを覗いていたことが判明

セブンアンドワイ、Google検索で個人情報が丸見えだった模様。また今回の件でアフィリエイトにまで影響が

とうとう「オープンソース化」までされる始末。

セブンアンドワイ、今度はソースコードを流出させる。

svnで公開なんてやってくれるぜ。私は初期版をcvsの類で出すのは消極的なんだけど(これはいずれ連載の方で)。

ただ、この前の「はまちちゃん」もそうなんだが、これは実は「エンジニアの反乱」ではないか?

もちろん、一連の事件はエンジニアが結託してサボタージュをやったとか、そーゆー類では断じてないだろう。みんなそれぞれのエンジニアは、自分の能 力の範囲、自分の仕事の範囲ではしっかり働いていただろう。それは良心がどーとかとか、プロ意識がどーとかってものじゃなくて、

エンジニアとしての本能

だと言ってもいい。



ほんと、すごいことになってるみたいですね。
だだ漏れらしい。
(自分では確認していませんが)

知名度の高いサイトほど狙われるわけで、
最初から分かっているのだから、
公開前にある程度のセキュリティレベルを
確保する必要がありますよね。。。

最近は、悪な人達の間では、XSSがはやっているんですね。
以前はSQLインジェクションとかでしたが。

ここ2~3年で、当たり前のようにAJAXやFlashを利用したサイトが増えてきたので、
WebブラウザのJavaScriptを切ったり、アドオンを無効にしたりすると、
一般的な多くのサイトが、まともに見れなくなってしまいます。
私も、最近は、ほぼ完全にデフォルト状態のままブラウザを使用しています。

なので、XSS(クロスサイトスクリプティング)とかにはまると怖いですね。
よくオンラインショッピングで、クレジットカード使うので。
出来れば、JabaScriptもFlashもOFFにしたいです。。。

情報漏洩というと、私の仕事でも、可能性が無くはないわけで。
でも、今のところ、私の仕事関係では、インターネットとは完全に分離された
ネットワーク環境での業務システムが多いので、それほどセキュリティに
神経質になっていません。
が、今後、お客の要望で拠点間をWebで接続するような
話が出てくると、俄然、セキュリティを強く考慮しなくてはならなくなります。

そうなったら、世間の注目度は無いに等しいと思いますが、(^^;)
こうならないように、しっかりと勉強しなければ。。。
[PR]
by isoq | 2009-12-19 01:34 | Web
e87.com(千趣会イイハナ) 花を贈るなら日比谷花壇

Microsoft がおすすめの SEO 方法

昨今、検索エンジンの結果ページの先頭に表示させたい人たちに人気のSEO
(Search Engine Optimization:サーチエンジン最適化)ですが、
Microsoft がおすすめする方法もあります。

ま、一般的でベーシックな方法ではありますが、これをやっているのといないのとでは、
大きな違いが出るのは間違いないです。
[PR]
by isoq | 2009-12-16 00:20 | Web
e87.com(千趣会イイハナ) 花を贈るなら日比谷花壇

いまさら WAMP

Linux + Apache + MySQL + PHP の組み合わせが LAMP なら、
Windows + Apache + MySQL + PHP の組み合わせは、 WAMP だろう!
と思ったら、すでにそんな言葉は当たり前の世の中なのですね。

今更ですが、WAMPに挑戦し始めたので、そのメモを残そうかと。

【使用するもの】

- Windows XP sp3

- Apache 2.2.13

- MySQL 5.1.37

- PHP 5.3.0

全て最新版を使用。
だいたい、最新版で固めると、互換性の問題があってなかなかうまくいかない。
が、あえてここは新しもの好きと言うことで、願を掛けて見る。
互換性が問題になるのは、主に既製のWebサイト構築ツール
(WikiやBlogなど)が特定のバージョンでしか動作確認が取れていないため。
だと勝手に仮定すると、自分でプログラミングして構築しよう!
と思いたったときには、ちょっと情報が少ないだけで、
問題は少ないはずと信じて進む!

まず、MySQLのMSI版(mysql-5.1.37-win32.msi)をダウンロードしてきて、
インストール。
ほとんどMSIのインストーラで設定が完了。
楽すぎる、、、
インストールの途中にルートパスワードを入力するが、デフォルトは空だから、
2番目と3番目の欄に新しいパスワードを設定する必要が有る。
ここさえ間違えなければ、(私は一度間違えた)誰でもインストールできる。


次に、Apache(apache_2.2.13-win32-x86-no_ssl.msi)をダウンロードしてインストール。
これも、インストーラでインストールするだけで、ほぼ動作する。
少し変更した点は、以下の通り。

【httpd.conf】 ファイル

変更

AllowOverride None

AllowOverride All

DirectoryIndex index.html

DirectoryIndex index.html index.htm index.php index.phps

追加

LoadModule php5_module c:\PHP\php5apache2_2.dll
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

【extra/httpd-userdir.conf】
UserDir "My Documents/My Website"

UserDir disabled

次に、PHP(php-5.3.0-Win32-VC9-x86.zip)をダウンロード。
Cドライブのルートに、PHPフォルダを作成して、その中に展開。
php.ini-development ファイルをコピーして、php.ini へ改名して編集。
編集後、c:\WINDOWSフォルダへ移動します。

【php.ini】
; extension_dir = "ext"

extension_dir = "c:\PHP\ext"

;extension=php_gd2.dll

extension=php_gd2.dll

;extension=php_mbstring.dll

extension=php_mbstring.dll

;extension=php_mysql.dll

extension=php_mysql.dll

で、PHPの動作確認用のファイル(info.php)を作成して、
Apacheのドキュメントルートにコピー。

【C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\info.php】
<?php
phpinfo();
?>


Webブラウザのアドレスに、 http://localhost/info.php と入力して、
PHPの情報ページが表示されれば、とりあえずApacheとPHPが動いていることが
確認できる。

PHPが動かない場合は、MSVC(Microsoft Visual C)のランタイムが
入っていない事が原因の可能性があります。
MSのダウンロードセンターから、Visual C++ Redistributable Packageを
検索してダウンロードしてみましょう。

ダウンロードされてしまう場合は、httpd.conf 内のスペルミスなどをチェック。
また、Apacheが起動できない!と言う場合も同様。
もしかすると、IIS等の他のWebサーバーがすでにインストールされていると、
同じポート(80番)をすでに使用している可能性があるので、要確認。
また、エラー内容は、ログファイルを確認すると、原因がわかることも。

---
次は、PHPでいくつかサンプルを作ってみて、
その後、MySQLにテーブルを作ってみて、
PHPから繋げてみて、PHPで整形して
ブラウザに表示できるまでが出来れば、
後は何でも応用できちゃう。
[PR]
by isoq | 2009-08-11 01:09 | Web
e87.com(千趣会イイハナ) 花を贈るなら日比谷花壇

Hotmail は セキュリティが高い!

Hotmailはかなりセキュリティ意識が高い。

しばらくぶりにログオンを行うと、画像認証画面が表示される。
普通のWebメールなどでも、よくあることだが、Hotmail では、それが超強力なのだ。

その画像認証画面がこれだ。

a0002261_1765529.jpg


。。。

解読不可能。。。

試しに、音声でも聞いてみた。

がやがやと背景音が鳴る中で、

「ヴィッ......グォッ.....ジョッ......」

っと、地球上の文明とは思えない発音。

ロボットだけじゃなくて、まっとうなユーザもログインできないとは。

これぞ究極のセキュリティといえる。
[PR]
by isoq | 2009-02-08 17:10 | Web
e87.com(千趣会イイハナ) 花を贈るなら日比谷花壇

IEコンポーネントでページをMHT形式で保存

geckofx を試したんだけど、User Agent の設定がまだ出来ないのと、Web ドキュメントの保存機能がいまいち(HTMLでしか保存できない)ので、IEコンポーネントを試しました。

やりたいことは、Webページの保存なので、Mozillaに強くこだわる必要はないし。

Webページの保存は、HTMLと画像が同じファイルに収まるとGOODなので、IEのMHT形式で保存できたら良いな~と思い、とりあえずWebを検索したけど、なかなか難しそう。

いろいろ調べると、コードは出てきたけど、いまいち動かない。
試行錯誤の上、次のようにして動きました。


using ADODB;
using CDO; // COMコンポーネントの Microsoft CDO for Windows 2000 を参照設定する
...(中略)...
private void SavePageAsMHT(string url, string path)
{
CDO.Message message = new CDO.Message();
message.CreateMHTMLBody(url, CDO.CdoMHTMLFlags.cdoSuppressNone, "", "");
ADODB.Stream stream = new ADODB.Stream();
stream.Type = ADODB.StreamTypeEnum.adTypeText;
stream.Charset = "US-ASCII";
stream.オープン※((object)System.Reflection.Missing.Value,
ConnectModeEnum.adModeUnknown,
StreamOpenOptionsEnum.adOpenStreamUnspecified, "", "");
message.DataSource.SaveToObject(stream, "_Stream");
stream.SaveToFile(path, ADODB.SaveOptionsEnum.adSaveCreateOverWrite);
}

// オープン※ は、 Open に置き換えてください


できあがったファイルも、ちゃんとIEで読み込んで画像もOKの様です。

あとは、これを ごにょごにょ 編集して、またMHTで保存できればよいのですが。。。
[PR]
by isoq | 2008-11-19 00:19 | Web
e87.com(千趣会イイハナ) 花を贈るなら日比谷花壇

Geckoとは

Geckoは、Mozillaプロジェクトで開発されているレイアウトエンジンの名前です。元々は、NGLayout と命名されていました。

Geckoの機能は、HTMLやCSS、XUL、JavaScriptなどのWebコンテンツを読み込み、ユーザのスクリーンにレンダリングしたり、プリントアウトすることです。 XULベース アプリケーションでは、Geckoは、アプリケーションのユーザインターフェイスのレンダリングにもまた使われています。

Geckoは、FirefoxやMozilla Suite、Camino等のいくつかのブラウザを含む、たくさんのアプリケーションで使われています。(完全なリストについては、Wikipedia の Gecko に冠する記事を参照してください。) Geckoの同じバージョンを使用している製品は、同一の規格をサポートしています。

原文
Gecko is the name of the layout engine developed by the Mozilla Project. It was originally named NGLayout.

Gecko's function is to read web content, such as HTML, CSS, XUL, and JavaScript, and render it on user's screen or print it. In XUL-based applications Gecko is used to render the application's user interface as well.

Gecko is used in many applications, including a few browsers, such as Firefox, Mozilla Suite, Camino, etc. (for a complete list, please refer to Wikipedia's article on Gecko.) Products using the same version of Gecko have identical support for standards.

[PR]
by isoq | 2008-11-18 18:23 | Web
e87.com(千趣会イイハナ) 花を贈るなら日比谷花壇

XULRunnerとは

XULRunner は、FirefoxやThunderbirdのようにリッチな XUL+XPCOMアプリケーションのブートスラップとして使用することができるランタイムパッケージです。それは、それらのアプリケーションのインストール・アップグレード・アンインストールのためのメカニズムを提供します。また、XULRunnerは、他のプロジェクトやプロダクトにMozillaテクノロジーの埋め込みを可能とする1つのソリューションである libxul も提供します。

原文
XULRunner is a Mozilla runtime package that can be used to bootstrap XUL+XPCOM applications that are as rich as Firefox and Thunderbird. It will provide mechanisms for installing, upgrading, and uninstalling these applications. XULRunner will also provide libxul, a solution which allows the embedding of Mozilla technologies in other projects and products.


●XUL:ユーザインタフェースマークアップ言語(wikipedia
XMLでUI(ウインドウ・ボタンなど)を記述できる言語仕様。

●XPCOM:クロスプラットフォーム コンポーネント オブジェクトモデル(wikipedia
プラットフォーム間で同じインターフェイスのオブジェクト(ライブラリ)を利用できるようにするための仕組み。
[PR]
by isoq | 2008-11-18 17:31 | Web
e87.com(千趣会イイハナ) 花を贈るなら日比谷花壇

Geckoコントロールを使用して自作ブラウザを作成する その1

とある計画がありまして、Geckoベースのブラウザを作成しようと思っています。

とりあえず、Geckoを組み込むところまで。

使用する環境は、Visual C# 2008 Express Edition です。

ステップ1

まず、Mozilla のダウンロードサイトから、XULRunner なるものをダウンロードします。

ftp://releases.mozilla.org/pub/mozilla.org/xulrunner/releases/

現バージョンは、1.9.0.3 でした。

ステップ2

つぎに、Google Codeの geckofx プロジェクトサイトから、geckofx をダウンロードします。

http://code.google.com/p/geckofx/

ダウンロードしたら、適当な場所に解凍します。

ステップ3

Visual C# を起動して、適当なWindows フォーム プロジェクトを作成します。

フォームを表示して、ツールボックスを右クリックし「アイテムの選択」を選択。

「ツールボックス アイテムの選択」 ウインドウで[参照]ボタンを押し、解凍したSkybound.Gecko.dll を選択します。

GeckoWebBrowser コントロールが追加されるので、フォームにドラッグ&ドロップします。

ステップ4

プログラムを書きます。
赤字部分を追加します。

// Program.cs
namespace gozira
{
static class Program
{
[STAThread]
static void Main()
{
Skybound.Gecko.Xpcom.Initialize("xulrunner");
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
}


// Form1.cs
namespace gozira
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)
{
geckoWebBrowser1.Navigate("http://www.yahoo.co.jp");
}

}
}


ステップ5

ダウンロードした XULRunner を解凍して、xulrunner フォルダをプロジェクトの出力先ディレクトリ(bin\Debug)へコピーします。

このフォルダ名が、Skybound.Gecko.Xpcom.Initialize("xulrunner"); の引数に対応しています。

ステップ6

プログラムをビルド。実行します。

Yahoo!のトップページが表示されたら成功です。

(Yahoo!のトップページが表示されますが、UserAgent が馬の骨(どこの誰?という意味)なので、Yahooがブラウザの種類を特定できず、全機能を利用できないとの警告が表示されます。)
[PR]
by isoq | 2008-11-18 01:20 | Web
e87.com(千趣会イイハナ) 花を贈るなら日比谷花壇

IIS Webサイトの発行・配置・インストール・クローン・コピー

ローカルIIS上に作成したWebサイトを本番サーバーへインストールする一番よい方法は?
サイトの詳細な設定や仮想ディレクトリ(環境によらず同じ)などの設定をまとめて、簡単にインストールするためのインストーラを作成したいので、IISのサイトのインストール方法などを調べてみた。

●Visual Web Developerには、Webサイトの発行という機能があるらしい。
(Express Editionにはない。)
この機能を使用すると、プリコンパイル済みのサイト(ソースコード以外)を直接コピーまたは、手動コピーすることで、サイトを移動できるらしい。
でも、これで移動できるのは、構成ファイルとそのプリコンパイル済み実行ファイルのみと思われる。

要確認事項
・仮想ディレクトリなども配置できるのか?

IIsComputer2インターフェイスのExport / Import メソッドを使用して、メタベースを丸ごとインポート・エクスポートできるらしい。
これいけるかも。

その他参考サイト:
Internet Information Services (IIS)

how to duplicate a site programmatically?

Import and Export(MSDN ライブラリ - Visual Studio .NET 2003)
[PR]
by isoq | 2008-08-29 01:58 | Web
e87.com(千趣会イイハナ) 花を贈るなら日比谷花壇