途中経過
本当はやりたいことが1つまとまってから記事にしようかと思っていたのですが、いったん途中経過で現在状況を残しておこうと思います。
最初の状況としては
サンドボックスを作ろう
↓
virtualboxでwindowsサーバをたててcuckooを使うのが良さそうだな
↓
cuckooを使えるほどのメモリを割り当てられなさそうなことに気づく
↓
virtualboxでwindowsサーバたてて挙動を目視するところから始めよう
↓
wiresharkで通信キャプチャしようとしてるけどできてんのかな?
ざっくりとこんな感じの状況になっています
現在の悩みを少し詳細に記そうと思います。
まず、virtualboxに立てたwindowsサーバをホストオンリーアダプタの状態で待機させます。
次にkaliでmsfvenomを使ってexe形式のペイロードを作成し、windowsサーバに置きます。(windows Defenderに何回かマルウェアを消されました、、)
そこでreverse tcpの通信をWiresharkでキャプチャできるだろうと思っていたのですが、できているのかどうかわからない!ってところです。
まとめると
課題
・通信をキャプチャして、自分で認識する
解決に向けて
・reverse tcpの通信がどのようになっているかをググって動きをしらべてからwiresharkでフィルタをかけて見えるようにしていきたい
その後にやりたいこと
・マルウェアに使われているテクニックを研究していく
・reversingのcrackmeを見つけたのでそこでrevの経験を積む
今回はこんなところでした!
malware解析したい
ちょこっとずつマルウェア解析を勉強していきます!
きっかけはマルウェア解析についての良さそうなサイトをついったーでリンクをはってくれた人がいたからです。
How to start RE/malware analysis?hshrzd.wordpress.com
これにそって少しずつ勉強していきたいですね。
ところがしょっばなから問題にぶつかりました!
ちょっとところサンドボックスについて最初に触れられていたんですがwindowsのイメージをvirtual boxなどで動かす必要がありそうです。
しかし現在のメインPCがthinkpad x240のホストOSがkali linux なのですが重たいアプリケーションによわよわです。。
virtual boxはもってのほかで、vscodeを動かすのも軽い覚悟がいるくらいです泣
ですがちょうどいいタイミングで新しいPCが明日届く予定です!しかも中古ですがthinkpad x1 carbon!!
こいつの設定が済んでから改めて取り組みます!
pwnable.krやりました
すごい久々の更新なんですけどpwnable.krを久しぶりにやってみてwriteupを作ってみました。
今度はまったくやったことのないpwnable.twに挑戦してみようと思います!
2020年の目標
大学に入学してからもう二年が経過しました
2019年もセキュリティなどで成長できた年ではないかなと思っています
でも課題としてはいろいろな方面に興味が出るあまり、勉強が浅く広くなってしまっていることがあります。web、マルウェア、pwn、応用数学などなどやっていて楽しくはあるのですが、楽しさもありつつ技術者を目指すには専門性を深めたほうが良いと考えました。
改めまして今年はwebセキュリティをベースに据えてやっていきたいと思っています。
目標はバグバウンティプログラムで報酬を出すことです!
どうせ他の勉強に手を出したがると思うのでベースに据えるという言葉で保険をかけています。でも目標は絶対に達成させます!
2020年も楽しい年になりますように、、、
今日の勉強まとめ(正規表現)
このお悩みを解決するために正規表現について勉強した主要点を軽くまとめていきたいと思います!
・メタ文字について
正規表現を表すための文字という意味を越えた文字
メタ文字で使われる文字をただの文字としてしようするためには" \ " バックスラッシュを利用するしかない
メタ文字の種類
. -> なんでもいいという意。bashなどのワイルドカード(*)のような使い方
^ -> 行の先頭につく文字がこれで指定する文字に適するかどうかで検索してくれる
e.g) ^ラスク -> ◯ラスク食べたい ×これはラスク、そのラスク欲しい
$ -> ^の末尾バージョン。
e.g) $ラスク -> ◯これはラスク ×ラスク食べたい、そのラスク欲しい
* -> *の前の文字を繰り返し、またはそれが除かれたものを指定する
e.g)トマ*ト -> ◯トマト、トママト、トト
+ -> *が持つ性質である除かれたものもokという性質をなくしたもの
e.g) トマ+ト -> ◯トマト、トママト ×トト
? -> これは直前の文字が一つもないか、一つだけあるという性質のもの
e.g) トマト -> ◯トマト、トト
| -> ここで指定した文字列のどれか
e.g) トマト|キャベツ|にんじん -> ◯トマト、キャベツ、にんじん
-> このかっこの中に入るもののどれかという意味
e.g) これは[火草水]タイプ -> ◯これは火タイプ、これは草タイプ、これは水タイプ
"注意"
・[^文字] -> この様な場合、内の文字以外の文字が入るようになる
e.g)A[^A-Z]C -> ◯A0C,AあC ×ABC,AEC
・[]内では、メタ文字はメタ文字として認識されない
RE CTFd Writeup! phase1
二ヶ月ほど更新をサボっておりました(笑)
最近revについて勉強できたらなと思い常設ctfを見ていたところこんなCTFサイトを見つけました!
このCTFはphaseを正しく進ませるFlagをサイトに入力していくという形になっています。アセンブラがかかれているので修行としてはもってこいでしたね
こちらのRE CTFdを解いてみたのでWriteupを書いてみようかなと思います!
こちらはPublic Speaking is very easy.という文字列とeaxがstrings_not_equalという関数の中に入れられているようです。
この関数の中身は解析していませんがさすがに入力する文字列が一致しているかどうかを確かめる関数でしょう。
ここまできたらFlagは明かですね!
次はphase2で!