2週間の短期留学 in Cebu

今回は、英語力の向上と他国の人たちとのコミュニケーションを目的に2週間の短期留学へ行ってきました!

1.なぜ行こうと決意したのか

高校時代は英語は嫌いではなかったのですが、大半が義務感でやっていました。 最近のサイバーセキュリティの最新情報は英語が主流で、技術のドキュメントなども英語が多く、英語ができないと成長できないと思いました。 また、接客業のアルバイトをしていると時々外国のお客さんが来たときに、伝えたい事が伝えられないのがとても悔しくて、行こうと決意しました。

2.費用

費用は合計で25万円程度。 (自腹だったのでかなりきつめ…)
往復の交通費、授業料、海外保険代、3食の食事代、光熱費、水道代などの生活に必要不可欠なものは全て含んで25万円程度。
お土産を多く買いたい人や、土日に観光をしたい人は30万程度あれば安心。

3.初日から最終日までの授業

初日は、成田空港からセブ島のマクタン空港まで行って、マクタン空港から学校へ送迎バスで行ったんですけど、日本とのギャップに驚きましたねw 片側2車線しかないのに3台も車が走ってるし、3秒に1回ぐらいのペースでクラクションが鳴ってましたねw しかも、かなり大きい交差点しか信号がなくて、後の交差点は信号がないので歩行者も車が猛スピードで走行してるのにお構いなしに横断してるので本当にチャレンジャーだと思いましたねw 聞いた話ではスピード規制がないので、空いていたら普通に100kmのスピードで走ってる車もいました。(帰国時に空港に向かう時間が夜中の4時でかなり空いていたので、運転手は軽く120kmか130kmぐらいは出していましたねw)

2日目は、午前中にレベルチェックテストをやって、午後に近くのAyala mallというショッピングモールで各自買い物をした感じです。

3日目から最終日までの平日は朝から夜まで授業で必須ではない授業も間にあったので、その時間はひたすら英単語と英文法の勉強してました。

最終日は、18時30分ぐらいから卒業式でした。 これまた日本とは全く違う雰囲気の卒業式で、日本の卒業式は寡黙な感じの卒業式ですが、留学先の学校(SMEAG)の卒業式は宴会かと思うぐらいの雰囲気でみんなギャーギャー騒いでて、終始大爆笑してましたねww(毎週金曜日が卒業式)

4.食生活について

行く前はかなり心配してましたが、思ったより全然食べれる感じでしたね。 ただ、パターンが結構決まっているので、飽きましたね。 米がパサパサしていて、ずっと心の中で「日本の米が食べたい」と思ってましたw
学校の近くにレストランなどが何店舗かあって、日本食のレストランもあったので、それはすごく良かったです。

5.部屋について

部屋は2,3人で合同で使用するんですけど、シャワーの出がかなり悪くて困りましたね。 一番気がかりだったのが、部屋に小さいアリのような虫が結構いたのでそれも嫌でしたね。(何日か経つと慣れました)
後は、光熱費や水道代は「合計の金額÷部屋の人数」だったので、同部屋の人とどういった感じで使っていくかのコミュニケーションも必要でした(同部屋の人が同じ学校の人だったので良かった)

6.精神面と体力面について

最初の週は精神的にきつかったですね。
初日にセブ島の治安の悪さを見たのと、2日目のタクシーの運転手が行先を伝えても知らないと言って勝手に出発したのでかなり焦りましたね。
後は久しぶりの海外という事もあって気も張ってたので、精神的にかなりつらかったですね。
最終週は、体力的にきつかったですね。
最初の週の疲れたが溜まってるのと、みんな風邪をひき始めて、自分も喉がやられてかなり辛かったですね。
海外へ行くときは、風邪薬や胃薬必須です!

7.先生と他国の生徒について

先生はみんな優しかったですね!
全然わからない人にもちゃんと紳士に向き合ってくれて、発音も徹底的に教えてもらいました。(発音良すぎて逆にわからなかった時も…w)
たまに、プレイベートの話も英語でしてくれるので楽しくできました。
ただ、英語の説明を英語でする/されるがあったのはかなりハードルが高かったですねw
他国の生徒はとにかく英語が出来過ぎてて、「なんで来てんの?www」っていう感じでしたねww
でも、他国の生徒も自分と年齢が近いこともあってすぐに色んな友達ができました。 韓国人や台湾人の友達が結構できましたね。

8.英語力の向上について

正直なところ2週間だけではそこまで向上しないですね。
半年とか1年以上いないとなかなか身につかないです。
でも、Listening力とReading力はかなりついた実感はあります!
本当は長期で行きたかったんですけど、自腹で払える範囲にも限りがあったので…

9.英語を英語で理解する

これ本当に難しいです。
中学生ぐらいから英語を日本語に翻訳してしまう癖がついてしまって、会話の時にListeningしたものを一回脳内で日本語に変換してから英語にして、Speakingも日本語を英語にしてからSpeakingするので、かなり辛い…
英語を文字などではなく、イメージ(絵など)でとらえるのがコツ!
後は、英語授業ではなく、英語授業を受けるのが本当に大事!

10.感想

行ってよかったですね!
何より、英語を義務感ではなく、「やりたい」「話したい」のように変わったのが一番の収穫です。 他国の文化も知れたので良かったです。
後は、韓国人の友達ができたので、就活が終わっていたら、来年の夏休みあたりにソウルに行って、色々案内してもらう予定です!
その時までにもっと英語力を向上させます!!
有意義な2週間でした。

CCENT(ICND1)合格体験記

今回はCisco資格で一番下位資格のCCENTに挑戦してきました!
量が多くて大変でした!

1.試験結果

 まず試験結果ですが、合格でした!
1000点中832点の合格ラインで、自分の点数は846点というかなりギリギリな点数でしたw f:id:sottisotti:20180902095147p:plain

2.勉強に使用したツール

 ping-t、白本、Ciscoインストラクターの教え

3.勉強方法

 ping-tは1ヶ月ダラダラとやり、残りの2週間ぐらいで一気にやったという感じですね。
8割以上は金にしましたが、残りの2割程度は金にできませんでした。
 白本は、通学時の電車の中で1週読むぐらいと、最後の模試を解くぐらいしか手をつけてないです。
 Ciscoインストラクターは、学校の先生がインストラクターだったので、色々と有力な情報を提供して頂き、試験のコツなどを教えて頂きました。

4.次の目標

 次はICND2のrouting and switchingを取得して、CCNAを取得する予定。頑張ろう!
 Security+も受ける予定なので、色々頑張らないと!!

ソフトバンクテクノロジーの5日間のインターンシップに参加して

今回はソフトバンクテクノロジーさんの5日間のセキュリティエンジニア体験インターンシップに参加させていただき、数多くの収穫があり、自分の成長につながるものとなりました!

1.辻 伸弘さんのありがたいお話

http://csirt.ninja/

ロジカルに伝えること 人に伝えることの大切さ

経験がやくにたつにことがたくさんある。

価値のある遠回りはどんどんすると他の人が見れないものがたくさんある

辻さんの思うセキュリティ

便利なものを可能な限り便利なまま、危険性を可能な限り排除する仕組み

安心と安全

目的を絶対に忘れてはいけない

安全を程よくして実現そして、安心してもらう

辻さんが伝えたい事

伝えるではなく、伝わることが大事

知っていると分かるは違う

分かるとできるも違う

できると伝えるも違う

伝えると伝わるは違う

人は中身ではなく、行動で決まる

結果で決まる(何をしたのか)

2.にゃんたくさんのありがたいお話

インシデント発生後を考える 事実と推測を明確にする 小さな事からアウトプットする

にゃんたくさんが普段リサーチに利用しているWebサイト

IPA(情報セキュリティ)・JPCERT/CC・US-CERT/Security NEXT

3.実践的な報告会の反省点

報告の導入部分が一番大事

サマリーは3行ぐらいで済ませて簡略化する

本番では、社長がずっといることはほとんどないので、最初に結果を伝える

端的に結論を言ったあげた方がわかりやすい

業務をいかに止めないか、簡単にできる対応方法が大事

インシデントを起こさないためにどうすればいいのかが知りたい

他に大事な事

お客さんの求めていることを考える

話の流れをイメージしてストーリー建てをする

報告会に来る相手を確認して、その人達視点で資料を作る(リテラシーの把握)

優位性を伝える(解決に使用する製品を選んだ理由、自分たちの会社の強み、自分たちの会社を選んでもらう理由)

課題や問題の切り分けをして見やすくする

どれくらい業務が止まってしまうのかもお客さんは気にする

導入実績を言う事によりお客さんに安心してもらう

4.感想

今回の5日間のインターンシップを通して色々な事を学べて成長できたと実感していますが、 大きく3つに分けて学べたものがありました。 また、とても紳士な社員の方々が多く、技術や知識が豊富な方々もいたので、成長できる良い環境だと感じました!

1.SOC業務だけでなく、他の業務内容も知れた

自分自身SOC業務に興味があり、SNSなどで社会人の方に色々と話を伺ってはいましたが、 "実際の現場"で働いている様子などは聞けなかったので、とても参考になる事が多く、 具体的に何を学んだら良いのかしっかりと聞けて、自分が成長できる手段を増やせたので良かったです。

2.議論を白熱してやっていたが、こんな考えもあると知れた

自分が所属していたチームは、それぞれがそれぞれの意見を持ち合わせており、 やや口調が強くなってしまう場面もありましたが、それによって自分にない考え方があると学べて、 最終的にそれぞれが他人の意見を尊重し合っていたので良かったと思います。

3.SOCは技術や知識だけでなく、コミュニケーションも大事

以前までの自分はSOCは技術と知識が飛びぬけて大事と思っていましたが、 実際の現場では業務内の半分が他のアナリストの方とのコミュニケーションがあると聞いて、 技術や知識だけでなく、コミュニケーション能力もとても大事な素養の1つだと感じました。

LinuC102合格体験記

今回はLinuC102を受けてきました。 LPIC101をLinuC101に変更する作業をし、LinuC102に合格すればLinuC1の合格となる。

1.勉強に使用したもの

ping-t、小豆本、白本 ping-tのLPIC102用は有料版なので、ショックだった…

自分は1ヶ月分を使用し、かなり詰め込んだ。

2.勉強の仕方

まずは小豆本を1周分読んだ。 ここで重要なのはまずはざっとの理解でいいと思う。 念入りに理解してもすぐに忘れるからだ。

次にping-tと白本でひたすら問題を解きまくる。 同時並行的に小豆本の2周目を読む。 この2周目で1周目で曖昧だった所を理解する。 小豆本は電車やバスで、ping-tと白本は家や学校やカフェなどでやるといった感じ。 勉強期間は約1ヶ月。

3.試験結果

あなたの得点 (Your Score) 520

必修合格点 (Required Passing Score) 520

結果 (Status) Pass

なんちゅーギリギリな受かり方…w

ITパスポート試験を受けたときも600点ジャストだった気が…w

4.次の目標

次はCiscoの資格であるCCENTを受ける予定。 頑張ろう!

セキュリティミニキャンプ兵庫2018 in 神戸

今回、初めてセキュリティミニキャンプに参加してきました。

セキュリティミニキャンプへの参加は初めてだったので、技術力と知識が向上するという楽しみ、自分の実力でついていけるのか不安がありました。

1 オープニング

つなげるを意識する。

分野を超えてつなげる

人と人をつなげる

将来につなげる

1人で解決できることには限りがあるので仲間と協力して壁を乗り越えていく。 今だけの学びではなく、継続的な学びも意識する。

セキュリティは「何か」のためのものー>「何か」を安全にする。

2 Webセキュリティ基礎講座

講演内容

最近はWebサイトを直接攻撃するより、企業内部社員のPCにウイルスを送って感染させ、そこから狙う攻撃が増えてきている。 攻撃する側は低コストだが、守る側は高いコストがかかってしまうので経済的な観点でも難しい部分がある。 標的型攻撃メールでは、実際に過去に取引した会社名などの名前を使って企業を狙うようになっている。(ソーシャルエンジニアリング的な事) ここ数年は、デモやテロ目的のハクティビズムが多くなっている。

ハンズオン内容

実際にスライドで脆弱性の種類別の攻撃の仕方と対応策と予防策などを説明し、残りの30分程度で用意されたWebサイトを参加者のみんなで攻撃するという内容。 今まで、Webの脆弱性に対しての知識が曖昧だった部分がこのハンズオンで少しでも埋められたので良かったと思う。

3 ベアメタルから作るネットワーク機器

事前課題でC言語フィボナッチ数列やらを書くところまでは自力で出来たが、当日の講義内容とハンズオン内容はわからな過ぎてほとんど頭に入ってこなかった… 一瞬にして、地獄に突き落とされた… しかし、自分のちっぽけさがしっかりとわかったので、今後こうならないようにしっかり勉強して実力をつけていきたい!

4 感想

今回参加して、一番の収穫は「刺激」を受ける事。 知識や技術力の向上も少し向上したが、やはり刺激が大きかった。 自分がいかにちっぽけか、いかに実力が足りていないか身に染みた。 これからももっと精進して実力をつけたいと思った。 いい1日だった!

LPIC101 合格体験記

最近ブログをさぼっていてネタを考えていて、そういえば資格最近取れてないと思い、これからは資格試験をどんどん受けてブログに目標などを公言すれば自分のモチベーションアップに繋がると考えました。

 

今回はLPIC101を受けてきました。

受けた理由は、1年ぐらいLinuxを触ってきて自分がどれくらいできているのか物差しとして見たかったからです。

この試験を受けようと決めてから結局半年ぐらいはズルズル勉強してた気がします。

このズルズル期間を合わせると勉強期間は約10カ月。(長すぎる…)

102を同時に受けようと思いましたが、確実に取りたいと思い、分ける事にしました。

受験料が両方合わせて2万後半から3万かかるので落ちたら洒落にならん…

 

勉強に使用したもの

ping-t、小豆本、LPIC1問題集

 

勉強方法

まず小豆本を1周読んで、そのあとにping-tと問題集でひたすら問題を解きました。

問題を解きながら電車などで小豆本の2周目を読んで、より理解を深めました。

個人的に短期集中型で勉強したほうが良さそうだと感じました。

 

試験結果

あなたの得点 (Your Score)  540
必修合格点 (Required Passing Score)  500
結果 (Status)  Pass

少しギリギリ感はありますが、合格しました!

 

次の目標

101が受かっても、LPIC1は合格ではないので、1ヶ月後には102を受けて合格!

 

 

 

 

アセンブリ命令とレジスタ等の役割

*命令*
・mov dest, src
mov命令は、srcオペランドの値をdestオペランドに移動する
移動した後もsrcオペランドの値は残る
 
・lea dest, src
lea命令は、srcオペランドのアドレスを計算し、そのアドレスをdestオペレンドにロードする
lea eax,[esp+0x40]のように、変位などを含めたアドレス計算をする(この場合スタックポインタを指すアドレスから変位の0x40を加えた位置のアドレスが、eaxに格納される)
 
・xchg dest1, dest2
xchg命令は、arg1オペランドとarg2オペランドの値を交換する
 
・lodsb
lodsb命令は、[DS:ESI]のメモリの内容を、BYTE、すなわち1バイト分、ALレジスタに読み込む
読み込んだ後は、ESIレジスタを、DFレジスタに基づいて、読み込んだサイズ分、加算または減算する
lodsw命令は、WORDの2バイト分、AXレジスタに読み込む
lodsd命令は、DWORDの4バイト分、EAXレジスタに読み込む
メモリの値を決まったバイト数ずつ処理する場合に用いられ、文字列処理などでよく使う
 
・stosb
stosb命令は、lodsb命令の反対でALレジスタの値を、[ES:ESI]のメモリに書き込む
 
・push src
push命令はargオペランドの値をスタックにpushする(32bitでは4バイト、64bitでは8バイト)
ESPレジスタの値をレジスタ幅分(32bitでは4バイト、64bitでは8バイト)減算し、argオペランド
ESPレジスタの指すスタックのトップに格納する
 
・pop dest
スタックからargオペランドへpopする
ESPレジスタの指すスタックのトップの値をargオペランドへ格納し、ESPレジスタの値をレジスタ幅分(32bitでは4バイト、64bitでは8バイト)
加算する
 
・add dest, src     sub dest, src
add命令は、destオペランドにsrcオペランドを加算した結果を、destオペランドに格納する
sub命令はこの減算バージョン
 
・mul
mul命令は、srcオペランドにEAXレジスタの値を乗算し、結果の上位4バイトをEDXレジスタ、下位4バイトをEAXレジスタに格納する
 
・div src
div命令は、EDX:EAXの8バイトをsrcオペランドの値で除算し、商をEAXレジスタ、乗除をEDXレジスタに格納
 
・inc dest     dec dest
inc命令とdec命令は、それぞれ、destオペランドの値を1加算/減算する
 
・cmp src1, src2
cmp命令はsub命令と同じだが、結果はオペランドに格納されず、破棄される
目的は、フラグレジスタの値を条件によって変化させること
 
shr/shl dest, count
shl命令とshrの命令は、destオペランドをcountオペランドで指定したビット数分、それぞれを左、右にビットシフトする
結果はdestオペランドへ格納される
 
ror/rol dest, count
ror命令およびrol命令は、destオペランドをcountオペランドで指定したビット数分、ローテートさせる
結果は結果はdestオペランドに格納される
 
・xor dest, src
xor命令は、destオペランドとsrcオペランド排他的論理和を、destオペランドに格納される
レジスタを0で初期化する際によく使われる
 
・test src1,src2
test命令は、src1オペランドとsrc2オペランド論理積をとる
cmp命令と同じく、結果は破棄され、フラグレジスタの変化が主な目的
 
・jmp arg
jmp命令は実行をargオペランドへ分岐させる
フラグレジスタを参照して、条件が満たされた時のみ分岐する条件分岐命令もある
JE命令(Jump if equal)     JZ命令(Jump if zero):ZF=1の時に分岐
JNE命令(Jump in not equal)     JNZ命令(Jump if not zero):ZF=0の時に分岐
JG命令(Jump if greater):ZF=0かつSF=OFの時に分岐
JL命令(Jump if less):SF<>OFの時に分岐
 
・ret命令
callと対になる命令で、callされた関数の終わりに、call元の次のアドレスへと実行を戻すための命令
 
・call arg
call命令は、jmp命令と同様に、実行をargオペランドへと分岐させる
ret命令で戻ってこれるようにcall命令の次の命令のアドレスを、戻り先のアドレスとしてスタックに保存する
 
・leave
leave命令は、データ転送命令だが、ret命令とセットで使われることが多い
この命令は、関数の最後、ret命令の前に呼び出され、スタックポインタをベースポインタと同じ位置に戻し、
スタック上に保存していた呼び出し元の関数のスタックフレームでのベースポインタを復元する
つまり、mov esp, ebp;pop ebpと同じ動作をする
 
 
・EAX(アキュムレータレジスタ):演算の結果を格納する
・ECX(カウンタレジスタ):ループの回数などのカウントを格納する
・EDX(データレジスタ):演算に用いるデータを格納する
・EBX(ベースレジスタ):アドレスのベース値を格納する
・ESI(ソースインデックスレジスタ):一部のデータ転送命令において、データの送信元を格納する
・EDI(デスティネーションインデックスレジスタ):一部のデータ転送命令において、データの転送先を格納する
 
EBP(ベースポインタレジスタ):現在のスタックフレームにおける底のアドレスを保持する(ベースポインタともいう)
・ESP(スタックポインタレジスタ):現在のスタックトップのアドレスを保持する(スタックポインタともいう)
・EIP(インストラクションポインタレジスタ):次に実行するアセンブリ命令のアドレスを保持する(命令ポインタともいう)
 
*フラグ*
・CF(キャリーフラグ):演算命令でキャリー(桁上がり)かボロー(桁借り)が発生した時にセットされる
・ZF(ゼロフラグ):操作の結果が0になった場合にセットされる
・SF(符号フラグ):操作の結果が負となった場合にセットされる
・DF(方向フラグ):ストリームの方向を制御する
・OF(オーバーフローフラグ):符号付き算術演算の結果がレジスタの格納可能範囲を超えた場合にセットされる
 
*レグメントレジスタ
・CS(コードセグメントレジスタ):コードセグメントのアドレスを格納する
・DS(データセグメントレジスタ):データセグメントのアドレスを格納する
・SS(スタックセグメントレジスタ):スタックセグメントのアドレスを格納する
・ES(エクストラセグメントレジスタ):エクストラセグメントの(追加セグメント)のアドレスを格納する
・FS(Fセグメントレジスタ):Fセグメント(2つめの追加セグメント)のアドレスを格納する
・GS(Gセグメントレジスタ):Gセグメント(3つめの追加セグメント)のアドレスを格納する
 
・DWORD PTR
     これは対象の値(やレジスタ)を何バイトとして扱うか、ということを修飾する
     DWORDは4バイト、WORDは2バイト、BYTEは1バイト
     レジスタは何バイトなのか明示する必要がある
 
・callしたら次の命令の番地をスタックに積んで戻るべき場所を記録しておく
 
・plt(プログラムリンケージテーブル)とは、共有ライブラリから呼び出される個々の関数は、それぞれのエントリをPLTに持っていて、静的にリンクされるので直接呼び出される