min117の日記

初期desireもち。趣味Mac,メインFedora,仕事xp。

bash atコマンドを利用して指定時間に録画実行する → 成功

前回記事でうまくいかなかった atコマンドによる予約録画実行

min117.hatenablog.com

atコマンドが(予約実行ファイル.shの)引数を解釈できないのが原因だった。ならば、引数を含めて動くスクリプトファイルにしてしまえばよい。以下、改めてまとめる。

 

 

 

<atコマンドによる予約録画まとめ>

①予約実行する自作スクリプトrecNHK.sh

 ニュースを10秒間実行し、ファイル名にコメントをつけてtsに録画。引数y を指定しておくと録画後にmp4に圧縮してくれる。

$ recNHK.sh 10 y コメント

f:id:min117:20180318090633p:plain

自作録画スクリプト

②問題点

 atコマンドでは(shの)引数を解釈できないので、①の予約録画が失敗する。

f:id:min117:20180318090312p:plain

9:01(18日03月2018年)に recNHK.sh を実行しているが、shに引数があると(atコマンド全体がおかしくなって)エラー終了してしまう

予約ファイル「myAT.sh」を別に作って解決

$ vim myAT.sh

f:id:min117:20180318092835p:plain

録画スクリプト recNHK.sh引数を含めて書く

f:id:min117:20180318092851p:plain

④atで予約ファイルを実行

 1分後(now+1min)に、myAT.shを実行させる。

$ at now+1min -f myAT.sh

f:id:min117:20180318094059p:plain

バッチリ予約実行できた

f:id:min117:20180318094212p:plain

これで、ワンライナーで予約録画できる環境ができた。あとはこれをWebから実行できる画面を作ってiPhoneAndroidから予約録画できるようにする

次回記事に続く。

min117.hatenablog.com

 

情報処理安全確保支援士試験(SC)午前 Ⅱ 「NTPリフレクション攻撃」

引き続き試験の準備。

min117.hatenablog.com

今回の問題はこれ。平成28年秋期より。NTPリフレクション攻撃について。

f:id:min117:20180317231451p:plain

ウは引っ掛け。いかにもソレっぽいが不正解。

リフレクションねぇ…イメージとしては「反射」。リフレクト。リフレイン。つまりユーミン

www.youtube.com

画像でいうと、ガラスが反射するイメージ。つまりプリズマン。

f:id:min117:20180317232330j:plain f:id:min117:20180317232334j:plain

めっちゃ反射する。

f:id:min117:20180317232327j:plain

とまあ、冗談はさておき、NTPサーバに何やら投げつけて応答を待つのかなぁと…思ったらアウト。ウに引っ掛けられる。ウではない。

答え:エ

NTPリフレクション攻撃とは、NTPサーバに対して送信元を偽り問い合わせを行うことで、レスポンスデータが大きくなる要求を利用した攻撃のことらしい

いや、意味わからない。

 

まんまの解説サイトみつけた。これでやっと意味がわかった。

tech.nikkeibp.co.jp

要はこれ。

f:id:min117:20180317233755p:plain

攻撃者は、送信元IPアドレスを「攻撃対象(被害者サーバ)のIPアドレス」に偽装した要求を、踏み台とするNTPサーバに送信します。

→ つまりこういう感じか。

----- 送信要求パケット ------

 実際:(送信元IP)攻撃者サーバ

 偽装:(送信元IP)被害者サーバ

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

NTPの下位プロトコルであるUDPは、通信相手を確認せずにパケットを送信するコネクションレス型なので、送信元IPアドレスを容易に偽装できます。

要求を受け取ったサーバは、そのレスポンス(応答)を返します。送信元IPアドレスが偽装されているため、レスポンスのパケットは攻撃対象(被害者サーバ)のIPアドレスに送信されます。これにより、攻撃対象(被害者サーバ)のサービスの運用や提供を妨害します。

一般的にリフレクション攻撃では、レスポンスのデータが大きくなる要求を送信します。データ量を増幅させることで、攻撃の威力を増大させます。

 

なるほどね。要は跳ね返ってくる(リフレクションする)巨大なデータを仕込んでおいて、それが攻撃対象(被害者サーバ)に向くようにした偽データをNTPに送って、その反射で被害者サーバをダウンさせる攻撃というわけだ。

RaspberryPi 使ってNTP立てて、実際にローカル環境でやってみようかな。どこかの週末で試す。

情報処理安全確保支援士試験(SC)午前 Ⅱ 「DIAMETERとRADIUS認証」

午前 Ⅰ を通過したので、午前 Ⅱ  からの試験準備を進めていく。

min117.hatenablog.com

過去問をやって、考えたことを残していくのが一番手っ取り早そう。問題集で進めていく。

今回の問題はこれ。平成28年秋期より。DIAMETERとRADIUS認証について。

f:id:min117:20180317224539p:plain

Audit(監査)と答えてしまいそうだが間違い。Auditではない。

RADIUS認証は、仕事でもしょっちゅう聞く単語。AD(ActiveDirectory)を組んだ環境でネットワーク監視センサー製品(例えばトレンドマイクロのDeep Discovery Inspector)で通信監視していると、しょっちゅうRADIUS認証エラーが出ている。危険度はたいてい「低」なので日常業務では無視してしまっているが、そもそもRADIUS認証って何なのよ?を詳しく調べたことはなかった。「ドメインのクライアント認証に使うプロトコルか何かだろうなぁ」くらい。

 

 

 

Wikipedia で調べればすぐ分かることは分かるが…長い… 説明長い。読む気せん。

RADIUS - Wikipedia

今回の問題に関連するところだけピックアップ

f:id:min117:20180317225258p:plain

ということで 答え:ア(Accounting)

DIAMETERは、RADIUSの後継プロトコルのようだ。機能強化版プロトコルらしいけど実務ではほとんど耳にしないので無視

(まとめ)

RADIUS認証(とDIAMETER認証)でやってることは3つ。AAAモデルと呼ぶ。

・認証(Authentication):接続してきたやつを「こいつ誰?」と識別

・承認(Authorization):その接続にOK出すかどうかを判断。

・記録(Accounting):利用の事実を記録する

 

追記)

RADIUS認証の脆弱性を狙って(Kali Linux とやらで)ハックする記事も発見。metasploitは使ってないみたい。あとでゆっくり見る。Virusとか踏まないように気をつけないと。それ用の仮想環境からみることにする。

www.offensive-security.com

情報処理安全確保支援士試験(SC)午前 Ⅰ を通過

平成29年の10月に受験した情報処理安全確保支援士(SC)試験。

min117.hatenablog.com

受験直後に雑感を書いたものの答え合わせもせずに放ってしまってあった。

min117.hatenablog.com

 

 

さすがにノー勉強では歯が立たない難しい試験。まあダメだったろうなと思っていたら、ふいに午前Ⅰ通過の通知書が届いた

f:id:min117:20180317220719p:plain

平成31年度秋期試験までは…申請があれば午前Ⅰ試験を免除します」とある。俄然やる気が出た。

f:id:min117:20180317220730p:plain

この通知が届いたのが年明けすぐくらい。平成30年春期の受験(4月15日実施)を速攻で申し込んだ。5,700円也。安くはないけど、こういうのにかけるお金は厭わない。

www.jitec.ipa.go.jp

情報処理技術者試験には、国もだいぶ力を入れてやってきたようだ。

https://www.jitec.ipa.go.jp/1_00topic/topic_20071225_shinseido_4.pdf

 とくに、情報処理安全確保支援士(SC)はつい最近できた試験で、受験しがいがある。

www.ipa.go.jp

以前は「情報セキュリティスペシャリスト」という試験だったはずだが、必要性が高まった?のか、新たな名前が与えられたようだ。ロゴマークが設けられたりと、力の入れようが見て取れる。

f:id:min117:20180317223215p:plain

合格者は正式に掲示されるようだ。

f:id:min117:20180317223500p:plain

こういう試験を取ればいいというものではないが、自分の知識を客観的に見える形にしておくのは、それはそれで結構大事なことと思っている。

と、気づいたら既に試験まで1ヶ月を切ってしまっている。また行き当たりバッタリで受験してしまうところだった。今回はできるだけ準備して臨むことにする。

AppleからWWDC案内メール到着 → チケット応募するか悩む

AppleからWWDCの案内メールがきた。

f:id:min117:20180314071540p:plain

年間10,000円の登録料を払ってデベロッパ登録(開発者登録)していると来る?らしい。動画で見せられないのがもったいないけど、このページの躍動感のすごさ。文字すべてが柔らかく、跳ねるように動くデザイン。すごい。

f:id:min117:20180314071550p:plain

「登録できますよ、今なら」

f:id:min117:20180314071602p:plain

ログインしてみる。

f:id:min117:20180314071611p:plain

自分の情報を入力させられる。開発者として登録済みの内容は最初から埋められてくる。選択肢の並び順や内容に、性別や人種への配慮が見える。さすがはApple

f:id:min117:20180314071617p:plain

f:id:min117:20180314071634p:plain

174,800円か…もう少し考えよう。

f:id:min117:20180314071627p:plain

 

 

bash atコマンドを利用して指定時間に録画実行する → 失敗

自作の録画スクリプトがある。ニュースを10秒間実行し、ファイル名にコメントをつけてtsに録画。引数y を指定しておくと録画後にmp4に圧縮してくれる。

$ recNHK.sh 10 y コメント

f:id:min117:20180318090633p:plain

 

これを、指定した時間に自動実行したい。つまりは予約録画をしたい。

いつもは /etc/crontab に書いていたが、1回だけ実行できれば足りるのならatコマンドというのがあるらしい。

eng-entrance.com

やってみる。コマンドをファイル.shから実行するには -f オプションを使うようだ。

 

f:id:min117:20180311225716p:plain

これにならって、2018/03/11 22:56 に recNHK.sh を実行する予約をしてみる。

# at 22:56 11032018 -f recNHK.sh 10 y atコマンドテスト

f:id:min117:20180311225734p:plain

syntax error. Last token seen:

でエラーが出てしまった。引数を解釈していないらしい。atコマンドでスクリプトファイル.sh を実行するときの引数のつけ方を調べなきゃいけない。

追記)

以下テストしたが全てダメだった。

9:00(←18032018年の)を指定して recNHK.sh 10秒間録画し、圧縮はn(ノー実行)、コメント「atコマンドテスト」をつけて実行する例。

失敗)

at 9:00 18032018 recNHK.sh 10 n atコマンドテスト

f:id:min117:20180318090112p:plain

失敗)

at '9:00 18032018' recNHK.sh 10 n atコマンドテスト

f:id:min117:20180318090146p:plain

失敗)

at 9:00 18032018 'recNHK.sh 10 n atコマンドテスト'

f:id:min117:20180318090329p:plain

ファイルを指定するので「-f」オプションをつけてみるものの、やはり失敗する。

失敗)

at 9:00 18032018 -f recNHK.sh 10 n atコマンドテスト

f:id:min117:20180318090309p:plain

失敗)

at 9:00 18032018 -f 'recNHK.sh' 10 n atコマンドテスト

f:id:min117:20180318090312p:plain

失敗)

at 9:00 18032018 -f 'recNHK.sh 10 n atコマンドテスト'

f:id:min117:20180318090316p:plain

追記2)

 しばらく思案。発想を変えたらうまくいった。

min117.hatenablog.com

 

 

vim で改行を挿入する

vim の文字列置き換えで、改行を入れたい時がある。

例えばこんなのを

f:id:min117:20180311094145p:plain

こうしたい。

f:id:min117:20180311094152p:plain

改行を入れるときは ¥r を使うようだ(¥n ではない)。

qiita.com

 

やってみる。

今回は @ の前に改行を入れれば、やりたいことは達成できる。

$ vim twitter.txt

:s/@/¥r@/g

f:id:min117:20180311094541p:plain

一発。vimは本当に素晴らしい。

f:id:min117:20180311094152p:plain