Hatena::ブログ(Diary)

J416 Blog

2015-06-21

Ubuntuでroot権限のシェルを間違えて変えてしまった時の対処法

やらかしたのと強引に戻せたのでメモ

・前提条件
ミスって切り替えたシェル実用的には何もできないshellである。
ユーザはメインのユーザ(sudoers,非root)とシェル設定予定だったユーザがあること。
というかsudoersでまともな状態のユーザがひとつログインできること。
rootのパスは未設定(blank)

・やらかしたこと

とある課題のために、独自シェル(ほぼ何もできない)をuser名hogeログインシェルに設定するつもり。
で、
/bin/hoge というシェルを置いたのはいいが、間違えてroot権限のままchshで切り替えた上でexit。当然再度rootになろうとしても独自シェルなので何もできない。詰む

・戻し方
とりあえずsudo bashrootっぽくなる。
ただ、sudo suと違い、chshでパスワード要求されるし、passwdしても保存はされない
(成功とか言うけど、chshでパスワード打っても駄目)
どうやらパスワード絡みの特権はsudoじゃなくてちゃんとsuしないと駄目らしい。

ということで、間違えて切り替えちゃった/bin/hogebashで置き換えちゃいましょう。
適当にln -s /bin/bash /bin/hoge っていう感じで貼っときゃおk
そうすればsudo suで入れるようになるはず。あとはもう一回chshで戻す。

------------------

ログインシェル弄るときは気をつけましょう。

2014-07-11

W-SIM + スーパーだれとでも定額(簾)の契約について

順調(?)に半年に一回のBlogになってた

2014/5/30、株式会社WILLCOM合併される直前に出てきたスーパーだれとでも定額
月1500円+税でPHS回線の通信/通話が完全定額というもの。
2chでは"ス"ーパー"だれ"とでも定額→から「スだれ」→「簾」と略される。
ここでも以下「簾」と書く。

簾の中身は省略するとして、ここで気になるのはW-SIM機の扱いである。
W-SIMは基本的に一部の例外を除いて「だれとでも定額」が併用不可。
例外として、だれとでも定額初期は付けることができたらしい。

で、実質上位互換の簾だが、どうやら条件次第でできるということ。
通達曰く、
だれとでも定額を既に加入してること
WS027SH(通称灰鰤)+プランGS(SoftBank回線)を利用してる
この2つどちらかを条件としてるらしい。

で、これを聞いた上でやってみたこと。

赤耳から持ち込み機変でイエデンワ2へ。同時に簾つける
→当然問題なし

・尼でポチった黒耳に持ち込み機変
→簾そのままで継続成功。簾+W-SIM

・ストラ既存一括WV無な回線に簾と同時に上述の赤耳を持込機変
→簾追加の上で成功。簾+W-SIM2つ目。


・・・公式の発表ガン無視で何故か通るようです。
ジャケットは灰鰤とアドエスWS009KEですが、エア発番できれば全て問題なし。

最初はアホ甘い審査だろうから事前に対応機種で簾入った上でW-SIMにしたら維持できるかと思って試して通りました。
ストラ一括の件は通らないと思って試して通った。ただそれだけです。

WILLCOMのこのあたりは謎が多いのですが、とりあえず上記の方法でW-SIMが使えました。
ただ、これは2014/7/11時点での話なので、もしかすると今後何か変るかもです。
とりあえず現時点でのW-SIM+簾報告でした。

2013-12-16

mixi Scrap Challenge 2013 第一回に参加してきた #mixi_scrap

気づけば半年に一回くらいの間隔で書くブログになってしまった

12月4日頃にTwittermixi Scrap Challengeというイベントの告知が流れてきた。
mixi engineersさんのツイート: "そんなわけで、偽mixiを疑似攻撃する学生向けイベントScrap Challenge, 年内の申込締切は明日2013/12/5です。忘れずにどうぞ! http://t.co/EperKq9naH #mixi_scrap"
ちょうど時間的に厳しいものの、参加費無料、交通費半額支給ということで、エントリー。
無事抽選に通ったので夜行バス往復して東京渋谷へ行ってきました。

ということで適当な感想とか色々と

まず、mixi Scrap Challengeとは何かというと、mixiクローンサイトにわざと脆弱性を残しておいて、
参加者が2-3人のチームを組んでそれを発見するというもの。
攻撃方法を見つけるとクローンmixiのメッセージを利用して被害者役である「鴨ねぎ[1-4]号」さんに攻撃用URLや内容等を送る流れ。

当日の流れは、
午前中:脆弱性に関する講義
昼休憩
午後:Scrap Challenge本番
夕方:懇親会

参加者は大学(院)生が30人弱くらい。mixi社員側は基本的に新卒入社から2年以内という形だった。
午前中の講義は、主にセキュリティmixiという感じで、mixiの今までの経験を元に
「いままでmixiは何を経験して、何が問題だったのか、どう対処したのか」という内容だった。
さすがmixi、今は第一線とは言えなくとも、ネット黎明期から10年近くSNSを運営してきているだけのことはあって、経験値はすごい。
ちなみに、「ぼくははまちちゃん騒動」も取り上げられていた。
最後の方では9月に始まった脆弱性報告による報奨金制度についての紹介も。ちなみに話してた本人はGoogleAndroid脆弱性報告で結構貰ったとか。
あと、やはり「体系的に学ぶ 安全なWebアプリケーションの作り方」(通称:徳丸本)はおすすめらしい。というか基本。
Amazon:Amazon CAPTCHA
mixi engineersさんのツイート: "徳丸本基本 #mixi_scrap"
@mixi_engineers も基本って書いてた。ちなみにこの記事書く直前に書いました。

昼休憩はmixi社から弁当の支給が。ごちそうさまでした。
お箸に書いてる感じだとテレビロケとかイベントとか向けの弁当らしい。

午後からは実際にクローンmixiに攻撃を開始。
開始と同時に全員黙りこみつつひたすらキーボードを叩く。
問題は・・・内容は書くなと言われてるので書かないけども、徳丸本読んでるなら分かる内容。
むしろしばらくmixiを触ってなかったせいでmixiの使い方を忘れかけてる影響が少しw
ちなみに、攻撃時のメッセージとして「こんにちはこんにちは!」が含まれてるというネタがw
最終的には自分で発見したのは結局001の一つだけという個人的には非常に残念な結果に。
009と011はあともうちょっと頭をひねればできていた気がする。何事も積極的に弄り尽くそう。特に009ェ・・・。
あと、Web系弄るならやっぱりJavascript触らないとなあと。どうすればいいのかわかってるけどうまくできず後回しにした問題とかも。
ちなみに、被害者役の鴨ねぎ3号氏はつぶやき機能を使ってBrainf*ckを投下w

最後に結果発表&問題点の解説。チームとしては予想以上の2位。多分問題と配点のせい。今年初の問題だったから仕方ないね
個人としてはいい経験と勉強になったなと。そしてやはり楽しかった。

終わったあとは懇親会。ピザごちそうさまでした。
mixi社員の人と話ができて、色々勉強になりました。自分のいたところは質問がだいたい就活によってましたがw
会社としてのmixiは、聞いた限りではいい会社だなと。エンジニアにはいいところじゃないかなと。

おわりに
本当にWebセキュリティって大事だなと。
あと、Githubとかでソースコードを公開するのはやはりオススメらしい。
そしてさすがに夜行バス(3列)で0泊2日の東京往復は疲れた。

最後に、参加者、関係者のみなさんお疲れ様でした。そしてありがとうございました。


[追記]
そういえば今年の第二回確定してました。
株式会社ミクシィ
実施日が2014年1月18日(土)、応募締切が2014/1/9(木) 23:59だそうです。
Webセキュリティに興味がある人は行くといいかと。
さらっと徳丸本読んどくといいかなと。
尼とPDF販売やってるそうで。

2013-06-06

京都市営バスのポケロケを調べてみた2

前回の記事の続編

ちなみに、前回の記事書いてから半月くらいの間にいろいろ調べてたら
既に同じような事やってる人を見つけるなど。
そりゃまあ半年くらい前に"-1211"の話が出てたし、同じような事考える人出てくるか。
京都の某大学の人たちの方が進んでるらしいので、多分今まで書いたことはだいたい既出。下も含めて。

・前回書いたURLについて

ポケロケの最後の接近情報を表示するCGI
http://www.city.kyoto.jp/cgi-bin/blclnt.cgi
にあり、ガラケー用ポケロケは全てこのCGI引数を変化させて利用している。
挙動から、引数から裏にあるデータベース鯖を参照しに行ってるっぽい。

引数だが、こんなかんじになっている。

blclnt.cgi?=073.012-401.51.55-405.51.59

意味は

?=見ているバス停.行き先-※(自動音声番号.営業所番号.現在地番号)-(※ループ)

見ているバス停はそのまんまポケロケコード。
行き先はタイトルや一番上の部分で使われてる行き先の表示内容。
()内は前回の記事参照。

このうち、見ているバス停と行き先はデータベース鯖への検索には使われておらず、
この部分を弄ってもタイトルや接近情報の一番上のバス停名などが変わるだけの模様

※の部分が重要で、この部分の情報を元にデータベースを見に行く。
※のデータが渡されると、自動音声番号.営業所番号を元に該当するバスを現在地番号から-12(6つ前のバス停)の範囲内で探してくる。
また、バス停名一番最初の※の2,4,6つ前のバス停名が接近情報の部分に出る。

上記例の場合、西賀茂の401と405、つまり4系統の京都駅前行きのバスを表す。
401は神殿町、405は左京区総合庁舎前経由と2つあるため、その両方を表示するようになっている。
もし405.51.55-のみ削除したURLにアクセスすると、神殿町経由のバスのみが表示されるというわけである。

ちなみに、※の部分は最大15個まで繋げられる。16以上は無視される。
また、※の部分で手前のバス停が違うと表示がおかしくなる。
●の表示はいくつ前のバス停にいるかを表すが、バス停名は一番前の※に依存するため、走ってない区間を走ることになってしまう。

------------------
だいたいわかってるのはこのくらいかな。
ちなみにこの前"ぎおん・よるバス"に乗ったが、その際の自動音声番号が梅津の850だったので、
850.53.12などを打ち込んだが表示されなかった。よるバス等はどうしても出ないっぽい?


続編はあるかもしれないし、ないかもしれない。

2013-05-18

京都市営バスのポケロケを調べてみた

こういう時のためのブログ・・・ということで。

京都市営バスには、ポケロケというものがあったりする。
多分バスロケーションシステム+ポケットとかそんな感じの名前で
バスの現在地を携帯とかで調べられる。
http://www.city.kyoto.jp/kotsu/bls/index.shtm
が、ガラケー用なせいか非常に使いづらい。目的の情報まで遠い。
わら天神前のバス停まで'わ'→'わら'→'わら天神前'まで押さないと出ない。
'わ'から始まるバス停なんて'わら天神前'しかないのに
他にも河原町今出川から北大路BTまで行く時に"BTまで"と"金閣寺方面"の両方見ないといけないとか。
スマホ用もあるけどこれも微妙だし
というわけでもうちょっと見やすいように勝手APIのような物でも作ろうかと。

ちなみに、このポケロケには裏技があるらしい。
ガラケー用の接近情報のURLで、最後に"-1211"をつけると車番等の情報が下に出てくる。
多分デバッグ用だろうけど、ググったらそのへん細かく書いたブログ
http://blogs.yahoo.co.jp/doon24deen/8510541.html
とか出てくるし1211付きURLGoogleキャッシュにまで拾われてるあたり外に出しても大丈夫なんだろう。

とりあえず、-1211で出てくる情報がどんなものか調べてみた。
そこまでバスに詳しい訳じゃないので多分色々間違ってる可能性もあり。
また、意味に関しては想像で勝手に名前つけてます

"-1211"をつけると、こんな表示が出てくる

Bus:(61:17=6276) is at 東寺道(501-2) Wed May 15 15:14:24 2013

Result Array is
1 0 0 0 0 0 0 0 0 0 0 0


こんな意味らしい

Bus:(営業所番号:発信機番号?=バス車番) is at 今向かっているバス停(自動音声番号-現在地番号) 発信時刻


・営業所番号 バス車番と担当路線等から多分こんな感じ

51:西賀茂営業所
53:横大路営業所
54:梅津営業所
60:錦林出張所
61:九条営業所
62:烏丸営業所
63:洛西営業所

・発信機番号 その営業所内でのバスに取り付けられた発信機番号。仮でそう言ってるけどちゃんとした名前があるかも知れない。
番号の振り方は不明だが、営業所ごとに255まで降ってるらしい。


・バス車番
そのまんまバスの車番京都市営バスはナンバーそのまんま
ちなみにバス車番は営業所番号と発信機番号(?)から出してるらしく実際の車番と合わないバスがいくつかある。
転属時に発信機だけ入れ替えたとかそういう理由だろう。
入れ替え関係の対応表は
http://blogs.yahoo.co.jp/doon24deen/8510541.html
にあった。登録されてないのか2つ車番が0とかも出てるらしい。

・今向かっているバス停・発信時刻
だいたい現在地。ポケロケコード一覧にある省略表記で表示される。
どうやらバス側の発信機はバス停を発車し、案内表示を切り替える際に発信しているらしく、発信時刻時点では表示されるバス停の一つ前を出た直後ということになる。
このへんは一つ前のバス停を出ると●が消える仕様と関係あるのかもしれない。

・自動音声番号
車内で使われている自動音声の番号。方向幕とも連動してるらしい。


・現在地番号
ポケロケコードの番号とは別。
多分自動音声のところに入ってるレコード番号?
基本的に始発を0としてバス停一つで2づつ増えていく。
たまに奇数が出てくることがあるが不明。到着案内とかあったっけ。

・Result Array is 
見てる範囲内バスの本数。今見てるバス停から12個先のバス停までのバス本数が出る。
勝手にURL弄ってるとこの表示がおかしくなる。

あとでその2を書く予定。ポケロケのURLとか

Connection: close