急にマルウェア検知が起こった話
何もしていなかったのですが、急に隣の画面に放置していたVM環境のwindowsPCで急にマルウェア検知のアラートが表示されました。
ログを調べてみると、OnDemandスキャンで引っかかっていて、
CompatTelRunner.exeがファイルを走査してEicarがファイルが引っかかったようで、、
CompatTelRunnerを調べてみると、カスタマー エクスペリエンス向上プログラムとの記載がありMicrosoftから提供されているようですが、、リソースを食っているので、軽くするためにも止めることにしました。
タスクスケジューラを開き、タスクスケジューラライブラリ、Microsoft、WindowsのApplication Experienceを開く。
こいつがCompatTelRunner.exeを起動しているので、全て無効化してやりました。
マルウェア検知から、よくわからないタスクが見つかり、サービス止めてWindows軽量化できました。
めでたしめでたし。
ctfのお勉強 ksnctf #24 Rights out
ksnctfを解いてみた
#24 Rights out
IDAで開こうとするとエラーがでる。
エラー内容でググってみるとC#Decompilerでいけるらしい。
ILSpyをダウンロードしてきて、ソースコードを眺めました。
Check()という関数があり、Congraturationsの文字列でここがフラグかなと判断。
C#環境がなかったので、Pythonで書き換えて実行しました。
ネタバレ防止に一部マスクしてます。
array =[1,7,16,11,14,19,20,18] array2 = [85,111,117,43,104,127,117,117,33,110,99,43,72,95,85,85,***********] text = "" for j in range(0,len(array2)): text += chr(array2[j] ^ array[j % len(array)]) print(text)
ブログに書いたか覚えてないが、実はちょっと前に解いたRiddleより簡単。
ksnctfもコンプリートまであと少し
海外でスマホ利用する
いくつかの選択肢
海外でインターネット接続するにあたってSIMカード、Wifiレンタル、キャリアのパケット定額の選択肢があります。
それぞれメリットデメリットがあるので、状況に応じて使い分けると良いです。
SIMカードを買う
まだ使ったことがないので、今回の記事では言及しないことにします。
Wifiルーターを借りる
メリット
- 安定して利用することができます。
デメリット
- 荷物が増えます。
- レンタル期間で課金(移動日も支払う)
空港でwifiを借りて、それ経由でインターネットにアクセスします。
500MB/日 1500円くらいです。保険等のオプション付けるともう少し高くなります。
また移動日も課金されるため、遠くに行く際はキャリアのサービス等に比べると少し割高かもしれません。
またエリアによって、wifiを変える必要があるため、複数エリアに行く場合は荷物が増えます。
帰国時の返却は忘れないように注意が必要です。
キャリアのサービスを使う
メリット
- 簡単に利用できます。
デメリット
- キャリアによってサービスに差があります。
au
料金は980円/dayです。
※ 世界データ定額でご利用の通信量は、「auピタットプラン」「auフラットプラン20/30」「データ定額1~30」「データ定額1(ケータイ)~5(ケータイ)」や「LTEフラット」などの国内のデータ定額サービス/料金プランの月間容量やデータチャージのデータ容量購入分から消費します。
これを超えると128kbpsになります。世界150ヶ国以上で使えて、980円/dayなので、色々な所にいく場合は他キャリアに比べてかなりお買い得です。
SoftBank
アメリカの場合はアメリカ放題キャンペーン中(2019/1/21現在)でそのまま無料で使えます。(キャンペーン終了後は980円/月)
その他エリアは2980円/dayとなります。アメリカへ行く場合は一番お手軽かもしれません。
docomo
料金は980円/dayです。ただし一日30MBの制限がありそれを超えると16kbpsとなります。
現在(2019/1/22)は、キャンペーン中で2018/3/14までは30MBを超えても速度制限がかかりません。
ただ、キャンペーンが終了すると正直な所使い物になりません。
30MBだとすこしの調べ物やgoogleマップを開くと一瞬で消費されます。
あといま見たら新規受付終了するようです。
「海外1dayパケ」新規受付終了のお知らせ
2018年3月14日(水)をもって、新規受付を終了いたします。
今後は海外パケホーダイのみになるのでしょうか。
こちらのサービスもどれだけ使っても2980円/dayとうたっていますが、他社と比べて高く、これを使うくらいなら他キャリアかSIMかWifiレンタルをした方が良いでしょう。
Docker テスト用メールサーバー
はじめに
ちょっと必要になってローカル開発やテスト用途にメールサーバーを立ててみました。
検索してみると「smtp4dev」とか「Radish」とか「BlackJumbo」とか出てきますが、
最近話題のコンテナdocker使ってみました。初めて←
環境
macOS 10.13.1
Docker version 17.09.0
Mailhog
https://hub.docker.com/r/mailhog/mailhog/
Dockerのインストール
一応公式ページでスペックを確認しておきます。
https://docs.docker.com/docker-for-mac/install/#install-and-run-docker-for-mac
ハードは新しいモデルとmacOSはELCapitan10.11より新しい、
4GM以上のメモリ、VirtualBox4.3.30以前はやめとけと。
公式のホームページからdocker.dmgをダウンロードします。
クリックしてドラッグ&ドロップでinstallします。
Mailhogのインストール
続いてMailhogをcommandからインストールします。
公式サイトはこちら
https://hub.docker.com/r/mailhog/mailhog/
$>docker pull mailhog/mailhog
設定と起動
docker-compose.ymlの設定をします。
$> mkdir docker $> cd docker $docker > vi docker-compose.yml
docker-compose.ymlの中身はこちら
mailhog: image: mailhog/mailhog ports: - "8025:8025" - "1025:1025"
8025はHTTPポート、1025はsmtpポートです。環境に合わせて変更してください。
mailhogを起動します
$> docker-compose up
起動後localhostへのアクセスを確認します。
http://localhost:8025/
メールテスト
動作テストします。pythonでスクリプト書いてテストしました。
telnetでも良いと思います。
import smtplib from email.mime.text import MIMEText def test_mail(from_addr, to_addr, subject, msg): m = MIMEText(msg) m['Subject'] = subject m['From'] = from_addr m['To'] = to_addr s = smtplib.SMTP(host="localhost", port=1025) s.sendmail(from_addr, to_addr, m.as_string()) s.close() return test_mail("from@addr.example.com","to@addr.example.com","test","test")
ctfのお勉強 ksnctf #16 Math1
ksnctfを解いてみた
#16 Math1
def gcd(a, b): if b == 0: u = 1 v = 0 else: q = a / b r = a % b (u0, v0) = gcd(b, r) u = v0 v = u0 - q * v0 return (u, v) if __name__ == '__main__': p = 34111525225922333955113751419357677129436029651245533697825114748126342624744832960936498161825269430327019858323450578875242014583535842110912370431931233957939950911741013017595\ 9774719497672354264908502842866615923577798252122650559317057999169138176557434344974229934989313946188327413362474268157101643425991509906081436373310682202445255417948556516431350128460\ 3943935510102799494512069853017732982921320876105739223687536645819709850725285124413245599646862895756017886872431000031701191299463232837176148666935806557726919806579298153737844832492\ 3622959249447066754504943097391628716371245206444816309511381323; q = 44481453884385518268018625442920628989497457642625668259648790876723318635861137128631112417617317160816537010595885992856520476731882382742220627466006460645416066646852266992087\ 3868554911527952371539013195215064298734343369696665369953998661257810577680755335601203991845669564331298549954648932654037240349606899383514507099506997405084592067850936932775417852856\ 9973387353054191848384212269127632228681042229701578265864512942104316074904084621689267103115646536465268103682846161927242731875809853892772739245950176120384236301712143265753477089818\ 1975532066012149902177196510416802134121754859407938165610800223; e = 65537; l = (p-1)*(q-1); n = 15173302362629175953146108888893221156510870808267119488970663408832082055715923923626508585710762479398054362265448332245261375828347704026810053439300594636845289572717781991625\ 7505330623809982329511769703196837069037225091693580073869814210327596922326418437464824627756430690088600529973126581225527472317592518552234483106657716686778683595509205934624488558722\ 8196357297758371381557924676260190209536670230008561217008649261974735505203813478978893582292682827884118215872470401293272325715864815977064075988643101088355047954735427424641386870772\ 8454407826329334851651101724375118227369075507778177222487536711073398234104189384043827320793813292884000129293113473904230612546587801852455626681310098322934749202088347954600611151013\ 6409125217659414409667589995257038079297803721774731159589930145119234202779953326432594887655611047485076153817974831818780531245189589875133797545794954949766654217507789498769708552188\ 2531938339334715190663665300179658557458036053188152532948734992896239950564081581184284728802682982779186068791931259198917308153082917381616147108543673346682338045309449569430550618884\ 202465809290850964525390539782080230737593560891353558335337408957948041667929154230334506735825418239563481028126435029 x=2255495926284926161526322654821253158689111256599710859297122963662143556080492241793397576379825415427450108220222264091261236278049530640720556670121726815515007807634831729143898\ 1305744466931472640413597856544628230901972999497681592585091648725769970747820613247471096375259039933292067260744079311638705107119191983531684582783828795454155877735586471478246429927\ 8036910958484272003656702623646042688124964364376687297742060363382322519436200343894901785951095760714894439233966409337996138592489997024933882003852590408577812535049335652212448474376\ 4570150770475298183158775496148595864755040700512010547049546540934820564930929307007878905793460659168344347399807914022161755550758960666165191501648319906267275918761158212199412683096\ 7824087229802961174657537632273331165739450285985221359538960723943158512094326877467978531613347817122571972991787700962461128670201093695170516087099718412377548859213058660607027717339\ 2647225589257616518666852404878425355285270687131724258281902727717116041282358028398978152480549468694659695121115046850718180640407034795656480263573773381753855724693739080045739160297\ 875306923958599742379878734638341856117533253251168244471273520476474579680250862738227337561115160603373096699944163 d = gcd(e,l) if d < 0: d += l print("d={0}".format(d)); #m = cd(mod n) m=pow(x,d,n) print ("%0512x"%m).decode("hex")
ctfのお勉強 ksnctf #19 ZIP de kure
ksnctfを解いてみた
#19 ZIP de kure
flag.zipがダウンロードできるのでとりあえず解答してみる。
unzip flag.zip Archive: flag.zip Hint: - It is known that the encryption system of ZIP is weak against known-plaintext attacks. - We employ ZIP format not for compression but for encryption. [flag.zip] flag.html password: skipping: flag.html incorrect password skipping: Standard-lock-key.jpg incorrect password
やはりパスワードがかかっている。
ファイルが二つあってHIntにknown-plaintext attacksに弱いとある。
Standard-lock-key.jpgをグーグルさんで検索してみるといくつか画像が出てくる。
画像ダウンロードしてpkcrackかければ無事にフラグがゲットできます。
pkcrack -c Standard-lock-key.jpg -p ./Standard-lock-key.jpg -C flag.zip -d ans.zip