hack
HTMLとJavaScriptで,IEの脆弱性を攻撃できる。 (※具体的なサンプルコードも本記事に掲載) それが「Use After Free」および「ヒープスプレー」。 ちょうど2014年4月にWindows XPのサポート終了後すぐ,この脆弱性を攻撃するウィルスが発見され,大騒…
ソフトウェア開発のためのフォルダ構造を,自動的に生成するバッチ。 例えばSVNリポジトリの立ち上げ時などに,ワンクリックで,チームで作業可能な開発プロジェクトのひな型を生成することができる。毎回同じようなフォルダ構造を手動で作るのは面倒なので…
自作のプログラムから,BIOSの設定を変更する事は可能なのか。 例えばブートデバイス設定やブートシーケンスの設定は,ふつうはPC起動時の「BIOS設定画面」から手動で変更するわけだが,これらの項目を,自作プログラムから書き換える事はできるのか。 (1…
Javaでは,クラス内でprivate宣言されたメンバは,普通は外部からは呼び出せない。しかし,リフレクションを使えば,それも可能。 本エントリでは,以下のサンプルコードを示す。 (1) privateなインスタンス変数の呼び出し方法 privateなクラス変数の呼び…
バッチのまとめTOPへ Webアプリケーションのセキュリティチェックや自動テストを行なうために,WebサーバやAPサーバに対して,「任意のHTTPリクエスト」を手軽に発行したい。 「任意のHTTPリクエスト」とは,例えば・・・ リファラ(リンク元)改ざん ⇒画面…
バッチのまとめTOPへ IE8で,ファイルのアップロードを自動化する方法を発見した。 以下はWSH/JScriptによるサンプルスクリプト。IE8(Windows XP)で動作確認済み。 upload.js // IEを起動 var ie = WScript.CreateObject("InternetExplorer.Application");…
バッチのまとめTOPへ WSH/JScriptで, レジストリのキーの存在判定 レジストリの値の読み取り レジストリの値の書き込み,新規作成 をするためのサンプルコード。 サンプルコード reg.js // 対象とするレジストリのキー var reg_key = "HKEY_LOCAL_MACHINE\\…
JavaScriptプログラミングのTOPへ JavaScriptで,文字列の内容を確認するためには alert( str ); のようなコードを書く。 しかし,本当は str.alert(); のような書き方をしたい。 そう思うのでは。 文字列(「str」とか 「"hoge"」 )を書いてから,そのあと…
バッチのまとめTOPへ Windowsのコマンドプロンプト上で,Win32 APIなどのDLLを呼び出して実行する。例えば,コマンドプロンプトだけで,任意のキー操作イベントをエミュレートできる。 サンプルコマンド:コマンドプロンプトから,画面をキャプチャする。(P…
今から3分で,Webページ上で,Microsoft .NET のコードを動かそう。JavaScriptにできない事も,.NETなら可能になる。 今回は,Windowsアプリ用のUI部品(カレンダー)を,Webページ上で使ってみる。 メモ帳さえあればよい。 Visual Studioは不要。 .NETの詳…
バッチ・マクロのTOPへ Excel VBAは,パスワードで閲覧制限をかけることができる。 ※その方法: Excelブック内のマクロをパスワードで保護する方法 http://www.happy2-island.com/excelsmi... VBE上で,ツール>VBAプロジェクトのプロパティ>保護 を開く。 …
バッチ・マクロのTOPへ Excelから,VBAのコードを吸い出すバッチ。 モジュールごとに,(モジュール名).bas の名前で保存される。
バッチのまとめTOPへ 下記の記事では、バッチでかんたんに文字コード変換する方法を述べた。 JScript・WSHで、UTF-8でファイルの読み書きをする方法 (ADODB.Streamで文字コード変換するサンプルコード)http://d.hatena.ne.jp/language_and_engineering/200…
Windows上でアプリケーションを自動で操作するためには, プログラムによってマウスポインタを任意の場所へ動かし クリックさせる といった制御が必要になる。 この「マウスの自動操作」はとても汎用的な操作なので,どんなプログラミング言語からもライブラ…
「ウィンドウとは何なのか?」をテーマに,前回の記事までで,以下の事を学んだ。 Windows でウィンドウを表示するための手段はたくさんあるが,実はどれも user32.dll を呼び出している。 アセンブラのプログラムから直接 user32.dll を呼び出し,ウィンド…
前回の記事では以下の事を学んだ。 Windowsにおいてウィンドウを表示する機能は,Windows API という API によって提供されている。 Windows API の中で,特に user32.dll というファイルがウィンドウ処理を担当している。 (そして user32.dll の中味を逆ア…
JavaScriptプログラミングのTOPへ 問JavaScriptで,100以下の素数を列挙するコードを作成し実行しなさい。ただし 1ミリでもマウスポインタを動かしてはいけません。 1バイトでも新規ファイルを作成してはいけません。 さあ,どうぞコーディングを始めて下…
実行中のプログラムは,メモリ上に存在する。 そのメモリ上のデータを読み取れば,アプリケーションが扱っている生のデータを,そっくりそのまま取得できてしまう。 ユーザがどのような値を入力したか,アプリケーションがどこと通信してどういうデータを取…
JavaScriptプログラミングのTOPへ 数日前の わずか1.7キロバイトのJavaScript マリオ風のゲーム (脱力系) http://language-and-engineering.hatenablog.jp/entry/20081006/1223209263 という記事では,JavaScriptのショートコーディングを少し試みた。 そ…
逆コンパイル, および逆アセンブルのための各ツールと,実行手順を列挙する。.exeと.classが対象。 ※リバースエンジニアリングにあたっては,ソフトウェアの使用契約にくれぐれも留意すること。 (1) .exeファイル 逆アセンブラ 逆コンパイラ (2) Java …