YAPC::Hiroshima 2024に参加しました

YAPC::KyotoぶりのYAPCということでYAPC::Hiroshima 2024に参加してきました。お久しぶりの参加者の方々、運営していただいたスタッフの方々共々ありがとうございました。 印象に残ったトーク 2024年冬のPerl 5.40ではTest2::Suiteがコア入りということを聞…

CTF問題をCloud Runで動かす - gVisorとio_uring

以前にakictfという常設CTFを公開していたのですが、閉じることになったきっかけはメンテナンスが面倒になったからでした。当時は2013年、Dockerも出始めた頃で当然使っておらず、LXC上で問題を管理していました。さくらのVPS上で動かしていて(後にさくらの…

CakeCTF 2023 writeup

2023/4/22に行なわれたRicerca CTF 2023にHackingForSushiで参加して、24位でした。 一人チームだし時間もあまりなかったのでrev問+変そうなやつ縛りで解きました。丁度よい難易度で解いていて楽しかったです。 解いた問題 nande 微妙に違う気がしつつも、と…

Firestoreからエクスポートしたデータがエミュレータにインポートできなくなった問題に対処する

Firestoreにはエミュレータが用意されていて、手元の環境でも似たようなものが動かせるようになっています。開発するにはこれは必須といったところで、例えば開発環境のデータを手元の環境にインポートして使うということもよくしています。 エミュレータに…

Ricera CTF 2023 writeup

2023/4/22に行なわれたRicerca CTF 2023にdodododoで参加して、2位でした。 dodododoでは普段CTFに参加するときは、Google Docsにドキュメントを用意しておき、どの問題を解こうとしているかなどの進捗状況を共有できるようにしています。大したものはないの…

SECCON CTF 2022 Finals - Heptarchy writeup

SECCON CTF 2022の国内決勝にチームAERO SANITYで参加して、4位でした。 以前はチームdodododoとして参加していたのですが、チームメンバーの半数(1人)がCTF運営側になってしまったので、今回は会社の同僚を誘ってやってきました。 Heptarchy 様々な言語のバ…

IDA Proで独自VM問を読む

この記事は、CTF Advent Calendar 2021の4日目です。 adventar.org CTFで出題されるreversingの問題のひとつに、独自VMと呼ばれる、独自に実装されたVirtual Machineの上で動くバイトコード(プログラム)の解析を行うものがあります。 この問題ではVM自体のバ…

PerlでもgRPCで通信したい

まずはじめに、2021/2時点でgRPCがサポートされている言語にはPerlは含まれていなく、公式にはサポートされていません。 現時点でと言ったものの将来的にもサポートされることがないだろうことからPerlでgRPCを扱うのは茨の道といえるでしょう。 おとなしくg…

OpenSSLはどこにいる

この記事は、はてなエンジニア Advent Calendarの15日目です。 qiita.com OpenSSLに依存しているモジュールをインストールしようと思ったときにライブラリが見つからなくて困ることがあります。 例えばmacOS上でhomebrewを使ってOpenSSLをインストールした場…

UCSB iCTF 2018 - fantasticiot, hero_text_adventure

attack and deference形式のCTFにオンラインで参加した。dodododoは19位。 sshできるサーバが1台与えられて、そこで8つのサービスを正しく動かしつつ、攻撃と防御を行う。 flagは運営からサービスが正しく動いているかどうかの確認と一緒に送られてくる。例…

YAPC::Okinawaで「Perlコーディングテクニック2018」という話をしました

speakerdeck.com 最近の便利Perl情報や好きなモジュールの話をしました。 トーク応募したときには話したかった細かい話題がいくつかあったのですが、20分では収まらなかったのもありクラスビルダやクラスローダ、バリデータ、Type::Tinyの話になりました。 …

YAPC::Fukuokaで「新時代のテストフレームワークTest2」という話をしました

speakerdeck.com トークの内容はTest2の導入から便利情報を紹介したりしました。少しでもTest2使う人が増えるといいですね。 スライド中にも触れていますが、基本的にはTest2に移行するにあたってはTest2::Plugin::UTF8を使うようにすれば大丈夫かなと思いま…

株式会社はてなに入社しました

株式会社はてなに入社しました株式会社はてなに入社しました - hitode909の日記

年賀状CTF 2017 writeup

今年もid:nanuyokakinuさんによる年賀状CTFが開催されていたので参加した. reversing問題が全部で3問.すべて解くと最後のフラグにAmazonのギフト券が書いてあり,お年玉が貰える.今年はなんと0x1337円.ありがとうございました :) nanuyokakinu.hatenablo…

まずはCTFの過去問を解く

CTF

この記事は,CTF Advent Calendar 2016の1日目です. www.adventar.org CTFプレイヤーたるもの,日々の鍛錬は欠かせません. 過去問を解いてこそ,競技中に真の実力を発揮することができるのです. ということで,bata_24さんが公開しているpwn challenges l…

高速にリストからハッシュにする

いまいちピンとくる言い方が分からないけれど,つまりはこういうこと. [ { id => 1, value => 'foo', }, { id => 2, value => 'bar', }, ] このようなデータ構造があったときに,以下のようにidをkeyとしてハッシュにしたい. { 1 => { id => 1, value => '…

Tokyo Westerns / MMA CTF 2nd 2016: greeting, Interpreter, diary, Candy Store, shadow

greeting Host : pwn2.chal.ctf.westerns.tokyo Port : 16317 greeting Note: DoS攻撃に対する対策の為,出力が131072文字に制限されています. main関数のみのシンプルなバイナリ.FSBがあるが,その後すぐにreturnするため1度しか実行できないように見える…

Teaser CONFidence DS CTF 2016 Go Sandbox 1, 2 - Go's unsafe is unsafe!

Go Sandbox (Pwning, 150) We found a sandbox written in Go. It looks pretty solid, but there must be a bug somewhere. All you need to do for us is to execute ./get_flag IP: gobox.hackable.software:1337 Download Golangのソースコードを実行す…

SECCON 2015 Intercollege 優勝しました

チームdodododoで参加して、29109ptで優勝しました。 チーム構成はakiym, xrekkusu, lrks, hiromuの4人。分担は、攻擊班akiymとlrks、防御班xrekkusuとhiromu。 今回のSECCON Intercollegeは学生限定ということで、通常の決勝とは違う、Attack & Defenseルー…

オレオレCTFツール akitools

CTF Advent Calendar 2015 - Adventar 16日目 CTFをやると副産物として一枚岩のスクリプトができたりします。いくつか便利ツールを公開しているので、ここで紹介します。 個人的には地味に便利と思っているのですが、万人受けするようなものではなさそうです…

PoliCTF John's shuffle: system("sh") technique

This is my short writeup for John's shuffle. John is completely drunk and unable to protect his poor stack.. Fortunately he can still count on his terrific shuffling skills. Connect to shuffle.polictf.it:80 This is pwnable challenge worth …

Perl5におけるコンテキストの扱いによる脆弱性について

The Perl Jam - Exploiting a 20 Year-old Vulnerability よりPerlを普段から書いている人にとっては常識ではあるが、そうではない人のために書いておく。 リストと配列 Perlにおける「リスト」とは何かというのを確認しておく。まず、Perlにはコンテキスト…

No cON Name CTF Quals 2014 writeup

CTF

チームdodododoで参加。最近はよく自分(@akiym)とれっくす(@xrekkusu)の2人で参加している。 結果は7位。finalsの参加権が貰えるらしいが、会場はスペインでおそらく交通費はでないので破棄ということに。問題は開始時にすべてオープンされる形になっており…

CTF各位3

CTF

loginpage1 (web 10)running at ctf.katsudon.org:5002 #!/usr/bin/env perl use Mojolicious::Lite; app->secrets([$ENV{FLAG}]); get '/' => sub { my $self = shift; return $self->render('index', user => $self->session->{user}, flag => $ENV{FLAG},…

SECCON 2014 オンライン予選(日本語) writeup

CTF

SECCON 2014 オンライン予選(日本語)にdodododoとして参加した。2302点で5位。とりあえず全国大会の出場権は獲得できた(上位8位まで)。チームメンバーによるwriteup: http://xrekkusu.hatenablog.jp/entry/2014/07/19/220129 以下、自分が解いた問題のwriteu…

CTF各位2

CTF

blacklist (web 10)running at ctf.katsudon.org:5001 use Mojolicious::Lite; use DBI; # enjoy~ my $BLACKLIST_CHAR = qr/['"`=]/; my $BLACKLIST_WORD = qr/select|insert|update|from|where|order|union|information_schema/; my $dbh = DBI->connect('d…

2014年だけどファミコンのゲームを作りませんか? #1

ゲームを作ろうと思い立ったはいいものの、何から始めればいいんだろう…。cocos2d-xでスマホゲームを作る?Unityで3Dバリバリのゲームを作る?いまいちパッとしませんね。そうです、なんだか複雑すぎるのです。 そんなあなたにピッタリなのがファミコンのゲ…

CTF各位1

CTF

10guess (crypto 10)running at ctf.katsudon.org:5555 package main import ( "bufio" cr "crypto/rand" "crypto/rsa" "fmt" "log" "math/big" "math/rand" "net" "strconv" ) var seed int64 = ????? func handleConnection(conn net.Conn) { log.Printf("…

BCTF writeup: web100, 200, 300

CTF

今週末のCTF - てっじーの丸出しを見て、BCTFというのがあるらしいのを知ったのでちょっとだけやってみた。Baiduがスポンサーらしい。しかし、登録から問題文まで全面中国語なのでGoogle翻訳で乗り切ることに。 問題自体は英語で、ほとんど中国語がなかった…

SECCON 2013 全国大会 writeup

CTF

3/1, 2に行われたSECCON 2013 全国大会にdodododoとして参加してきた。最終的なスコアは1261点で、順位はおそらく9位。やはりbinaryができる人がいないとつらいものがある :) ルール サーバが6つ用意されていて、塔にまつわる名前が付けられている。Korin、2…