namdicul's blog

気ままに更新します. CTFと暗号理論について勉強中です.

サイバーセキュリティプログラミング(ARPキャッシュポイズニング)

今回は「Scapy」と呼ばれるライブラリを使用して,ネットワーク掌握に挑戦してみましょう.さらに,ARPキャッシュポイズニングという攻撃を仕掛けられるようにしましょう. Scapyの使い方 以下のようなコードを書くだけで簡単にパケット傍受をすることができ…

サイバーセキュリティプログラミング(パケット盗聴)

前回は基本的なTCP通信をPythonで実装しました.今回はrawソケットを使ってパケット盗聴をしてみましょう. 単純なパケット盗聴 (Windows & Linux 対応) import socket import os # ターゲットホスト host = "192.168.3.7" # パケットを盗聴するために必要な…

サイバーセキュリティプログラミング (TCPクライアントからSSH通信プログラムまで)

はじめに 本日はサイバーセキュリティプログラミングの基礎を解説していこうと思います.参考にした本はコチラです. サイバーセキュリティプログラミング ―Pythonで学ぶハッカーの思考作者: Justin Seitz,青木一史,新井悠,一瀬小夜,岩村誠,川古谷裕平,星澤…

DES暗号を実装する(2) ~データ暗号化・復号編~

データ暗号化・復号アルゴリズム 転置 ラウンド関数 拡大転置, 出力転置 S-boxの仕組み コード 出力結果 まとめ 前回はサブ鍵の構成方法について説明しましたが, 今回はデータの暗号化と復号アルゴリズムについて見ていきましょう. データ暗号化・復号アルゴ…

DES暗号を実装する(1) ~サブ鍵生成アルゴリズム編~

使用言語 DES暗号とは サブ鍵の生成方法 サブ鍵生成アルゴリズム プログラム 共通鍵暗号方式の代表的な暗号方式である「DES暗号」を実装してみたいと思います. 今回の記事では, DESで使用する「サブ鍵」の生成アルゴリズムを実装していきます. 使用言語 Pyth…

共通鍵暗号の攻撃モデル

暗号文単独攻撃(Ciphertext Only Attack; COA) 既知平文攻撃(Known Plaintext Attack; KPA) 選択平文攻撃(Chosen Plaintext Attack; CPA) 選択暗号文攻撃 適応的選択暗号文攻撃 今回は, 共通鍵暗号の攻撃モデルについて説明していきたいと思います. 暗号文単…

シーザー暗号をUNIXで試す

UNIXでシーザー暗号を使いたいとき, 以下のようにコマンドを打てばOKです. Hirata:~ hiratatomonori$ echo AKADEMIA | tr A-Z D-ZA-C DNDGHPLD Hirata:~ hiratatomonori$ echo DNDGHPLD | tr D-ZA-C A-Z AKADEMIA Hirata:~ hiratatomonori$ trコマンドについ…

Rails application

https://www.instagram.com/p/BrF79oJF—qW7qnWENvf7kF-Ny3UDYOvzotzbc0/:image=https://www.instagram.com/p/BrF79oJF—qW7qnWENvf7kF-Ny3UDYOvzotzbc0/media/?size=l もっとモダンなデザインにしたい.

pwnable.kr writeup [blackjack]

問題 http://cboard.cprogramming.com/c-programming/114023-simple-blackjack-program.html 解説 この問題は, blackjackのゲームでmillionareになればflagゲットとなります. 問題 Hey! check out this C implementation of blackjack game! I found it onli…

pwnable.kr writeup [cmd1]

問題 解答 この問題は, 一時的にPATHを変更された場合にどのようにシェルを動かすかっていう話ですね. 問題 Mommy! what is PATH environment in Linux?ssh cmd1@pwnable.kr -p2222 (pw:guest) 解答 まずはcmd1.cを見てみましょう. #include <stdio.h> #include <string.h> int </string.h></stdio.h>…

pwnable.kr writeup [shellshock]

問題 解説 この問題はおそらく知らないと解けない問題です... 問題 Mommy, there was a shocking news about bash. I bet you already know, but lets just make it sure :) ssh shellshock@pwnable.kr -p2222 (pw:guest) 解説 これはCVE-2014-6271というbas…

pwnable.kr writeup [mistake]

問題 解説 最後に 今回はpwnable.krのmistakeという問題のwriteupを紹介します. 問題 We all make mistakes, let's move on. (don't take this too seriously, no fancy hacking skill is required at all)This task is based on real event Thanks to dhmon…

pwnable.kr writeup [random]

問題 解説 今回は, pwnable.krのrandomという問題のwriteupを紹介します. C言語のrand()関数の使い方が誤っていると, randomな数字が得られませんよって感じの問題ですね. 問題 Daddy, teach me how to use random value in programming!ssh random@pwnable.…

pwnable.kr writeup "passcode"

問題 解説 表層解析 動的解析 静的解析 GOT-Overwriteの仕組み. この問題の解法 解答 今回は, http://pwnable.kr/play.phpの"passcode"のwriteupを書いていこうと思います.この問題はわからなかったので, 他の方のwriteupを参考にさせていただきました. この…

"flag" 「UPXとは」

問題 解説 ところでUPXってなに? pwnableの問題を解き進めていたところ, 「UPX」を使用する問題に出会いました. UPXについて何も知らなかったので, writeupがてらUPXについて調べたことをまとめておこうと思います. 問題 http://pwnable.kr/play.phpバイナ…

scpコマンドとsshコマンド

scpコマンド sshコマンド scpコマンドとsshコマンドのusageがたまにごっちゃになるので, メモしておく. scpコマンド (例) scp -r -P 2222 fd@pwnable.kr:~/ ./ sshコマンド (例) ssh col@pwnable.kr -p 2222

埋め込みファイルを抽出する

binwalkコマンド ddコマンド 引用サイト [Google CTF 2018 BEGINNERS QUEST] FLOPPY を解いていたところ, icoファイルにzipデータが埋め込まれていて, それを取り出す方法を知らなかったので備忘録としてまとめておきます. binwalkコマンド [Google CTF 2018…

[SECCON CTF writeup] classic pwn

先日行われたSECCON CTFで出題された「classic pwn」のwriteupを書こうと思います. ファイルの調査 解法 解答 exploitコード(python2系) 実行結果 exploitコード(python3系) 実行結果 ファイルの調査 まずは定石通り, ファイルのタイプやRELRO情報などを調べ…

アドレスリークにおけるexploitコード

コード read_untilメソッド pメソッド uメソッド interactメソッド mainメソッド CTFにおいてpythonでexploitコードを書くことは頻繁にあるので, ここでコードとその詳細についてまとめておきます. コード from socket import * from telnetlib import Telne…

uuencodeというものに出会ったので一応簡単にまとめた

uuencodeとは コマンド uuencodeとは uuencodeは, バイナリデータをテキストデータに変換するUNIX及びUnix系OSのコマンドのことを指します. 今でも多くのメーラに対応していますが, 一般的にはbase64が使用されていることが多いです. 初期のUnix系OSではUUCP…

BASE64の仕組み

今回はbase64というエンコード方式についてまとめます. base64とは base64の仕組み 実装 base64とは base64とは, 64種類の印字可能な英数字(a-z, A-Z, 0-9, +, /)のみを用いて, マルチバイト文字やバイナリデータをエンコードする方式です. SMTPという電子メ…

CTF ネットワーク問題の基本問題(1)

CTF

sample.pcap sample2.pcap sample3.pcap パケットの統計を見る 暗号化されていないプロトコルの分析 特定のポート・アドレスの通信を分析 終わりに CTFの勉強をサボりすぎていたのでそろそろ勉強を再開しようと思います. 今回はネットワーク問題に焦点を絞っ…

暗号理論 [番外編] ~ ElGamal暗号 ~

ElGamal暗号とは 事前知識 ElGamal暗号の仕組み 鍵生成アルゴリズム 暗号化アルゴリズム 復号化アルゴリズム ElGamal暗号の正当性 ElGamal暗号の安全性 ElGamal暗号とは ElGamal暗号とは, 1984年にエルガマルによって提案された暗号です. ElGamal暗号は, 離…

暗号理論 [まとめ1] ~ (2)から(8)のまとめ ~

これまで紹介してきた記事は1つ1つが独立している訳ではなく,それぞれ関連があります.それを1度まとめてみましょう. 共通鍵暗号方式 共通鍵暗号方式とは,暗号化と復号に同じ鍵を使用する場合のことを指します.バーナム暗号やストリーム暗号は共通鍵暗号…

暗号理論 [番外編] ~ Diffie-Hellman鍵共有プロトコル ~

事前準備(初等整数論) 剰余計算 フェルマーの小定理 位数, 原始元 Diffie-Hellman鍵共有プロトコルの仕組み Diffie-Hellman鍵共有プロトコルの安全性 Diffie-Hellman鍵共有プロトコルに対する攻撃手法 共通鍵暗号方式において, 鍵共有問題は永遠のテーマでも…

暗号理論(8) ~ 証明書 ~

暗号技術入門 第3版作者: 結城浩出版社/メーカー: SBクリエイティブ発売日: 2015/08/26メディア: 単行本この商品を含むブログ (19件) を見る暗号技術のすべて作者: IPUSIRON出版社/メーカー: 翔泳社発売日: 2017/08/03メディア: 単行本(ソフトカバー)この…

暗号理論(7) ~ デジタル署名 ~

暗号技術入門 第3版作者: 結城浩出版社/メーカー: SBクリエイティブ発売日: 2015/08/26メディア: 単行本この商品を含むブログ (19件) を見る暗号技術のすべて作者: IPUSIRON出版社/メーカー: 翔泳社発売日: 2017/08/03メディア: 単行本(ソフトカバー)この…

暗号理論(6) ~メッセージ認証コード~

暗号技術入門 第3版作者: 結城浩出版社/メーカー: SBクリエイティブ発売日: 2015/08/26メディア: 単行本この商品を含むブログ (19件) を見る暗号技術のすべて作者: IPUSIRON出版社/メーカー: 翔泳社発売日: 2017/08/03メディア: 単行本(ソフトカバー)この…

プロ野球データ解析 その3

データ解析作業に大分慣れてきました. 本日は奪三振率についてデータ解析を実行してみました. やっぱりピッチャーって三振を奪ったときが一番かっこいいですし, 奪三振をたくさん取れるって魅力的ですよね... 前回同様, 2009年から2018年9月7日現在までの奪…

プロ野球データ解析 その2

久しぶりにデータ解析を. 前回同様に, プロ野球Freakというサイトから投手データを引っ張ってきて, データ処理を実行しました. 今回は2009年〜2018年9月5日現在の投手データから, 負け数とWHIPをまとめて表にしました. 負け数に関する結果は以下の通りです ↓…