SlideShare a Scribd company logo
1 of 19
破壊的難読化シェル芸
たいちょー
みなさん#!/bin/bash(こんにちはの意)
たいちょー
Twitter : @xztaityozx_001
母語はC#
最近色々壊しすぎてあだ名が
破壊神になりました アイコンステッカーあります
シェル芸 #とは
シェル芸の定義バージョン1.1
マウスも使わず、ソースコードも残さず、
GUIツールを立ち上げる間もなく、
あらゆる調査・計算・テキスト処理を
CLI端末へのコマンド入力一撃
で終わらすこと。あるいはそのときのコマンド入力
のこと。
 上田ブログ(https://blog.ueda.tech/)より
難読化シェル芸 #とは
kanata氏考案のヤバいシェル芸
定義
内部的な動作の手続き内容・構造・データなどを人
間が理解しにくい、あるいはそのようになるよう加
工されたシェル芸のこと。
-- A painter and a black cat より
例えば
$'x64x61x74x65‘
$(ls --help|grep ^M|cut -c4,5,6,16)
どちらもdateコマンド
なんですが・・・
置換による難読化はあまりにも弱い
危険シェル芸人に対する風当たりがますます強
くなる現在
「Dockerコンテナ内で使うだけだから!」
という理由での危険シェル芸の使用すら見つか
れば絞首刑になってしまいます
置換による難読化はあまりにも弱い
本来危険シェル芸を隠蔽するために考えられた難読化
シェル芸
今や
「ずがaなんだって?x61がaだって?」
「にて -にた み」(rm –rf /)って覚えやすいねぇ?
と目sed,目awkだけで簡単に見つかってしまいます
難読化シェル芸には新たな武器が必要
置換ではない別の手法で新たな武器が必要…
なにか武器っぽいコマンド無いかな…
gunzip
gunzipとgzip
gunzipコマンドはgzipコマンドでLZ77圧縮され
たファイルを展開するコマンド
つまり
gzipで危険シェル芸を圧縮 → gunzipで発射
gun(銃)が弱いわけがない
皆様におかれましては
「急にこいつは何を言っているのか」と思って
いることと思われますが僕は大丈夫です
まずは危険シェル芸をLZ77します
gzipは-cfを付けるとstdoutに結果を出力しま
す
でも出力はほぼ読めない
 → 難読火力UP!
危険シェル芸を圧縮
みんな大好き:(){ :|:& };:を試しにやります
あとは発射するだけ
特別なことはせずgunzipに通すだけです
xxdに通して書けるように
さっきのやつじゃキーボードから入力できない
のでxxdで書きやすいようにしちゃいます
これが書きやすいかどうかは別にして書けるよ
うになりました
gunzipの方もxxd –r –pを付けるだけ
(拡大してます)
これなら流石の監視員もぱっと見では判断でき
ないでしょう。僕らの勝ちです
別のアプローチ
gunじゃなくてcutする方法
echo 'もじれつ'|gzip -cfの出力からほしいのを
取り出す
$(echo f g aa|gzip -fc|cut -b12,16|sed
's@(.)@L1@g')
f g aaからslが
gun(zip)で危険シェル芸人の「枷」を破壊し解き放ち
「ふがあ」と言うだけでSLが走る
まさに破壊的イノベーション
↓
破壊的難読化シェル芸
なんだか訳が分からない事になってきましたが
僕は元気です

More Related Content

Viewers also liked

第31回シェル芸勉強会LT rmコマンドチキンレース!
第31回シェル芸勉強会LT rmコマンドチキンレース!第31回シェル芸勉強会LT rmコマンドチキンレース!
第31回シェル芸勉強会LT rmコマンドチキンレース!kunst1080
 
第30回シェル芸勉強会LT シェル芸思考
第30回シェル芸勉強会LT シェル芸思考第30回シェル芸勉強会LT シェル芸思考
第30回シェル芸勉強会LT シェル芸思考kunst1080
 
難読化シェル芸
難読化シェル芸難読化シェル芸
難読化シェル芸kanata -
 
危険PowerShell芸はできるのか?
危険PowerShell芸はできるのか?危険PowerShell芸はできるのか?
危険PowerShell芸はできるのか?kanata -
 
JavaScript難読化読経
JavaScript難読化読経JavaScript難読化読経
JavaScript難読化読経Yosuke HASEGAWA
 
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017Carol Smith
 

Viewers also liked (6)

第31回シェル芸勉強会LT rmコマンドチキンレース!
第31回シェル芸勉強会LT rmコマンドチキンレース!第31回シェル芸勉強会LT rmコマンドチキンレース!
第31回シェル芸勉強会LT rmコマンドチキンレース!
 
第30回シェル芸勉強会LT シェル芸思考
第30回シェル芸勉強会LT シェル芸思考第30回シェル芸勉強会LT シェル芸思考
第30回シェル芸勉強会LT シェル芸思考
 
難読化シェル芸
難読化シェル芸難読化シェル芸
難読化シェル芸
 
危険PowerShell芸はできるのか?
危険PowerShell芸はできるのか?危険PowerShell芸はできるのか?
危険PowerShell芸はできるのか?
 
JavaScript難読化読経
JavaScript難読化読経JavaScript難読化読経
JavaScript難読化読経
 
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
 

More from xztaityozx

呪符式高速詠唱シェル芸2
呪符式高速詠唱シェル芸2呪符式高速詠唱シェル芸2
呪符式高速詠唱シェル芸2xztaityozx
 
呪符式高速詠唱シェル芸
呪符式高速詠唱シェル芸呪符式高速詠唱シェル芸
呪符式高速詠唱シェル芸xztaityozx
 
surgeコマンド作りました
surgeコマンド作りましたsurgeコマンド作りました
surgeコマンド作りましたxztaityozx
 
ナーベンシュタイン距離 ~グラフを添えて~
ナーベンシュタイン距離 ~グラフを添えて~ナーベンシュタイン距離 ~グラフを添えて~
ナーベンシュタイン距離 ~グラフを添えて~xztaityozx
 
あの、selのリベンジをさせてください
あの、selのリベンジをさせてくださいあの、selのリベンジをさせてください
あの、selのリベンジをさせてくださいxztaityozx
 
Owari version 2.0 をつくりました
Owari version 2.0 をつくりましたOwari version 2.0 をつくりました
Owari version 2.0 をつくりましたxztaityozx
 
実績を達成しました!
実績を達成しました!実績を達成しました!
実績を達成しました!xztaityozx
 
ワタナBase59
ワタナBase59ワタナBase59
ワタナBase59xztaityozx
 
ocsとselってコマンド作ったわよ
ocsとselってコマンド作ったわよocsとselってコマンド作ったわよ
ocsとselってコマンド作ったわよxztaityozx
 
ワタナベシェル
ワタナベシェルワタナベシェル
ワタナベシェルxztaityozx
 
難読化PowerShell芸入門
難読化PowerShell芸入門難読化PowerShell芸入門
難読化PowerShell芸入門xztaityozx
 
シェル芸をドット絵にして思いを伝えよう!
シェル芸をドット絵にして思いを伝えよう!シェル芸をドット絵にして思いを伝えよう!
シェル芸をドット絵にして思いを伝えよう!xztaityozx
 
終わりを出力するコマンドつくった
終わりを出力するコマンドつくった終わりを出力するコマンドつくった
終わりを出力するコマンドつくったxztaityozx
 
ワタナベ難読化シェル芸
ワタナベ難読化シェル芸ワタナベ難読化シェル芸
ワタナベ難読化シェル芸xztaityozx
 
~/.bashrcを難読化しよう!
~/.bashrcを難読化しよう!~/.bashrcを難読化しよう!
~/.bashrcを難読化しよう!xztaityozx
 
CLIツール作るの楽しい
CLIツール作るの楽しいCLIツール作るの楽しい
CLIツール作るの楽しいxztaityozx
 
レッツゴー難読化シェル芸
レッツゴー難読化シェル芸レッツゴー難読化シェル芸
レッツゴー難読化シェル芸xztaityozx
 
超・記号オンリー難読化シェル芸
超・記号オンリー難読化シェル芸超・記号オンリー難読化シェル芸
超・記号オンリー難読化シェル芸xztaityozx
 
部活でシェル芸がはやらない
部活でシェル芸がはやらない部活でシェル芸がはやらない
部活でシェル芸がはやらないxztaityozx
 

More from xztaityozx (20)

呪符式高速詠唱シェル芸2
呪符式高速詠唱シェル芸2呪符式高速詠唱シェル芸2
呪符式高速詠唱シェル芸2
 
呪符式高速詠唱シェル芸
呪符式高速詠唱シェル芸呪符式高速詠唱シェル芸
呪符式高速詠唱シェル芸
 
surgeコマンド作りました
surgeコマンド作りましたsurgeコマンド作りました
surgeコマンド作りました
 
ナーベンシュタイン距離 ~グラフを添えて~
ナーベンシュタイン距離 ~グラフを添えて~ナーベンシュタイン距離 ~グラフを添えて~
ナーベンシュタイン距離 ~グラフを添えて~
 
あの、selのリベンジをさせてください
あの、selのリベンジをさせてくださいあの、selのリベンジをさせてください
あの、selのリベンジをさせてください
 
Owari version 2.0 をつくりました
Owari version 2.0 をつくりましたOwari version 2.0 をつくりました
Owari version 2.0 をつくりました
 
実績を達成しました!
実績を達成しました!実績を達成しました!
実績を達成しました!
 
ワタナBase59
ワタナBase59ワタナBase59
ワタナBase59
 
ocsとselってコマンド作ったわよ
ocsとselってコマンド作ったわよocsとselってコマンド作ったわよ
ocsとselってコマンド作ったわよ
 
ワタナベシェル
ワタナベシェルワタナベシェル
ワタナベシェル
 
柿と杮
柿と杮柿と杮
柿と杮
 
難読化PowerShell芸入門
難読化PowerShell芸入門難読化PowerShell芸入門
難読化PowerShell芸入門
 
シェル芸をドット絵にして思いを伝えよう!
シェル芸をドット絵にして思いを伝えよう!シェル芸をドット絵にして思いを伝えよう!
シェル芸をドット絵にして思いを伝えよう!
 
終わりを出力するコマンドつくった
終わりを出力するコマンドつくった終わりを出力するコマンドつくった
終わりを出力するコマンドつくった
 
ワタナベ難読化シェル芸
ワタナベ難読化シェル芸ワタナベ難読化シェル芸
ワタナベ難読化シェル芸
 
~/.bashrcを難読化しよう!
~/.bashrcを難読化しよう!~/.bashrcを難読化しよう!
~/.bashrcを難読化しよう!
 
CLIツール作るの楽しい
CLIツール作るの楽しいCLIツール作るの楽しい
CLIツール作るの楽しい
 
レッツゴー難読化シェル芸
レッツゴー難読化シェル芸レッツゴー難読化シェル芸
レッツゴー難読化シェル芸
 
超・記号オンリー難読化シェル芸
超・記号オンリー難読化シェル芸超・記号オンリー難読化シェル芸
超・記号オンリー難読化シェル芸
 
部活でシェル芸がはやらない
部活でシェル芸がはやらない部活でシェル芸がはやらない
部活でシェル芸がはやらない
 

破壊的難読化シェル芸

Editor's Notes

  1. シェル芸の定義はこうです 簡単に言うとコマンド入力一撃で何でもするということです