Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

破壊的難読化シェル芸

5.629 Aufrufe

Veröffentlicht am

2017/08/26 第30回シェル芸勉強会大阪サテライトのLT大会で使った資料です

Veröffentlicht in: Ingenieurwesen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

破壊的難読化シェル芸

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

×