Security Record

セキュリティ全般に関する情報を発信しています

プログラミング

PHPでバイナリセーフではない関数をまとめた。

バイナリセーフではない関数とは何か PHPでバイナリセーフではない関数の例 strpos関数 不適切な使用例 substr関数 不適切な使用例 strlen関数 不適切な使用例 file_get_contents関数 不適切な使用例 不適切に使用した場合のセキュリティリスクの例 バッファ…

C言語でバッファ領域にシェルを埋め込んで実行する方法

まずはexecveの識別子を調べる pwdコマンドを実行するアセンブリ言語の実装 アセンブリ言語の実行確認 objdumpコマンドによるバイト列の確認 バイト列を取得してシェルコードを生成する ダンプしたメモリをバイト列に書き換えるコマンド 実行確認用のコード…

C言語でバッファオーバーフローのテストをする方法

サンプルコード gccでコンパイルを実行する どこに脆弱性があるか確認する デバッガでメモリの中身を確認する 変数の上書きによるバッファオーバーフロー スタックの破壊によって変数を上書きする 実行結果の確認 戻り番地変更によるバッファオーバーフロー …

アセンブリ言語で「Hello world.」してみた

アセンブリ言語に入門「Hello world.」してみた。 まずはアセンブリ言語のソースコード アセンブリ言語の命令 アセンブリ言語の命令一覧(一部) アセンブリ言語のレジスタ一覧 ソースコードのアセンブル ldコマンドでリンク結合させる 機械語の確認 objdump…

Kali LinuxにVSCodeをインストールする手順

Kali LinuxにVSCodeをインストールする事になった経緯 VSCodeを公式ページよりダウンロードする インストールコマンドを実行する ユーザ '_apt' からアクセスできないため、ダウンロードは root でサンドボックスを通さずに行われます 起動コマンドを実行す…

Svelte入門 環境構築・フォルダ構成について

Svelte入門 環境構築・フォルダ構成に関する忘備録 環境構築手順 プロジェクトの生成 サーバーの起動 フォルダ構成の確認 まとめ Svelte入門 環境構築・フォルダ構成に関する忘備録 Vue.jsの50倍早いとかでフロントエンド界隈で注目を浴びている?svelte.js…

Firebase入門 デプロイまでの手順をまとめてみた

Firebaseのデプロイまでをまとめた 自分のポートフォリオ作成やちょっとした実験の場が欲しくてFirebaseでデプロイする方法を調べてみました。以前みたいにレンタルサーバーを借りなくてもかんたんに自分のサイトが公開できるのすごい便利…。 前提条件 これ…