Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

~/.bashrcを難読化しよう!

821 visualizaciones

Publicado el

第38回シェル芸勉強会@大阪サテライトでLTに使った資料です

Publicado en: Ingeniería
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

~/.bashrcを難読化しよう!

  1. 1. ~/.bashrcを難読化しよう!!難読化しよう!!しよう!!~/.bashrcを難読化しよう!!難読化しよう!!しよう!! たいちょーたいちょー
  2. 2. みなさん#!/bin/bash(こんにちはの意意)みなさん#!/bin/bash(こんにちはの意意) たいちょーです  @xztaityozx_001 母語ははC# 文化祭蹴ってこっち来ましたってこっち来ましたました たいちょーです  @xztaityozx_001 母語ははC# 文化祭蹴ってこっち来ましたってこっち来ましたました
  3. 3. 難読化しよう!!シェル芸 芸 #とは難読化しよう!!シェル芸 芸 #とは kanata氏考案ののヤバいいシェル芸芸 定義 内部的な動作の手続き内容・構造・データなどを人な動作の手続き内容・構造・データなどを人の意手続き内容・構造・データなどを人き内容・構造・データなどを人内容・構造・データなどを人などを難読化しよう!!人 間が理解しにくい、あるいはそのようになるよう加が理解しにくい、あるいはそのようになるよう加理解しにくい、あるいはそのようになるよう加しにくい、あるいはその意ようになるよう加 工されたシェル芸のこと。されたシェル芸のこと。シェル芸 芸の意こと。 -- A painter and a black cat より kanata氏考案ののヤバいいシェル芸芸 定義 内部的な動作の手続き内容・構造・データなどを人な動作の手続き内容・構造・データなどを人の意手続き内容・構造・データなどを人き内容・構造・データなどを人内容・構造・データなどを人などを難読化しよう!!人 間が理解しにくい、あるいはそのようになるよう加が理解しにくい、あるいはそのようになるよう加理解しにくい、あるいはそのようになるよう加しにくい、あるいはその意ようになるよう加 工されたシェル芸のこと。されたシェル芸のこと。シェル芸 芸の意こと。 -- A painter and a black cat より
  4. 4. 今回話すことすこと
  5. 5. ~/.bashrcを難読化して 攻撃者から大切な住環境を守ろう!大切な住環境を守ろう!な住環境を守ろう!住環境を守ろう!を守ろう!ろう!
  6. 6. いき内容・構造・データなどを人さついき内容・構造・データなどを人さつ ある日日 ぼく「作業するぞ!」タンマツキドウ作業するぞ!」タンマツキドウする日ぞ!」タンマツキドウタンマツキドウ ぼく「作業するぞ!」タンマツキドウおもむろにls!」タンマツキドウls 端末「作業するぞ!」タンマツキドウ」タンマツキドウFirefoxキドウ ぼく「作業するぞ!」タンマツキドウは?」タンマツキドウ ある日日 ぼく「作業するぞ!」タンマツキドウ作業するぞ!」タンマツキドウする日ぞ!」タンマツキドウタンマツキドウ ぼく「作業するぞ!」タンマツキドウおもむろにls!」タンマツキドウls 端末「作業するぞ!」タンマツキドウ」タンマツキドウFirefoxキドウ ぼく「作業するぞ!」タンマツキドウは?」タンマツキドウ
  7. 7. lsしたシェル芸のこと。らエ〇ゲブランドのサイト出てきたエ〇ゲブランドのサイト出てきた〇ゲブランドのサイト出てきたゲブランドのサイト出てきたの意サイト出てきた出てきたてき内容・構造・データなどを人たシェル芸のこと。lsしたシェル芸のこと。らエ〇ゲブランドのサイト出てきたエ〇ゲブランドのサイト出てきた〇ゲブランドのサイト出てきたゲブランドのサイト出てきたの意サイト出てきた出てきたてき内容・構造・データなどを人たシェル芸のこと。 ~/.zshrcにaliasが書き加えられていました書き加えられていましたき加えられていました加えられていましたえら大切な住環境を守ろう!れていました cdとかも同じ様になっていましたじ様になっていました様になっていましたにな住環境を守ろう!っていました 弊部のの厄介者たちの間で流行っていたイタズラで流行っていたイタズラっていたイタズラ 乗っ取リテラシーっ取リテラシーリテラシーとか言って笑っているって笑っているっている日 割と最悪と最悪 ~/.zshrcにaliasが書き加えられていました書き加えられていましたき加えられていました加えられていましたえら大切な住環境を守ろう!れていました cdとかも同じ様になっていましたじ様になっていました様になっていましたにな住環境を守ろう!っていました 弊部のの厄介者たちの間で流行っていたイタズラで流行っていたイタズラっていたイタズラ 乗っ取リテラシーっ取リテラシーリテラシーとか言って笑っているって笑っているっている日 割と最悪と最悪
  8. 8. ゆるさんぞゆるさんぞ 二度とされたくないとされたくな住環境を守ろう!い ↓ 対策しようしよう ↓ どうやって? ↓ 難読化しよう!!しよう! 二度とされたくないとされたくな住環境を守ろう!い ↓ 対策しようしよう ↓ どうやって? ↓ 難読化しよう!!しよう!
  9. 9. 難読化しよう!!~/.bashrc難読化しよう!!~/.bashrc 過度とされたくないに難読化された~/.bashrcで攻撃者の精神をを 破壊します インパクトが欲しいのでが書き加えられていました欲しいのでしいのでゼロ幅スペース難読化幅スペース難読化スペース難読化 をします 過度とされたくないに難読化された~/.bashrcで攻撃者の精神をを 破壊します インパクトが欲しいのでが書き加えられていました欲しいのでしいのでゼロ幅スペース難読化幅スペース難読化スペース難読化 をします
  10. 10. ハンズオンハンズオン # ゼロ幅スペース難読化ツール 幅スペース難読化ツール スペース難読化ツール ツール zws を適当なパスが通っているところにコピー適当なパスが通っているところにコピーなパスが通っているところにコピーパスが通っているところにコピー通っているところにコピーっているところにコピーコピー $ wget https://raintrees.net/attachments/download/486/zws $ chmod u+x ./zws # bashrcを適当なパスが通っているところにコピーゼロ幅スペース難読化ツール 幅スペース難読化ツール スペース難読化ツール $ cat cat ~/.bashrc | sed '/^ *$/d;s/$/[newline]/g'| zws | tail -n1 > ~/bashrc.test # ~/bashrc.testを適当なパスが通っているところにコピー以下のように編集のようにコピー編集 eval "$(echo 'ここはゼロ幅スペース難読化幅スペース難読化スペース難読化の結果が入るよが書き加えられていました入るよる日よ'| /path/to/zws -d | sed 's/ [newline]/n/g')" # 作ったワンライナーでったワンライナーでワンライナーで~/.bashrcにコピー上書きき $ cat ~/bashrc.test > ~/.bashrc
  11. 11. NeoVimで見たときの結果見たときの結果たシェル芸のこと。とき内容・構造・データなどを人の意結果NeoVimで見たときの結果見たときの結果たシェル芸のこと。とき内容・構造・データなどを人の意結果
  12. 12. 作の手続き内容・構造・データなどを人戦成功✌作の手続き内容・構造・データなどを人戦成功✌ 攻撃者は腰を抜かして逃げていくでしょうを抜かして逃げていくでしょうかして逃げていくでしょうげていくでしょう 私たちのたちの勝ちちです 腰を抜かして逃げていくでしょうを抜かして逃げていくでしょうかさな住環境を守ろう!かったら大切な住環境を守ろう!負けです!けです! 難読化でreturnを仕込めば追記からも守れるめば追記からも守れる追記からも守れるから大切な住環境を守ろう!も守ろう!れる日 攻撃者は腰を抜かして逃げていくでしょうを抜かして逃げていくでしょうかして逃げていくでしょうげていくでしょう 私たちのたちの勝ちちです 腰を抜かして逃げていくでしょうを抜かして逃げていくでしょうかさな住環境を守ろう!かったら大切な住環境を守ろう!負けです!けです! 難読化でreturnを仕込めば追記からも守れるめば追記からも守れる追記からも守れるから大切な住環境を守ろう!も守ろう!れる日
  13. 13. 問題点問題点 設定を書き加えられていましたき加えられていました直そうとするたびそうとする日たび 手順をやり直すをやり直そうとするたびす ゼロ幅スペース難読化幅スペース難読化スペース難読化を手打ちち どちら大切な住環境を守ろう!かが書き加えられていました発生 設定を書き加えられていましたき加えられていました直そうとするたびそうとする日たび 手順をやり直すをやり直そうとするたびす ゼロ幅スペース難読化幅スペース難読化スペース難読化を手打ちち どちら大切な住環境を守ろう!かが書き加えられていました発生
  14. 14. 問題点問題点 冷静に対処に対処されたら大切な住環境を守ろう!負けです!け Vimな住環境を守ろう!ら大切な住環境を守ろう!dd押されるだけで負けますされる日だけで負けです!けます 冷静に対処に対処されたら大切な住環境を守ろう!負けです!け Vimな住環境を守ろう!ら大切な住環境を守ろう!dd押されるだけで負けますされる日だけで負けです!けます
  15. 15. 今後の課題の意課題今後の課題の意課題 前述二つの問題点の解決の解決 いっそのこと~/.bashrcはゼロ幅スペース難読化幅スペース難読化スペースだけに 他のの難読化でやってみる日 前述二つの問題点の解決の解決 いっそのこと~/.bashrcはゼロ幅スペース難読化幅スペース難読化スペースだけに 他のの難読化でやってみる日
  16. 16. こんなことしなくてもこんなことしなくても Zshユーザーな住環境を守ろう!ら大切な住環境を守ろう!zcompileを使えばいいですえば追記からも守れるいいです zshのスクリプトが欲しいのでをコンパイル芸でき加えられていましたます 読み込めば追記からも守れるみ速度とされたくないも上がってが書き加えられていましたってハッピーです Zshユーザーな住環境を守ろう!ら大切な住環境を守ろう!zcompileを使えばいいですえば追記からも守れるいいです zshのスクリプトが欲しいのでをコンパイル芸でき加えられていましたます 読み込めば追記からも守れるみ速度とされたくないも上がってが書き加えられていましたってハッピーです
  17. 17. 終わりにわりに終わりにわりに 皆さんはさんは 乗っ取リテラシーっ取リテラシーリテラシー側にも bashrcを難読化しようとする日側にも な住環境を守ろう!っちゃダメですよ!約束です!ダメですよ!約束です!ですよ!約束です!です! 皆さんはさんは 乗っ取リテラシーっ取リテラシーリテラシー側にも bashrcを難読化しようとする日側にも な住環境を守ろう!っちゃダメですよ!約束です!ダメですよ!約束です!ですよ!約束です!です!

×