はてなキーワード: tweetdeckとは
まあチェックいうてもTweetDeckで検索かけてるだけですが。
今回の記事削除のツイはこの検索タブにもちょくちょく出てきていて、どうしたんやろなと思った頃に謝罪文が発表された。
シノドス側にメディアとしての落ち度があったことは疑いようがない。一方で、シノドス及びその関係者が反原発派からの憎悪の対象になっていたことは留意しておきたい。
例えば、社団法人の方のシノドスの所在地(おそらくは芹沢氏の自宅)が JAEA の社宅裏というだけで、JAEA とのつながりがあると批判するツイートがある。ばかばかしいがこういうツイートが「被曝回避のための有料メールマガジン」発行人から寄せられていた。
https://twitter.com/cmk2wl/status/959502649971195904
今なお、ファクトチェック福島について言及しているツイートは憎悪の対象になっているものや、反対に「原爆はなかった」「原発はなかった」という謎理論に引用されているツイートが目立つ。
シノドスに協力してくれる方はいると思うので、芹沢氏には体制変更も含めた休息をとられるべきではないだろうか。大きなお世話だとは思いますが。
Twitterに毎日貼りついてます。使ってるクライアントはTweetDeckです。なんかツイッターが好きというよりはTweetDeckが好きなんじゃないかという気もしてきてる。TLが細くて140字がいい感じに詰まって見えるのがかっこいいと感じてるのかもしれない。あとNotificationsとActivityを見るのも好き。僕はファボ魔なんですが、ふぁぼ魔はふぁぼ魔を引きつけるらしくて、NotificationsとActivityがえらい活発です。誰かが書いたものを見るのも楽しいですが誰かのふぁぼを見るのも楽しいです。ところでぼくはいいねを頑なにふぁぼと言い続けている人です。5chとかも「今はなき2ch」みたいな言い方をします。あるいはしれっと2chとか言います。
2chで今よく見てるのは小説家になろう系スレ、VOICEROID関連のスレ、ラーメンスレ、お気に入りの漫画スレ。VIPやなんJにもたまに行きます。なんJはすぐに落ちます。VIPは速度だけ見るといい塩梅のまったり感があります。しかし荒野とは言いませんがかつての勢いは欠片も残っていません。それでも書き込んでしまうのは習慣だからです。VIPでゲーム制作とかしてる人たちをウォッチしています。僕と君の夏休み。姉は一級建築士。楽しそうですね。
はてなもつい見てしまいます。ほぼ無意識にはてなのトップページを開いてしまいます。完全に無意識にしてやられています。最近ツイッターのアカウント名を改名なさったふろむだ先生は無意識の活動を洗練させるとつよいみたいなことを言われてましたが、はてなを開いてしまう無意識というのはどう考えてもだめです。はてなに無意識を支配されてしまった哀れな人間です。人間というのもおこがましいかもしれません。
google検索よりもはてブ検索を使うようになってしまったくらいにははてな好きです。http://b.hatena.ne.jp/search/text?safe=off&sort=popular&q=、これを辞書登録しています。末尾に検索したいキーワードを付け加えたり、URLの冒頭にこれをはっつけて検索すると、楽しいです。ブクマダイバーより楽ちんです。個人的にはタグ、タイトル、本文全部のせのはてブ検索ができるようになるといいなーと思っています。ふつうにできるのかもしれません。はてブはストック的に活用するとまた違った地平が見えてきます。すごい偏ってそうな地平ですね。
増田はホッテントリ入りしたのしか見ません。素の増田はしんどいからです。なんjや今のVIPを見るのよりもしんどい。なんでかはわかりません。
昨日とはまた違った話題だけど、Twitterで絵師さんの垢が凍結されたと次々流れてくる。
過去のツイートをほじくりだして「コ○ス」とかを通報しているようだ。
(関係ないけど、関西でコ○スは挨拶がわりだけど大丈夫なん?)
まさかフォローはしてないだろうし、RTも同好の士をフォローしてないと流れてこないはず。
(自分は公共の場で、その類のエロ絵がTLに流れて来たらクライアントをそっと閉じる。必要ならミュートすればいい)
想像だけど、まなざしの村民は、エゴサですごいエロいキーワードで探したりしてるのかな。
TweetDeckとかのカラム型クライアントで、エロ絵師さんがずらっと並んでいるのは壮観だな。
やべえ興奮する。
(Qiitaのほうに2019年版があるので今はそちらを…。こちらは2015年版な感じです。)
Vimの外でもVim風の操作ができたりするのは彼らのおかげだ。
デフォルト、オプション、プラグイン、アドオン、様々な手段で提供されている。
Vimを使っている人でも使うかどうかは人それぞれだし、
どの程度Vimを再現できているのかも実装によってまちまちなのだが、
なんだかんだで有名どころのテキストエディタや統合開発環境では何らかの形で提供されることが多くなったように思う。
(一覧に無いものは私が知らないか忘れているだけなので、実際にはまだあると思う)
統合開発環境 | 名称 |
---|---|
Visual Studio | VsVim |
Xcode | XVim |
Eclipse | Vrapper |
NetBeans | jVi |
IntelliJ IDEA | IdeaVim |
MonoDevelop | Vi Mode |
Qt Creator | FakeVim |
テキストエディタ | 名称 |
Emacs | VIP |
Emacs | Viper |
Emacs | Evil |
Atom | Vim mode |
Atom | vim-mode-plus |
Sublime Text | Vintage |
Sublime Text | Vintageous |
Brackets | vimderbar |
Visual Studio Code | Vim |
Light Table | Vim |
ブラウザ | 名称 |
---|---|
Firefox | Vimperator |
Firefox | VimFx |
Firefox | Vimium |
Chrome | Vimium |
Chrome | Vrome |
Chrome | Vichrome |
Chrome | cVim |
Opera | VimOperate |
Opera | wasavi |
Safari | sVim |
Safari | vimari |
いくつかのコマンドでも。
コマンド | 分類 |
---|---|
bash | シェル |
zsh | シェル |
ksh | シェル |
tcsh | シェル |
yash | シェル |
tig | gitインターフェース |
less | ページャー |
cgdb | デバッガ |
LuaKit | Webブラウザ |
名称 | 操作 |
---|---|
jkで前後の項目に移動 | |
TweetDeck | jkで前後の項目に移動 |
jkで前後の項目に移動 | |
Google+ | jkで前後の項目に移動 |
Tumblr | jkで前後の項目に移動 |
GitHub | jkで前後の項目に移動 |
jkで前後の項目に移動 | |
Pixiv(複数投稿) | jkで前後の絵に移動 |
ニコニコ静画(漫画) | jkでスクロール |
ニコニコ静画(電子書籍) | hjklで前後のページに移動(wasdでも可) |
はてなブックマーク | jkで前後の項目に移動 |
ゲームも。
名称 | 操作 |
---|---|
nethack | hjklで上下左右に移動(yubnで斜め移動) |
> viのhjklは先行する何かの影響で実装された記憶があるので、操作が共通だからというだけで「viを忍ばせる」というのは言い過ぎではないかという気がする
> まして「vimを忍ばせる」というのは、ちょっとその、まあなんというか…
確かにVimではなくviの模倣だったりして無理があった…。hjklの大元を辿るとどこに辿り着くんだろう(ビル・ジョイの使っていたキーボードとは別?)
アホか
ついったーに送るにはいつか生のキーでXORしなきゃいけなくって、その時ダンプを取ったら丸見えだよ、っていう話だろ
だからこの作者が「プロテクト強化した(ドヤァ」とかやっても意味ないよ、と。
tweetdeckの中の人は多分それはわかっていてだから面倒なプロテクト(笑)はしなかったんだろうけど、もふったーの作者であるところのスーパーハカー様はなんか勘違いされているようですね
「プロテクトかけたアルゴリズムを実装したバージョンに差し替え」たなんて言われると本当に「プロテクト」がかかっているのか確かめてみたくなるのが人情というもの。というわけで、プロテクト強化後のもふったー(v0.9.6b)からconsumer secretが抜けるか試してみた。結論から言うと、あっけなく取り出せた。以下に手順を記す。
動作がよくわかっていないアプリケーションを解析して仕様を明らかにすることをリバースエンジニアリングと呼ぶ。ソフトウェアのリバースエンジニアリングは基本的に対象を逆アセンブルしてひたすら読むことによって行う(その補助に1命令ずつ実行してレジスターやメモリーの様子を観察することもある)。しかし、よっぽど小規模なものでなければオブジェクトコード全体を逆アセンブルして最初から最後まで読むなんてのは不可能だ。人間の読速度には限界があるし、時間も有限だからだ。そして、詳しい動作を知りたい部分というのは全体のごく一部であることが多いので全逆アセンブリを読むのには非常に無駄が多い。
だから、リバースエンジニアリングではいかに詳らかにすべき動作を行っているコードを絞り込むか(=読むべき逆アセンブリを少なくするか)が重要になる。
この場合も同様だ。TwitterのGUIクライアントを頭から読むのは到底無理なので、どうやって解析すべきコードの範囲を狭めるかを考えた。それにはOAuth認証においてconsumer secretがどのような役割を果たすのかを知る必要がある。
OAuth認証で、consumer secretはそのままサーバーに送信されたりはしない。signatureの生成にHMAC-SHA1が使われ、その鍵にconsumer secretが使われる。HMACは次のように算出される。
HMAC (K,m) = H ((K ⊕ opad) ∥ H ((K ⊕ ipad) ∥ m))
ここで
である。
まずはこのあたりから攻めようと思った。SHA-1の計算にはいくつか特徴的な定数が使われるので、そこからSHA-1の計算に使われているであろう関数444190を特定する。この関数のエントリーポイントに中断点(ブレークポイント)を設定してOAuth認証をさせるべくもふったーの「ブラウザで認証」ボタンを押す。狙い通り中断するので関数を抜けるまで実行する。関数401100の4012DAに出た。少し下を見るとこのようになっている。
CPU Disasm Address Hex dump Command Comments 00401311 |. 33F6 xor esi, esi 00401313 | 8D8C24 A40000 /lea ecx, [local.54] 0040131A |. 394C24 14 |cmp dword ptr ss:[local.90], ecx 0040131E |. 75 0E |jne short 0040132E 00401320 |. 3BF5 |cmp esi, ebp 00401322 |. 73 29 |jae short 0040134D 00401324 |. 0FB68434 A400 |movzx eax, byte ptr ss:[esi+esp+0A4] 0040132C |. EB 21 |jmp short 0040134F 0040132E | 3BF5 |cmp esi, ebp 00401330 |. 73 1B |jae short 0040134D 00401332 |. 8B5424 18 |mov edx, dword ptr ss:[local.89] 00401336 |. 52 |push edx ; /Arg1 = [LOCAL.89] 00401337 |. 8D8C24 FC0000 |lea ecx, [local.33] ; | 0040133E |. 8BD6 |mov edx, esi ; | 00401340 |. E8 CB4D0000 |call 00406110 ; \mofooter.00406110 00401345 |. 83C4 04 |add esp, 4 00401348 |. 0FB6C0 |movzx eax, al 0040134B |. EB 02 |jmp short 0040134F 0040134D | 33C0 |xor eax, eax 0040134F | 34 5C |xor al, 5C 00401351 |. 888434 B80000 |mov byte ptr ss:[esi+esp+0B8], al 00401358 |. 83C6 01 |add esi, 1 0040135B |. 83FE 40 |cmp esi, 40 0040135E |.^ 72 B3 \jb short 00401313 00401360 |. 895C24 3C mov dword ptr ss:[local.80], ebx
0040134F | 34 5C |xor al, 5C
が注意を引く。もしかしてこれはopadとのxorではないか?
00401351 |. 888434 B80000 |mov byte ptr ss:[esi+esp+0B8], al
はxorした結果を格納している。
先ほどの中断点は無効化しこのループを抜けた地点である401360まで飛ばす。この時点でesp+0B8を見ると次のようになっている。
Hex dump 64 2E 16 64|37 04 32 6D|0F 0D 26 29|3A 37 1F 2F| 18 69 6E 6E|0D 25 29 33|11 34 29 69|12 36 24 1E| 05 16 33 6A|04 3B 0E 68|7A 5C 5C 5C|5C 5C 5C 5C| 5C 5C 5C 5C|5C 5C 5C 5C|5C 5C 5C 5C|5C 5C 5C 5C|
あとはこれと5Cとをxorすればconsumer secretが手に入る。終わり。
はてなは増田のスーパーpre記法で半角の<>が含まれていると投稿が出来ないのを早く直してください。
もふったーの作者から反応があった。「本気だったつもりのもふったーのデバッグ処理が残ってた」らしい(http://blog.livedoor.jp/blackwingcat/archives/1763951.html)。修正したとのことなので最新版(v0.9.6e)を見てみた。確かに若干変更されているが何の問題もない。SHA-1の呼び出しに中断点を設置して渡されているバイト列を見るだけ。
CPU Disasm Address Hex dump Command Comments 00401324 |. 8D4424 20 |lea eax, [local.102] 00401328 |. 50 |push eax ; /Arg1 = 00401329 |. E8 623A0400 |call 00444D90 ; \mofooter.00444D90
ここでeaxが指すメモリーを見ると以下のようになっている。
01 23 45 67|89 AB CD EF|FE DC BA 98|76 54 32 10| F0 E1 D2 C3|00 02 00 00|00 00 00 00|40 00 00 00| 40 4F 73 53|62 54 5C 7E|59 57 53 42|55 45 7A 57| 61 47 7A 5B|42 4F 7B 61|5D 66 5E 7A|42 7F 40 63| 79 66 05 55|79 4C 60 42|02 10 36 36|36 36 36 36| 36 36 36 36|36 36 36 36|36 36 36 36|36 36 36 36|