The Man Who Fell From The Wrong Side Of The Sky:最新 5 日分

[最新版] [一覧] [前月] [今月] [翌月]

2017/4/23(Sun)

[セキュリティ] Googleアカウントのバックアップ確認コード

先日スマホ(Nexus5)を置き忘れてしまったんですよな。

こいつGoogle認証アプリを入れて複数要素認証のトークン生成に使ってた端末なので、気づいて即

と雄叫びを上げながらバックアップコード使ってあらゆるサービスからMC5ならぬNexus5をキックアウトしないとならん羽目になってもうグッタリでございます。

ところが数あるサービスの中、なぜかGoogleアカウントだけ認証アプリのコード入力を求められた時に

ちゅーよくわからん状態。

いやーこれ乗っ取り済みでこっちがキックアウトされてんのかと思ったんだけど、そもそもロックにPIN4桁使わずクッソ長いパスコード毎回打ち込んでるパラノイアだし、その可能性はまず無いよなぁと。

結局「このマシンは頻繁にログインするから2段階認証をスキップ云々」なガバガバ設定のマシンが1台あったのでそれで助かったんだけど、これもWindows 10 Creator's Updateがここ最近頻繁にクラッシュするせいで、Chromeのプロファイルが壊れてたから昔のバックアップに戻したりで大変だった…

そんで活動履歴みたけど、紛失する直前までのワイのログしか残ってないし、やっぱりGoogleアカウント側がおかしかったんじゃないのかなと。

2016年3月頃に生成したバックアップコードは以下のような書式で、8桁(3+2+3形式)なんだよね。

バックアップ確認コード
<アカウント>@gmail.com

1. XXX XX XXX          6. XXX XX XXX
2. XXX XX XXX          7. XXX XX XXX
3. XXX XX XXX          8. XXX XX XXX
4. XXX XX XXX          9. XXX XX XXX
5. XXX XX XXX         10. XXX XX XXX

日付: CCYY/MM/DD hh:mm:ss

バックアップ コードをすべて使用してしまった場合は、次の URL で新しいコードを生成してください:
https://www.google.com/accounts/SmsAuthConfig
最新のセットのバックアップ コードのみが使用できます。

コードはすぐに取り出せる場所に保管してください。
各コードは 1 回のみ使用できます。

ところが今改めて再作成したら

バックアップ コードの保存
バックアップ コードはすぐに使える状態で安全な場所に保管しておいてください。

1. XXXX XXXX		 6. XXXX XXXX
2. XXXX XXXX		 7. XXXX XXXX
3. XXXX XXXX		 8. XXXX XXXX
4. XXXX XXXX		 9. XXXX XXXX
5. XXXX XXXX		10. XXXX XXXX

(<アカウント>@gmail.com)

* それぞれのバックアップ コードは 1 回しか使用しません。
* さらに必要な場合は https://g.co/2sv をご覧ください
* コードの生成日: CCYY/MM/DD

と、同じ8桁なんだけど4+4形式に代わってて、これを保存したら今度はちゃんと「別の方法でログインを」するで「8 桁のバックアップ コードのいずれかを入力する」が候補に出てくるようになった。

もしかすると互換性のない方法に代わって古い形式は無効にされたんですかね…コワイコワイ。

結論、定期的にバックアップコードが使えるか確認しとけですな、忘れがちだけどもファイルバックアップからリカバリができるか定期的に確認しておけと一緒。


2017/4/22(Sat)

[音楽] MUTEMATH/Changes

完全に見過ごしてたんだけどMUTEMATHって最新アルバム「Vitals」の リミックスアルバムを半年前に出してたのね、しかも新曲入り。

配信オンリーなので全く気付かんかった、つーかyoutubeの公式チャンネルでろくに宣伝しなかったあたりメリケンでもyoutubeって日本のニコ動並みの腐乱死体なんじゃねぇの、まぁ残念でも無ければ当然なんだが。お勧めにいくら興味ない押してもクソみたいなチューバー動画チャンネルばっか出してきやがって。

しかしMUTEMATHは偶然にyoutubeで観たライブのヤバさでファンになったので、プロモーションの場としてのyoutube投げ捨ててしまったとしたらそれは感慨深いものがある。

たしか2007年くらいに友人から音出るオモチャや楽器を改造して変な音出すCircuit Bendingつー遊びが流行ってるときいて、検索したら関連動画かなんかにMUTEMATHのライブ映像が出てきたんだっけかな。またリアルタイムの音楽を聴いたりライブに足を運ぶようにになったきっかけでもある。

そういえば「Odd Soul」ツアーの時には突然 ニコ生でスタジオライブまでやってたし、動画サイトでのプロモーションを重視してた感があったけど、力入れてたのは本人たちでなく当時契約してたWarnerなんかねぇ。

とにかくMUTEMATHはライブが凄いバンドなんだけど、前作「Odd Soul」の完成が遅れるわメジャー契約切れてインディーに戻ったからか、新作「Vitals」出てから2年経っても全然来日しないよな。ホステスエンタあたり頑張ってくれんもんだろうか。いや声はかけてるけど来たがらないとか条件で折り合わないならしゃーないんだけども。

そもそも洋楽アーティストが来日するのは日本国内でのCD販売のプロモーションなわけだけど、アルバム「Vitals」も日本発売がぜんぜんアナウンス無いから輸入盤で買ってしまったよ、結局半年遅れで出たけど。

まぁ音ゲーかアニメの主題歌しか売れないし日本はもはや市場じゃないからなぁ。一部の洋楽好きはフジロックやらサマソニでフェスでいつものUKあたりのロートル共を出しときゃ満足だろうし。


2017/4/21(Fri)

[旅行] 群馬県立森林公園 さくらの里

一昨年以来なんだけど 群馬県立森林公園 さくらの里に花見に行ってきたよ、妙義山の奇岩の麓に咲き乱れるソメイヨシノ、オオヤマザクラ、ヤエベニはいいぞ。

管理センター周辺のソメイヨシノは散りはじめで今週末がラストチャンス、土日には盛大な桜吹雪を散らしてシーズン終了と思われます。 でもソメイヨシノが終っても月末からGWにかけては寒山なんかの八重桜がまた見頃を迎えるので5月上旬一杯は楽しめます。 5/3には妙義山下仁田さくら祭というのをやってるそうです。

ただしメチャクチャ交通の便が悪い所なのよね、自家用車持ってるブルジョアならいいけど。 はるか昔に駐車場で腐らせてたインテグラを廃車にしたプアーとしましてはなかなか行くのが厳しい場所です。

さくらの里の最寄駅は上信電鉄の下仁田駅なんだけど、ワイの最寄り駅の大船駅から行くとすると 東京上野ラインの始発5:09に乗れば下仁田駅には9:23に到着するんですが、妙義山登山口(下仁田側)を通るバス(しもにたバス中之岳線)は9:20発ですでに出てしまった後で 次のバスは11:40まで無いのよね、駅前のタクシー使って駐車場まで4,000円前後かかってしまいます。

このバスに乗るためにはプラス2,990円で新幹線(とき301号)で加速キメれば8:15には着くんだけど、タクシー料金との差がわずかな上に なーんもない駅前でバス待ちに一時間以上潰さないとならんのが困りもの。

これ出発地が横浜駅なら京浜東北線の始発4:22に乗って上野から高崎線乗れば特急料金無しで8:15分着なんだよな、やはり横浜以南には人権は無い。

あとバスにはもういっちょ問題あります、料金は200円で安いのですが中村停留所で降りてすぐの妙義山登山口(下仁田側)からさくらの里までは1時間弱の登り路なので、体力の無い人は厳しいです。

なので今回は高崎から上信電鉄乗って下仁田駅に出るのではなく、信越本線に乗換で松井田駅に出てみました。 松井田からさくらの里まではタクシー以外足はなくやっぱり4,000円弱かかってしまうんですが、新幹線使わずとも8:26には松井田駅には到着できるので1時間も時間的余裕があるという。 なのでこのコースが一番コスパいいかな、なおタクシーは下仁田駅とは違って駅前に常駐してないので事前に予約しておいた方がスムーズにいきます。

ただし管理センターには9時には到着してしまうので、この時間だと妙義山側は順光で綺麗なんですが 管理センターにある展望台のハイライトである金鶏山をバックにしたソメイヨシノはちょうど逆光の時間帯なんですな。

時刻と光線の関係からするとやっぱり下仁田側からさくらの里の管理センターまで山昇ってくルートの方がいいんだけどね。 まぁ体力あれば一度下まで降りてまた登ってりゃいいんですが。

帰りはリッチマンならまた松井田駅からタクシー迎車すればいいのですが、ワイはプアーなもんで(念押し)財布に優しく今度こそしもにたバス中之岳線に乗って帰ります。 さっきも書いた通りさくらの里からバス停までは1時間くらい歩かないとならないのと、最終バスの時刻が15:49(土日は15:46)とクソ速いので15:00前には下山をはじめないとならんのが難点。 まぁ山間部だし15:00過ぎたら光線の具合的に写真撮影も切り上げ時でもあるのでええわもう。ちなみにこの最終バスはスクールバス扱いなので無料です。

この最終バスは16:08に下仁田駅着なんですが、また上信電鉄との連絡が悪くて16:00発高崎行は出てしまった後で、次の電車16:58分まで待たなければならんのも難点やね。 朝も3分差だったり帰りも8分差だったりと連絡が悪いというか、観光客には地元民の足は絶対に使わせないゾという意図を感じる…なお地元民もバスは使ってないもようでガラガラです。

別解としてさくらの里から妙義神社の方まで出れれば乗り合いタクシー(菅原線)の最終が18:06まであるんですが、さくらの里から妙義神社までは 中間道(関東ふれあいの道)の一本杉コースを通るちょっとした登山らしく時間が読めないのと、途中の金鶏橋が去年の台風で崩落中で通行できないということで諦めた。 一本杉コースを避けた場合は金鶏山をぐるっと周る県道196号をひたすら歩く感じっぽい、この道もさくらの里を一望に見下ろせていいんだけどね。

紅葉シーズンも良いそうなので今度は秋に行きたいんだけど、ここ数年の紅葉狩りは甲府の昇仙峡でな…


2017/4/19(Wed)

[Windows] Windows 7 のセキュリティアップデート統合済DVDを作成する (そのNT4)

ちょっとした歴史のお勉強、なぜ本題から先に書かないかのか?書けないのか?書きたくないのか?書く度胸がないのか?( 椎野四段活用)

@ Windows 2000/XPまでのサービスパック及び修正パッチ

この頃の修正パッチはHotfix Packageと呼ばれていました、特徴としては

ちゅー感じ。

なもんで修正パッチ適用済のインストールCDを作成するにはインストーラーの /integrate スイッチ機能(通称Slipstream)を使うだけで可能だったのです、具体的にな作業としては

C:\Users\tnozaki> mkdir C:\installer
C:\Users\tnozaki> xcopy E:\ C:\installer /s /e
C:\Users\tnozaki> WindowsServer2003.WindowsXP-KB914961-SP2-x64-JPN.exe /integrate:"C:\installer"
…

みたいな感じでインストールCDの内容物をコピーし修正パッチの数だけSlipstreamを実行すればよかったのよね。

またこのSlipstreamの機能を持たなかったりバグってたり *1適用順によって問題が発生する修正パッチについては、インストールCDの内容物以下にある

というセットアップ情報ファイルの

[SetupHotfixesToRun]
KB911164.exe /q /n /z /b:SP1GDR

セクションにスクリプトを書くことでインストールプロセスの最後に実行させることができます、修正パッチは

[SetupData]
CatalogSubDir="\AMD64\svcpack"

セクションで指定されてるフォルダ以下に置きます。

さらには最初のログインのタイミングでも修正パッチを適用することも可能、これはさっきのSVCPACK.infのSetupHotfixesToRunセクション実行時にレジストリの

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx

というキーに実行したい処理を登録します。

@ECHO OFF
SET KEY=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx
SET SVCPACK=%~dp0
%SVCPACK%REG.EXE ADD %KEY%\901 /VE /D "DirectX End-User Runtimes" /F
%SVCPACK%REG.EXE ADD %KEY%\901 /V 1 /D "%SVCPACK%DIRECTX_AUG2008_REDIST\DXSETUP.EXE /SILENT" /F
...

えーっとREGコマンドはリソースキットあたりから持ってくるんだっけか…もう記憶が…

こうして完成した修正パッチ統合済のインストールイメージをCD-R/DVD-Rなどに焼くわけですが

ので、サードパーティー製のツールにお世話になります。

前者はCygwinあたり入れてdd(1)コマンドで切り出せますが、どこをどれだけ切り出すかはcd9660やEl Torio形式の知識が必要になるので

  • BBIE - Bart's Boot Image Extractor v1.0
  • という簡単ツールでやってる人が多かったもよう、なおすでに一次配布元は消滅してるので道に落ちてるものを拾い喰いする時は以下略。

    Cygwinのdd(1)で切り出すなら ここでも読んでちょうだい。

    市販のCD-R/DVD-R/BD-Rライターのソフトは当時ブータブルメディアなんて作れないウンコばっかだったので、Cygwin向けにビルドされた

    に含まれるmkisofs(1)を使ってました *2

    $ mkisofs -b <ブートカタログ> -hide <ブートカタログ> -hide-joliet <ブートカタログ> -no-emul-boot -J -N -V "ボリューム名" -o <ISOイメージ名> <インストーラー展開先>
    

    とか実行すればおk

    これらの処理は自分でバッチスクリプト書いても簡単にできるレベルなんですが、よく判ってない素人でもGUIでポチポチすれば作成できるツールもいくつか存在しました。

    あたりが有名どころ、長々とグダグダ書いた説明なんか読まずにこれ使えば良かったんや!

    ところがですね、Vista以降はインストールDVDの内容物も修正パッチの形式も全然別物になってしまいましてな、これらのツールは全部使い物にならなくなってしまったんです。

    @ 次回

    Windows Vista以降はどうしたらいいのかを書く予定。


    *1:Windows2000の頃はかなりの数がバグっててほとんどSetupHotfixesToRunで処理する必要がありましたね…
    *2:最近のCygwinには公式にmkisofs(1)が含まれてますが実体はgenisoimage(1)なんよね、前者は後者のwrapperとして提供されてます。


    2017/4/18(Tue)

    [Windows] Windows 7 のセキュリティアップデート統合済DVDを作成する (その3.51)

    前回KB番号からダウンロードリンクを探すスクレイピングを紹介しましたが、そもそも必要なKB番号をリストアップするにはどうすればよいか。

    そもそも論としてまともな企業ならWindows Server Update Services(WSUS)を建ててる(クソ企業は知らん)わけでそこから修正パッチ配信すればいいわけですが、今回の記事はあくまで個人であって…あっ個人でもボリュームライセンスとWindows Serverを保有してWSUSも構築済みたいなお客様、興奮せずにお静かにお願いしますお帰りは こちらです。

    どっかに必要なパッチ一覧が公式でまとまってりゃいいんですが、そんものは無さそうなのでシステムから情報を引っこ抜くしか無さそうです。

    @ Windows Management Instrumentation(WMI)を使う

    すでに最新の状態に更新されてるWindows 7マシンが手元にあるのなら

    を使うことで「現在適用済」の修正パッチ一覧がとれます。

    ちなみにWMIはWindowsマシンをネットワーク越しに情報収集したりできる、まぁSNMPの高機能版みたいなもの。

    実際の叩き方は

    でおk。

    ただし.Net Framework 4系に対する修正パッチ(KB2901983,KB3102433など)のKB番号は別製品扱いでここには出ません、そして

    がなぜか出てこない感じ、あと大元のKB番号に対して修正パッチが対象製品によってさらに別のKBが降られてるようなのもあります。

    なもんでどうやら完全自動化するのは難しそうな感じっすね、それに修正パッチには依存関係があって

    みたいなのもあるんですが、それはここからだと読みとれなかったりもします。

    @ Windows Update履歴から取得する

    最新状態のWindows 7が無い場合はもうこれWindows Updateに問い合わせるしかないわけです、作業としては

    で良さそうです、まぁそれなら最新にした後にさっきのWMIでどうこうすればいいんですがこっちの方法だと 依存関係のあるパッチの適用順もわかりやすいわけです(ちょっと動機として弱いナ…)。

    Windows Updateの更新履歴は

    ででてくるんですが、これ一括してファイルに出力とかボタンのひとつも用意してないのほんと無能ですわな。 まぁWindows XP時代は印刷ボタンとかあってそれもまた「印刷かよ…」と思ったんですが。

    よく訓練されたWindows使いであればComponent Object Model(COM)経由でWindows Updateをスクリプトで操作できます、ワイがgdgd記事書くより本家TechNetの記事読んだ方がいいかと。

    なんやねんこのタイトル…なお記事が書かれたのが干支が一回りする前の2005年で忌まわしきPowerShellが生まれる前ですので、VBScriptというより呪われた悲惨な言語で書かれてますが以下略。

    $session = New-Object -ComObject "Microsoft.Update.Session"
    $searcher = $session.CreateUpdateSearcher()
    $searcher.QueryHistory(0, $searcher.GetTotalHistoryCount()) | Select-Object Title | Where-Object {$_.Title -match "(KB\d+)"} | ForEach-Object {
      Write-Output $Matches[1]
    }
    

    うーんKB番号はタイトルから切り出さないと取れないちゅー無能の極みなインタフェースやな…

    それとこれの出力からはWindows Defender(KB915597)とか悪意のあるソフトウェアの削除ツール(KB890830)、それとドライバーの更新関係は除く必要があるので注意。

    ちなみに必ずクリーンインストールからはじめる必要があります、Windows Updateの履歴って %SYSTEMROOT%\SoftwareDistribution(通常はC:\Windows\SoftwareDistribution)以下にあるんですが

    ようなケースだと履歴が全部消えてたり壊れてたりもするのでな…使えないのですよ。

    めんどいから仮想環境にぶち込んでアクチ猶予期間を利用して作業したくなりますが、これ過去回で説明した「再イメージ権」の侵害にあたるので以下略。

    @ 直接Windows Updateサーバに問い合わせる

    さっきのCOM経由でのスクリプトによるWindows Update操作ですが、直接更新ファイルの検索クエリをアップデートサーバに投げて結果を貰うこともできます。

    $session = New-Object -ComObject "Microsoft.Update.Session"
    $searcher = $session.CreateUpdateSearcher()
    $result = $searcher.Search("Type='Software'")
    $updates = $result.Updates
    for ($i = 0; $i -lt $updates.Count; $i++) {
      if ($updates.Item($i).Title -Match "(KB\d+)") {
        Write-Output $Matches[1]
      }
    }
    

    履歴関係なくサービスパックのレベルや追加ソフトに合わせた結果が帰ってくるのでこっちの方が役立ちそうなんだけど、それでも必要なはずのパッチがだいぶ足りてない感じなので、こっちのやり方はあまり追求しないでおこう…

    深入りしたい人は

    読んでどうぞ。

    @ 次回

    次こそ本当にインストールDVDへの修正パッチ統合作業について書く。


    *1:なおUTF-16で出力しやがるので以下略


    [ホームへ] [ページトップへ]