Szarny.io

There should be one-- and preferably only one --obvious way to do it.

tan(x/2)=t と置換して解く f(sinx,cosx) の積分

結論 導出 前提 tanxの導出 cosxの導出 sinxの導出 dxの導出 例題を解く 良く忘れるのでメモ 結論 とおくと,以下のように置換積分が可能になる. 導出 前提 tanxの導出 2倍角の公式を用います. cosxの導出 2倍角の公式を用いた後,cosxをtanxで置き換えま…

Pythonで実装する素数判定アルゴリズムと実行効率の比較

はじめに ごり押し判定法 説明 ソースコード ちょっと改善した判定法 説明 ソースコード 素数の性質を利用した判定法 説明 ソースコード フェルマーの小定理を利用した判定法 説明 ソースコード エラトステネスの篩 説明 ソースコード 実行時間の比較 説明 …

pythonのtqdmモジュールで進捗状況を表示する

はじめに モジュールのインストール 使用例 簡単な例 関数と組み合わせる 通信処理と出力のカスタマイズ はじめに tqdmモジュールを使うことで,プログラムの進捗状況を可視化することができるようです. 実際に使いながら見ていきます. モジュールのインス…

Metasploitのsmb_versionモジュールを使ってWindowsマシンを特定する

SMBとは Server Message Block (SMB) は、主にWindowsで使用されているOSI参照モデル第7層アプリケーション層部分の独自通信プロトコルの総称。 LANを通じてファイル共有やプリンタ共有などの実現に使用される。 Server Message Block - Wikipediaより 実践 …

高性能ポートスキャナ「Nmap」を使ってポートスキャン - 通信方式・オプション・実行例ほか

ポートスキャンとは Nmap Nmapとは 通信の流れ フォーマット Nmapのオプション オプション(詳細表示編) オプション(ホスト発見編) オプション(スキャン方法編) オプション(ポート指定編) オプション(スプーフィング編) オプション(ファイル出力編) よく用い…

Base64 Encoder + Decoder をPythonで実装する

はじめに よくマルチメディアデータのエンコーディングに使われており,目にすることが多いBase64.いまいち仕組みがよく分かっていなかったので,イチから実装してみました. 仕組み Base64変換の手順を以下に挙げる。 元データを6ビットずつに分割。(6ビ…

SANS NETWARSトーナメント2017 に参加しました

SANS NETWARS トーナメント 2017 参加してきました. SANS NETWARSトーナメント2017 | イベントのご案内 | 情報セキュリティのNRIセキュア内容や問題の公開は禁止されているのでそれ以外のことを. 着くまで まず,会場が結構大きなビル(株式会社サンケイビ…

バッファオーバーフローを実験する(deadbeefとeip奪取)

はじめに バッファオーバーフローでdeadbeef 用いるプログラムと実行結果 バッファオーバーフローの実践 バッファオーバーフローでプログラムカウンタ(eip)の奪取 用いるプログラム main関数の先頭アドレスの調査 スタックフレームにpushされたeipの調査 eip…

VMware Playerでインターネット接続が突然切れた

普段,VMware Player上でNAT設定にてKali Linuxを動かしてるんですが,突然インターネット接続が切れてしまいました(;^_^A 以前にも同じようなことがあって手間取ったので,忘れないようにメモ ネットワーク設定 ネットワーク設定がおかしいのかなと思い,[…

簡単なプログラムをgdb-pedaで解析する

使用するプログラム gdb-prac.c 実行結果 gdb-pedaで逆アセンブル 下準備 fgetsのcall strcmpのcallとtest命令 ジャンプの後 leaveとretで終了 おわりに CTFのBinary系問題が全然解けないので,基礎を見直すつもりで書きます(;^ω^) (ので,おそらくどこかし…

straceとltraceでトレース

はじめに ltraceの実例 straceの実例 参考書籍 はじめに strace [対象コマンド] 対象コマンドを実行しながら,システムコールを詳細にトレースし出力する. ltrace [対象コマンド] 対象コマンドを実行しながら,ライブラリ関数を詳細にトレースし出力する. …

ksnctf 19. ZIP de kure の writeup

問題リンク 調査 既知平文攻撃 おわりに 問題リンク ksnctf - 19 ZIP de kure

ksnctf 31. KanGacha の writeup

問題リンク 問題文からの調査 ソースコードの調査 解法 おわりに 問題リンク ksnctf - 31 KanGacha

ksnctf 9. Digest is secure! の writeup

問題へのリンク 問題文からの調査 Digest認証 問題解析 解法 おわりに [追記]Pythonスクリプト 問題へのリンク ksnctf - 9 Digest is secure!

情報処理安全確保支援士試験 平成29年春期 午後Ⅰ問3 解説

過去問リンク https://www.jitec.ipa.go.jp/1_04hanni_sukiru/mondai_kaitou_2017h29_1/2017h29h_sc_pm1_qs.pdf 解説 設問1 解答 接続元IPアドレスがF社のグローバルIPアドレスではないこと F社で利用しているクラウドサービスではログイン記録として,アク…

情報処理安全確保支援士試験 平成29年春期 午後Ⅰ問2 解説

問題リンク https://www.jitec.ipa.go.jp/1_04hanni_sukiru/mondai_kaitou_2017h29_1/2017h29h_sc_pm1_qs.pdf 解説 設問1 L氏からの確認内容 L氏が今日ログインしたと言っている回数 ログイン記録 L氏の利用者IDを用いた今日のログイン回数 もし不正ログイン…

応用情報技術者試験 平成29年春期 午後問題解説 - セキュリティ分野

過去問リンク https://www.jitec.ipa.go.jp/1_04hanni_sukiru/mondai_kaitou_2017h29_1/2017h29h_ap_pm_qs.pdf 解説 設問1 a ク (水飲み場型) b エ (Webページ) c ウ (URLフィルタリング) f カ (ブルートフォース) ターゲットに対して悪意のあるURLや添付フ…

pythonのsocketでEchoサーバ作成!

はじめに ソースコード server.py client.py 実行結果 server.py client.py 参考 はじめに socketモジュールを使ってEchoサーバをつくります. 実行環境はpython2.7.13です. ソースコード server.py #!/usr/bin/env python # -*- coding: utf-8 -*- import …

Pythonメモ - getoptの使い方

getoptについて 基本文法 実例 getoptについて getoptを使うことで,コマンドラインのオプションの解析を行うことができるようなのでメモ. argparseという別のモジュールもあるようなので,おいおい調査します. 基本文法 import getopt opts,args = getopt…

python2でのTCPサーバとクライアントの作成

もくじ もくじ TCP Serverのソースコード TCP Clientのソースコード 実験 Client側 Server側 参考書籍 TCP Serverのソースコード import socket import threading SERVER_IP = "0.0.0.0" SERVER_PORT = 8080 # Create socket object (AF_INET -> IPv4 , SOCK…

Cross-site Scripting(XSS)について

XSSとは XSSとは,攻撃者が仕掛けたJavaScriptコード等が,他人のWebサイト上で実行される脆弱性です.攻撃側が直接対象に対して攻撃を行うのではなく,対象が罠に引っかかるようにしておき,その罠が実行されるのを待つという受動型攻撃にあたります. XSS…

Webアプリケーションにおける脆弱性(Injection編)

SQLインジェクション HTTP ヘッダインジェクション HTTP Request HTTP Response SQLインジェクション SQLインジェクションは,ユーザからの入力に基づいてデータベースに対してクエリを発行するWebアプリケーションにおいて発生し得る脆弱性です. 入力フォ…

SMTPの通信方式・コマンドについて

SMTP (Simple Mail Transfer Protocol) は,電子メールの送信に用いるL7のプロトコルです. 今まではぼやっとした理解でしたが,CTFで直接SMTPコマンドを入力する問題が出題されていたので,今回はそのコマンドや通信方式について簡単に要約します. 一般的…

Sympyで♥

from sympy import * x = Symbol("x")y = Symbol("y") exp = x*x + ((y - ((x*x) ** (1/3))) ** 2) - 1s = solve(exp, y)p = plot(s[0], s[1], (x,-1.7, 1.7), show=False)p[0].line_color = p[1].line_color = "#FF14A0"p.show()

Python3メモ - SymbolとFiniteSet

Sympyのインポート from sympy import * Sympyシンボルの生成と利用 x = Symbol("x") y = Symbol("y") exp = (x + y) * (x - y) # 式の展開(expand) exp.expand() # x**2 - y**2 # 変数への値代入 exp.subs({x:1, y:4}) # -15 二次方程式の解の公式 x = Symb…

SECCON Beginners 盛岡のwriteup

もうだいぶ前になりますが,6/19に盛岡情報ビジネス専門学校で開催された,SECCON Beginners 盛岡に参加してきました. 2017.seccon.jp 以前からセキュリティについては勉強していましたが,実際に攻撃するだとかネットワークをキャプチャするだとかの方面に…

Python3メモ - matplotlibでグラフ描画

matplotlibとは Matplotlibは、プログラミング言語Pythonおよびその科学計算用ライブラリNumPyのためのグラフ描画ライブラリである。オブジェクト指向のAPIを提供しており、様々な種類のグラフを描画する能力を持つ。 https://ja.wikipedia.org/wiki/Matplot…

Python3メモ - BeautifulSoup4のあれこれ

BeautifulSoupとは Beautiful Soup is a Python library for pulling data out of HTML and XML files. It works with your favorite parser to provide idiomatic ways of navigating, searching, and modifying the parse tree. It commonly saves program…

Python3メモ - Web関連

requestsモジュールを用いたWebコンテンツへのアクセス >>> import requests >>> req = requests.open("https://www.google.com") >>> for k,v in req.headers.items(): ... print("[{}]{}".format(k,v)) [Date]Mon, 10 Jul 2017 04:10:28 GMT [Expires]-1 […

Python3メモ - 文字列関連

Python3の忘れそうな文字列関連のメソッド等々についてのメモ string.find(word)string内において,最初にwordが出現する位置を返す >>> alphabet = "abcdefghijklmnopqrstuvwxyz">>> alphabet.find("k")10 string.replace(str1, str2, time)string内のstr1…