Explore "Full-Stack" in depth!

情報系の専門学校で、今は機械学習に的を絞って学習中。プログラミングを趣味でやりつつ、IT系のあらゆる知識と技術を身に付けるべく奮闘中。

C言語

glibcラッパーからLinuxのシステムコールハンドラまでを読む,まとめる

概要 システムコールの流れ glibcでのシステムコールラッパーの処理 syscall 命令の実行 Linuxのシステムコールハンドラ 概要 IPFactory Advent Calendar 2019 一日目. 急遽開いた弊サークルのカレンダー,既に一日目が終わろうとしている. ここでは日頃勉強…

Seccamp2019でCコンパイラ実装に取り組みました

概要 応募課題について 問1 問2 問3 集中開発コースについて 成果物とその進捗について 事前学習期間 当日 総評 概要 セキュリティ・キャンプ全国大会2019に参加しました! 集中開発コースの中にある 「Y-Ⅱ Cコンパイラを自作してみよう!」のテーマに応募し、 普…

バイナリ何もわからない人に送る"ソースコード視点"のELFヘッダ解説

目次 目次 概要 まずはおさらい 本題:readelf 総評 概要 ELFフォーマットを理解するための試み第二弾。 こちらの記事の続きと言ってもいいです。 drumato.hatenablog.com 上記の記事には間違いが多いので注意してください。 本記事バイナリ何もわからない人に送…

UNIX/V6における実行プロセス切り替えのsleep()→swtch()を最低限理解する

目次 目次 概要 前提 UNIX V6とは PSW(Processor Status Word) 汎用レジスタ プロセスとは 並列処理 user構造体 proc[]とproc構造体 仮想アドレス空間 本題 並列処理におけるプロセスのフロー sleep() sleep()まとめ swtch() 実行プロセスの選択アルゴリズム…

DirtyCOW(CVE-2016-5195)を最低限理解する。

目次 目次 概要 前提知識 本題 Linuxとプロセスの関係 PoCを見てみる レースコンディションの仕組み まとめ 概要 LinuxKernelに存在した脆弱性のDirtyCOW 今は完全にパッチが当てられていますが、その仕組みはとても奥深く、 理解にはLinuxKernelの挙動の理解…