特徴的な素因数分解アルゴリズムを実装してみる

「単純な素因数分解アルゴリズムを実装してみる」 ではPollard-Rhoアルゴリズムなど、「Msieveを使って大きな数を素因数分解してみる」 では複数多項式二次ふるい法(MPQS)などの素因数分解アルゴリズムの実装と評価を行った。 ここでは、上記以外の素因数…

Security Tech Lounge Vol.6 春のCTFセンバツ 供養(Writeup)

CTF

Security Tech Lounge Vol.6 春のCTFセンバツに参加。12チーム中1位。 packet (100) pcapngファイルが与えられる。 $ file packet packet: pcap-ng capture file - version 1.0 Wiresharkで開くとICMPパケットが並んでおり、パケット長が3種類の異なるバイト…

Harekaze CTF 2018 供養(Writeup)

CTF

Harekaze CTF 2018に参加。1430ptで23位。 welcome flag (WarmUp, 10 points) HarekazeCTF{Welcome to the Harekaze CTF!} easy problem (WarmUp, 30 points) ROT13。 $ python Python 2.7.12 (default, Nov 20 2017, 18:23:56) [GCC 5.4.0 20160609] on lin…

WindowsホストのDNSキャッシュを表示する

OS起動中に保持されるDNSキャッシュを表示するには、ipconfig /displaydns または powershell -c Get-DNSClientCache (Windows 8以降)を使う。 >ipconfig /displaydns Windows IP 構成 www.gstatic.com ---------------------------------------- タイプ A…

OCamlで簡単なプログラムを書いてみる

プログラミング言語のひとつであるOCamlで簡単なプログラムを書いてみる。 環境 Ubuntu 16.04.2 LTS 64bit版、OCaml 4.02.3 $ uname -a Linux vm-ubuntu64 4.4.0-66-generic #87-Ubuntu SMP Fri Mar 3 15:29:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux $ l…

「Can We Prevent Use-after-free Attacks?」というタイトルで発表した

ssmjp スペシャル 〜すみだとささみとみちおさん〜のお知らせ – ssmjp Infomation ssmjpスペシャル(2017/06/04) - すみだセキュリティ勉強会 2年前に発表していた勉強会が久しぶりに開催されるということで、Use-after-free攻撃の原理と対策について話した。…

LWE格子暗号による暗号化をやってみる

近年、量子コンピュータ研究の進展により、量子コンピュータでも解くのが難しい暗号(Post-quantum cryptography; 耐量子計算機暗号)への注目が高まっている。 ここでは、耐量子計算機暗号のひとつであるLWE格子暗号の原理を説明し、単純化したアルゴリズム…

RCTF 2017 供養(Writeup)

CTF

RCTF 2017に参加。185ptで176位。 Sign In (Misc 32) Please join #rctf2017 on Freenode. And the flag is in topic. Format: RCTF{...} RCTF{Welcome_To_RCTF_2017} easyre (Reverse 153) 32 bit ELF実行ファイル。 $ file easy_re easy_re: ELF 32-bit LS…

Spring Bootでエラーページをカスタマイズする

「Spring Bootで簡単なWebアプリケーションを書いてみる」では、Spring Bootで簡単なWebアプリケーションを書いた。 ここでは、デフォルトのエラーページをカスタマイズしてみる。 環境 Windows 10 Pro、Java SE 8、Spring Framework 4.3.7.RELEASE(Spring …

Spring BootでMySQLを使う

「TomcatとApache HTTP ServerでSpring Bootアプリケーションをデプロイしてみる」では、作成したSpring BootアプリケーションをTomcat上にデプロイした。 しかし、現在の状態ではデータベースとしてH2を利用する状態になっている。 ここでは、アプリケーシ…

TomcatとApache HTTP ServerでSpring Bootアプリケーションをデプロイしてみる

「Spring Securityでユーザ認証を実装してみる」では、Spring Securityで簡単なユーザ認証を実装した。 ここでは、UbuntuサーバにTomcatをインストールし、作成したアプリケーションをデプロイしてみる。 また、Apache HTTP Serverをインストールし、アプリ…

Spring Bootでテストを書いてみる

「Spring Securityでユーザ認証を実装してみる」では、Spring Securityで簡単なユーザ認証を実装した。 ここでは作成したアプリケーションについて、認証処理の挙動に関するテストコードを記述してみる。 環境 Windows 10 Pro、Java SE 8、Spring Framework …

PlaidCTF 2017 供養(Writeup)

CTF

PlaidCTF 2017に参加。236ptで182位。 sanity check (Misc 1) The flag is PCTF{poop} logarithms are hard (Misc 10) What is e1.000000001? Please enter in decimal with 7 places. (For example, if the answer was 2.71828183… the flag would be 2.718…

Spring Securityでユーザ認証を実装してみる

「Spring Bootで簡単なWebアプリケーションを書いてみる」では、Spring Bootで簡単なWebアプリケーションを書いた。 ここでは作成したアプリケーションをベースに、Spring Securityを使ってユーザ認証を実装してみる。 環境 Windows 10 Pro、Java SE 8、Spri…

BCTF 2017 供養(Writeup)

CTF

BCTF 2017に参加。767ptで62位。 Checkin (Misc 69) スコアサーバに表示されているトークンを送る。 $ nc 202.112.51.247 6666 Connection UUID:[redacted] Token:[redacted] bctf{N0_PWN_N0_FUN} monkey (Pwn 327) Spidermonkeyのjsshellが動いている。 hel…

ASIS CTF Quals 2017 供養(Writeup)

CTF

ASIS CTF Quals 2017に参加。1075ptで47位。 Welcome! (Trivia 1) What is the smallest valid flag for ASIS CTF? ASIS{} Start (Pwning/Warm-up 89) ELF 64-bit、NX、canary無効。 $ file Start_7712e67a188d9690eecbd0c937dfe77dd209f254 Start_7712e67a1…

Spring BootでJSONやExcelファイルを返すエンドポイントを作ってみる

「Spring Bootで簡単なWebアプリケーションを書いてみる」では、Spring Bootで簡単なWebアプリケーションを書いた。 ここでは作成したアプリケーションをベースに、APIとしてJSONを返したり、Excelファイルとしてダウンロードするエンドポイントを作ってみる…

Spring Bootで簡単なWebアプリケーションを書いてみる

JavaでWebアプリケーションを開発する際のフレームワークとして、近年Apache Strutsに代わりSpring Frameworkが広く使われている。 ここでは、Springが提供するBootstrapフレームワークSpring Bootを用いて、簡単なWebアプリケーションを書いてみる。 環境 W…

Nuit du Hack CTF Quals 2017 供養(Writeup)

CTF

Nuit du Hack CTF Quals 2017に参加。410ptで113位。 Slumdog Millionaire (Web 100) 10個の疑似乱数を繋げたトークンとして、次に何が出てくるか求める問題。 seedがプロセスIDになっているので、last winningを一つ取得した後65535通りの総当たりで解ける…

April Fools' GTF 2017 供養(Writeup)

CTF

April Fools' GTF 2017に参加。1809ptで15位。 Welcome!! (Misc 555) Please input your password.(Today is April Fool) Today is April Fool がフラグ、かと思いきや何でも通るっぽい。 thinking_face (Trivia 51) Good GTFs always have trivia tasks. (…

VolgaCTF 2017 Quals 供養(Writeup)

CTF

VolgaCTF 2017 Qualsに参加。1150ptで51位。 VC (crypto 50) Visual secret sharing scheme(Visual cryptography)。 $ composite -compose difference A.png B.png C.png VolgaCTF{Classic_secret_sharing_scheme} PyCrypto (crypto/reverse 150) 20バイト…

MSVCR???.dllやMSVCP???.dllが見つからないときの対処法

Windowsアプリケーションを実行する際、まれに次のようなエラーメッセージが表示されて起動できないことがある。 コンピューターに MSVCR120.dll がないため、プログラムを開始できません。この問題を解決するには、プログラムを再インストールしてください…

0CTF 2017 Quals 供養(Writeup)

CTF

0CTF 2017 Qualsに参加。237ptで119位。 Welcome (Misc 12) IRCのチャンネルトピックにflagがある。 #0ctf2017: Welcome to 0ctf 2017! https://ctf.0ops.net (flag{Welcome_to_0CTF_2017}) integrity (Crypto 75) AES-128-CBCで暗号化されたデータを細工す…

AlexCTF 供養(Writeup)

CTF

AlexCTFに参加。990ptで259位。 TR1: Hello there (Trivia 10) IRCのチャンネル名にフラグがある。 IRC: #alexctf @freenode #alexctf: Alexandria University student held capture the flag event ctf.oddcoder.com ALEXCTF{W3_w15h_y0u_g00d_luck} TR2: S…

BITSCTF 2017 供養(Writeup)

CTF

BITSCTF 2017に参加。410ptで30位。 BotBot (Web 10) /robots.txtを見るとそれっぽいものがある。 Useragent * Disallow: /fl4g /fl4gにアクセスすると301になるが、/fl4g/にしたところフラグが得られた。 $ curl -v http://botbot.bitsctf.bits-quark.org/f…

scikit-learnでt-SNE散布図を描いてみる

「scikit-learnでPCA散布図を描いてみる」では、scikit-learnを使ってPCA散布図を描いた。 ここでは、scikit-learnを使って非線形次元削減手法のひとつt-SNEで次元削減を行い、散布図を描いてみる。 環境 「scikit-learnでPCA散布図を描いてみる」を参照。 M…

scikit-learnでPCA散布図を描いてみる

高次元の特徴量を持つデータの分布をおおまかに把握する方法として、PCA(主成分分析)で次元削減した後散布図を描く方法がある。 ここでは、Dockerを用いてデータ分析プラットフォームAnaconda環境を構築し、scikit-learnを使ってPCA散布図を描いてみる。 …

Insomni'hack teaser 2017 供養(Writeup)

CTF

Insomni'hack teaser 2017に参加。250ptで93位。 baby (Pwn 50) NX、PIE、FullRELROが有効なx86-64 ELF。 # file baby baby: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for G…

Pari/GPで楕円曲線離散対数を計算してみる

「Pari/GPでECDH鍵交換、ECDSA署名をやってみる」では、数式処理システムPari/GPを使ってECDH鍵交換、ECDSA署名の計算を行った。 これらの楕円曲線暗号は、楕円曲線離散対数問題(ECDLP)と呼ばれる問題が計算量的に困難であることを安全性の根拠としている…

screenのウィンドウタイトルをいい感じに自動変更する方法のメモ

GNU Screenでウィンドウタイトルを 普段はカレントディレクトリのディレクトリ名 コマンド実行中はコマンド名 SSHログイン中はリモートホスト名 に自動変更し、非アクティブウィンドウでコマンドが終了した際にハイライトさせる方法のメモ。 ここでは、次の…