SECCON Beginners CTF 2021 Writeup

目次 目次 成績 Writeup beginners_rop uma_catch freeless 成績 etherknotで参加して38位でした。 pwn担当として、beginners_rop, uma_catch, freelessを解きました。 Writeup pwn/writeup/2021/SECCON_Beginners at main · kisqragi/pwn · GitHub beginner…

WaniCTF'21-spring Writeup

https://score.wanictf.org/score.wanictf.org 目次 目次 成績 Writeup Pwn netcat rop machine easy free hook rop machine normal rop machine hard SuperROP 成績 pwnだけ挑戦して全体では157位でした。 VeryHardが2問解けず悔しい結果となりました。 Wr…

DiceCTF 2021 Writeup

CTF

ctf.dicega.ng 目次 目次 成績 Writeup Pwn babyrop 成績 etherknotで参加してpwnを1問だけ解きました。 チーム成績は114位でした。(チームメンバーすごい) Writeup Pwn babyrop mainを覗くと簡単なBOFであることがわかります。 canaryも確認するとoffでし…

Harekaze mini CTF 2020 writeup

CTF

https://ctf.harekaze.com/ctf.harekaze.com github.com 目次 目次 成績 Writeup Pwn Shellcode Web What time is it now? 成績 etherknotとして出場しました。 私はWebとPwnのwarmupを解きました。 Writeup Pwn Shellcode shellcode.c #include <stdio.h> #include <string.h> </string.h></stdio.h>…

KosenXm4sCTF writeup

CTF

xm4s.net GitHub - KosenXmasCTF/problems: 問題一覧のリポジトリです 目次 目次 成績 Writeup Pwn match_flag beginners_shell dead_or_alive write_where_what Rev strings_binary countdown first_asm Crypto do_you_know_RSA? advanced_caesar bad_hash …

InterKosenCTF2020 writeup

CTF

InterKosenCTF2020へチームetherknotとして参加しました。 本番で解いた問題はciphertextsだけでしたが、1問でもチームに貢献できたのは少しだけ成長を感じました。 他の問題は手も足も出なかったので復習しつつwriteupを書こうと思います。 出題された問題…

Cコンパイラをセルフホストするまで写経した話

RuiUeyamaさんのリポジトリを写経してたらセルフホスト達成したので記念記事を書きます。 私のコンパイラはこれ github.com 参考にしたものはこれ github.com chibiccやprivateなリポジトリなど www.sigbus.info オンラインブックはもうなんか、すごい。 コ…

coc.nvimを使ってC/C++の開発環境を整える

最近neovimというものに移行しcoc.nvimを使ってみたところ中々VimIDEだったので紹介します。 まずは出来上がりのイメージをどうぞ。 割と良い感じになったかも〜 pic.twitter.com/YLXGI0Xiuo— きさらぎ (@nabesan_C) July 23, 2020 こんな感じです。 短いコ…

NITIC CTF Writeupという名の参加記

CTF

NITIC CTFという茨城高専有志の方々によるCTFの大会に参加しました。 結果としては量産型の4位でした(参加した方ならわかる) 主催者の方のツイートに名前が出ていたのは興奮しました。 #nitic_ctf順位表めちゃくちゃ面白いんだけど pic.twitter.com/OnCjVIZQ…

「SECCON Beginners CTF 2020」に参加しました。

CTF

タイトルにもある通り「SECCON Beginners CTF 2020」に参加させていただきました。 初参加だったので参加記を残しておこうと思います。 writeupは作問者様や他の参加者様たちのブログで良質なものが見れると思うので、今回は参加記という形にしています。 あ…

Slackでサーバの死活監視を行う

Incoming Webhookを利用してSlackのチャンネルへサーバから通知を飛ばして、死活監視を行ったのでそれについてまとめます。 実行結果は以下のようになります。 ] 準備 自身専用のワークスペースとサーバ管理用のチャンネルがあると良いともいます。 チャンネ…

アセンブリでHelloWorldする

環境 Ubuntu 18.04.4 LTS NASM version 2.13.02 GNU ld (GNU Binutils for Ubuntu) 2.30 目標 アセンブリでシステムコールを呼び出し、HelloWorldを出力することを目指します。 基礎知識 今回HelloWorldをするにあたってwriteシステムコールを使って標準出力…

コンピュータハイジャッキングを読みました。

コンピュータハイジャッキングという本を読んだので軽く感想を書いていこうと思います。 ※詳細には書きません。 当該の本 www.ohmsha.co.jp 内容 第1章 セキュリティに関する用語の説明など 第2章 開発環境の作成。 Kali Linuxを仮想マシンを用いて動作さ…

Python3で添付ファイル付きgmailを送信する

完成ソース import smtplib from email import encoders from email.mime.base import MIMEBase from email.mime.text import MIMEText from email.mime.image import MIMEImage from email.mime.message import MIMEMessage from email.mime.multipart impo…

ワンライナーでdotfilesをインストールする

ワンライナーでdotfilesを設定するとはどういうことなのか簡単に説明すると bash -c "$(curl -fsSL https://raw.githubusercontent.com/kisqragi/dotfiles/master/install.sh)" 上記のコマンドを実行するだけで.vimrcや.bashrcなどの設定ファイルがインスト…

基本的なアセンブリ命令(Intel記法)

基本的なアセンブリ命令について勉強したのでアウトプットします。 前提 今回はIntel記法で書いていきます。 他にもAT&T記法があるのですが、より直感的に理解しやすい方を優先的に覚えることにしました。 一応差分を Intel記法 mov eax, 1 AT&T記法 mov $1,…

ミニキャン言語でグローバル変数を実装した話

はじめに ミニキャン言語でグローバル変数を実装したのでそれについて書きます。 ミニキャン言語は何かっていう方は以下を参照してください。 github.com 私が実際に作成してるプログラムは以下になります。 github.com この記事は、こう実装したというメモ…

2020年の目標

はじめに 明けましておめでとうございます。 kaitoさんのありがたいお言葉もあり、今更ですが今年の目標を記事にしてみました。 注意 それ今すぐやれば達成できるけど?というレベルの事も書きます。 小さな目標でも「達成する」という事は自分のモチベーシ…

説明会&第1回勉強会を終えての反省

11/28, 12/5に学内で勉強会の説明会と勉強会を行いました。 それについての反省点等を自分メモとして残したいと思います。 勉強会は自作言語を作るという内容で説明・実施しました。 反省点 説明会での反省点 勉強会の説明としてスライドを見せながらの発表…

wordpressを導入した話

勉強用のサーバーにwordpressを導入したのでパーミッションやらの設定はどうしたのか、という話を書きます。 環境 Ubuntu 18.10 権限とパーミッションの設定 参考サイトを真似しながら設定します。 所有者の変更 /var/www/以下のディレクトリ・ファイルの所…

ミニキャン言語で負数に対応した話

はじめに ミニキャン言語で発展課題である負数の実装ができたのでアウトプットします。 兎にも角にもコードだという人は以下を参照してください。 github.com 実装 今回負数の実装をしたのですが、最初は定数のみ(-1や-2など)にしか対応しておらず、その後変…

ミニキャン言語 発展課題 '>=' '<=' を実装した

はじめに せっかく発展課題が実装できたので記事にしました。 ミニキャンでは実装後スライド発表だったので、それも少し意識しました。 前提 GitHub - yamaguchi1024/mc-lang-3: セキュリティミニキャンプ2019山梨 MC言語講義 第三回事前課題 こちらの通常課…

C++ Opencv 画像を合成する

最初に 今回は下の3つの画像を用いて、差分処理を行って画像を合成します。 青空の画像が背景で、Opencvのロゴが前景、真っ黒な画像がロゴを抜き取るための画像になります。 ソース #include <iostream> #include <string> #include <sstream> #include <iomanip> #include <opencv2/opencv.hpp> /* img1とimg2の差分</opencv2/opencv.hpp></iomanip></sstream></string></iostream>…

C++ Opencv 静止画から動画を作成する

まずはソース #include <iostream> #include <string> #include <sstream> #include <iomanip> #include <opencv2/opencv.hpp> int image_to_video(std::string result, std::string image_name, std::string ext, int frame_num, double frame_rate) { // {image_name}_00x.ext にするための桁数の取得 int digit = s</opencv2/opencv.hpp></iomanip></sstream></string></iostream>…

C++ Opencv 動画から静止画を出力する

まずはソース #include <iostream> #include <string> #include <sstream> #include <iomanip> #include <opencv2/opencv.hpp> int video_to_image(std::string result_image_name, std::string video_path, std::string ext) { cv::VideoCapture video(video_path); if (!video.isOpened()) { return -1; } int frame</opencv2/opencv.hpp></iomanip></sstream></string></iostream>…

「セキュリティミニキャンプ 2019 in 山梨 専門講座」に参加した話

セキュリティミニキャンプ 2019 in 山梨 に参加したので参加記を書こうと思います。 駄文ですがよろしくお願いします。 専門講座 現地到着してすぐにkaitoさんとエンカした。 専門講座2の方のUEFIのコードについて早速デバッグしてもらった。(ありがとうご…

バーナム暗号

バーナム暗号とは バーナム暗号はバーナム(Vernam)さんによって考案された共通鍵暗号になります。この暗号はシャノンによって理論的に解読不可能であることが証明されており、高い秘匿性を備えています。 バーナム暗号の長所 バーナム暗号の最大の長所といえ…

pythonを用いた単一換字式暗号の実装

換字式暗号とは 平文を1文字あるいは複数文字に対し、別の文字・記号を割り当て変換することで暗号文を作り出す方式。 A⇆B B⇆D の場合、ABという平文はBDとなる。 実装 今回はpythonを用いて実装しました。文字の扱いはpythonの方が楽だと思ったのもあって、…

転置式暗号の実装

転置式暗号とは 平文の文字を入れ替えて作る暗号化の方法のことです。一番目と二番目の文字を入れ替える。三番目と四番目の文字を入れ替える、など様々な転置の法則で暗号文を作ります。 実装 今回は文字列を abcdefg の場合 abcd efg というように4文字単位…

シーザー暗号の実装

はじめに 暗号技術のすべてという本を購入しました。 そこでシーザー暗号が出てきたので改めて実装してみることにしました。 シーザー暗号とは シーザー暗号とは、アルファベットの先頭文字を指定したROT分だけずらす暗号方式のことです。 ABCのROT1なら、B…