anhol0/helloworld-bruteforced

Linuxのメモリ空間をブルートフォースして、関数アドレスを知らずに関数を呼び出すデモンストレーション。

学習教材自由に使える · MITセキュリティC難易度
37+0今週0
1フォーク0Issue

中辛 の解説

C言語で書かれた実験的なツールで、/proc/self/mapsから実行可能メモリ領域を取得し、そこに含まれるすべてのバイトオフセットに対してhello_world関数を呼び出そうとします。子プロセスでの実行を安全に監視するためを活用し、seccompで権限を厳密に制限して任意コード実行時のダメージを抑えます。ほとんどのアドレスはセグメンテーション違反か不正命令で失敗しますが、正しいアドレスでは戻り値69が返されることで成功を確認できます。デモ・学習用のため、実用的な用途よりはLinux内部メカニズムの理解が目的です。

こんなリポジトリです

こんなときに便利です

  • プロセスメモリとLinuxカーネルの動作メカニズムを学習する際の参考例
  • ペネトレーションテストやセキュリティ研究でのメモリ探査技法の理解

主な機能

fork と seccomp を用いた安全な任意アドレス実行トライ/proc/self/maps からの実行可能メモリ領域抽出戻り値とダイナミックシンボルテーブル照合による関数の正確な特定

ほかとの違い

通常のツールとは異なり、シンボルテーブルやリンカ情報に依存せず、メモリの生のバイト列をしらみつぶしに調べて関数を発見する点が特徴です。

食べた人たち

実際に使ってみた人の記録です — 一言も完走の記録も、確認のうえで公開しています。

試食評 · 使った人のひとこと

まだ試食評がありません。使ってみたら、最初のひとことをどうぞ。

ほかのリポジトリの試食評を見る →

このリポジトリで作られたもの

🖋 完走を記録する

まだ完走の記録がありません。最初の一膳を記録してみませんか。

このリポジトリの作り方

はじめてですか? むずかしくありません — 上から順にたどれば、自分の環境で動かして味見できます。

準備するもの

  • Linux環境(カーネルとprocfsが必要)
  • GCC またはClangなどのCコンパイラ
  • make ビルドツール

すぐに始める

  1. リポジトリをクローンします。
git clone https://github.com/anhol0/helloworld-bruteforced.git
cd helloworld-bruteforced
  1. ビルドします。
make
  1. 実行可能ファイルを起動します。
./helloworld
  1. スキャン処理が開始され、メモリ内のアドレスをしらみつぶしに調べて hello_world 関数を探します。成功すると FOUND メッセージが表示されます。

ギット飯トライで味見

入れるのが面倒で少し不安だったなら — 安全スキャンからインストールまで、ターミナル一行で終わります。

ターミナルに貼り付ければ、ギット飯の安全スキャン → 隔離フォルダへ clone → インストール → 実行方法の案内まで自動です。はじめてでも大丈夫 — この一行だけです。

npx gitbap-try anhol0/helloworld-bruteforced

Node.js さえあれば、インストールなしで動きます · ギット飯トライとは? →

スター推移 · 7日

37+0 / 7日

使いやすさ · まねしやすいか

サンプル評点 34/100
  • ゆるいライセンス
  • テストあり
  • サンプル集
  • 最近の更新
  • AGENTS.md
  • llms.txt
  • テンプレート

最近の更新あり · 2026 年に作成

「セキュリティ」 こういうリポジトリを毎週受け取りませんか?

毎週月曜の朝、選んだ一膳だけ。広告なし · いつでも解除。

自分のリポジトリですか? README にギット飯バッジを貼る
[![깃밥](https://www.gitbap.com/badge/anhol0/helloworld-bruteforced.svg)](https://www.gitbap.com/r/anhol0/helloworld-bruteforced)
Claude からそのまま使う — ギット飯のつなぎ方

ギット飯を Claude につなぐと、こうしたリポジトリを Claude・Cursor・Codex から直接さがして試せます。

方法 ① コネクタ URL

Claude の設定 → コネクタにこのアドレスを貼り付け。

https://www.gitbap.com/api/mcp
方法 ② プラグイン(試用まで)

プラグインを入れると /gitbap-trending·/gitbap-try のスラッシュコマンドで、その場でリポジトリを試せます。Claude Code で下の 2 行を順に実行してください。

/plugin marketplace add jakeparkcolde/gitbap-cowork
/plugin install gitbap-cowork@gitbap
つなぎ方をくわしく →

AI が README をもとに要約しました · 原文を見る