ニュース
jus共催 第37回シェル芸bot生きてるか(中略)シェル芸bot向けシェル芸勉強会 に参加させて頂きました!
むしろまとめが出来たらここに貼りたく
jus共催 第37回シェル芸勉強会リンク集 | 上田ブログ¶
null
jus共催 第37回シェル芸bot生きてるかどうか分からないけどシェル芸bot向けシェル芸勉強会¶
2018年9月1日 さくらインターネットさんセミナールームにて。今回は文字コードの話題が多かったです。問題と解答:
午前の部¶
鳥海さんのスライド
https://umidori.github.io/shellgei-37th-am/
知見¶
毎回勉強になります。以下、自分用メモ
awkの中でもパイプが使える
matsuya| kakasi -JH -i utf-8 -o utf-8 | awk '{print | "rev" }'
matsuya| kakasi -JH -i utf-8 -o utf-8 | awk '{print | "rev" }'#シェル芸
— teckl (@teckl) 2018年9月1日
awkの中でパイプ使えるのか
awkの中からシェルコマンドにパイプで出力を渡す構文
— 石井 久治 (@hisaharu) 2018年9月1日
「| command は出力をパイプに対して行います」https://t.co/Go4nbY77jb#シェル芸
Twitterで表示する際、行頭の半角スペースが削除されちゃうため、.とか入れて改行するsed
echo hoge | sed 1i.
LT¶
LTした。これ。Unicodeの闇
jus共催 第36回七夕・・・7は素数じゃないですか(しかも2つ)シェル芸勉強会 に参加させて頂きました!
jus共催 第36回シェル芸勉強会を開催しました | 上田ブログ¶
null
jus共催 第36回七夕・・・7は素数じゃないですか(しかも2つ)シェル芸勉強会¶
2018年7月7日さくらインターネットさんのセミナールームにて出題:
知見¶
毎回勉強になります。以下、自分用メモ
パイプの出力はループに渡せる
$ seq 10|while read s ;do echo "ループ$((++l))回目" $s; done
ループ1回目 1
ループ2回目 2
ループ3回目 3
ループ4回目 4
ループ5回目 5
ループ6回目 6
ループ7回目 7
ループ8回目 8
ループ9回目 9
ループ10回目 10
peeコマンドは便利(moreutils)
pee is like tee but for pipes. Each command is run and fed a copy of the standard input. The output of all commands is sent to stdout.
Note that while this is similar to tee, a copy of the input is not sent to stdout, like tee does.
LT¶
深い
素晴らしい…!
LTした。これ。みんなで仕込もうゼロ幅スペース!
NICTオープンハウス2018に行ってきました!
年一回、NICTの門が開かれるんですが、平日にやる年が多いです。今年は運良く土曜日にやっていたので行って参りました。
open-house2018 | NICT-情報通信研究機構¶
【講演者略歴】 熊本県生まれ。東京大学工学部卒業後、ボストン本社の戦略コンサルティング会社ベイン&カンパニーで外資系および日系企業の経営コンサルティングに従事。1992年よりアップルコンピュータ社で市場開発やマーケティング本部長職などを歴任。97年に同社を休職し、陸路でヨーロッパに渡り、フランスの INSEAD 、その後スイス国際経営大学院 (IMD) にて MBA を取得。 ...
全てにおいて、全部面白くお話を聞かせて頂きました。
研究者さんと直接話しが出来て楽しいです(素人でもわかるように説明してくださいます)
気になった展示内容¶
サイバーセキュリティ関係¶
SeckHack365の紹介¶
WarpDrive¶
Chromeプラグインでタチコマが怪しいサイトを調査してくれる
STARDUST¶
スーパーすごいハニーポット
NIRVANA改弐¶
これが、カッコよくてすごい便利そうでした。
- 管理下のサーバのパッチ適用具合が一目瞭然
- 個別にサーバの停止など、運用管理機能がある
オペレーションルーム¶
オペレーションルームを見学させてもらいました!
ここで日本へのサイバー攻撃が監視されているんですね~
ランチ!¶
社食が頂ける!
すぐ使えるやつ¶
以下は、展示されていましたがすぐ使えるやつ(良さそう)
VoiceTra¶
期待。ちょっと試してみます。
VoiceTraサポートページ - NICT¶
NICTが提供する音声翻訳アプリ「VoiceTra」のサポートページです。
DISAANA & D-SUMM¶
地震が起こったらTwitterとかみちゃうけど、コレみたほうがいいかもしれない
デマを検出する仕組みもあるらしい
DISAANA - 対災害SNS情報分析システム【リアルタイム版】¶
対災害SNS情報分析システムDISAANAは、今現在のTwitterへの投稿をリアルタイムに分析し、エリアを指定するとそこで発生している災害に関する問題・トラブルを自動的に抽出したり、「大雨が降っているのはどこ」といった質問の回答候補をTwitterの投稿から抽出し、リスト形式または地図形式で表示できます。今まさに起きている災害の情報を簡単に入手する事ができます。パソコン、スマートフォン、タ...
D-SUMM 災害状況要約システム リアルタイム版¶
D-SUMMは、Twitter上の災害情報を分かりやすく整理・要約するシステムです。
WarpDrive¶
WarpDrive¶
攻殻機動隊S.A.C.に登場するAI『タチコマ』を電脳空間にリアライズ。Web媒介型攻撃対策用『タチコマ・セキュリティ・エージェント』を無償配布! 1万⼈規模のPCにインストールされたタチコマたちがユーザのWebアクセスを大規模観測。並列化(情報集約、横断分析、新機能展開等)によりタチコマが成長! ...
Unicode ゼロ幅スペースを利用して情報を隠して仕込む
ゼロ幅スペースというUnicodeの闇
ZeroWidthSpace¶
- ZeroWidthSpace
- 動機 : 先日こういう話題があった
- 原理 : Unicodeゼロ幅スペースを仕込んだ
- いろんな事に(難読化シェル芸)に使えるんじゃ・・・!
- Twitter用 Unicodeゼロ幅スペースぶっ込みツール に作り直した
- 使えるシュチュエーション
- 他の実装
動機 : 先日こういう話題があった¶
ゼロ幅文字にエンコードした隠し情報で、文書をリークしたメンバーを特定¶
とある会員制掲示板からの文書の流出に困った運営者が、 ユニコードの見えない文字「ゼロ幅文字(Zero-Width characters)」を使って流出させたユーザーを特定した、という話 が出ていました。 ...
- 要約
- 競技ビデオゲームのチームが、プライベートの掲示板を利用
- 外部の掲示板にコピペしているやつがいた
- 見た目がわからない文字を仕込んで犯人を特定
原理 : Unicodeゼロ幅スペースを仕込んだ¶
ゼロ幅スペース(Wikipedia)¶
コンピュータの組版に用いられる非表示文字で、文書処理システムに対して語の切れ目を示すのに用いる
U+034F , U+200B , U+200C , U+200D , U+200E , U+200F , U+2028 , U+2029 , U+202A , U+202B , U+202C , U+202D , U+202E , U+2061 , U+2062 , U+2063 , U+FEFF
いろんな事に(難読化シェル芸)に使えるんじゃ・・・!¶
元ネタに習って4種類を使う ⇒ 4進数で表現できる!
CodePoint | 名称 | デコード時 |
---|---|---|
U+200B | ゼロ幅空白 | 0 |
U+200C | ゼロ幅非接合子(筆記体の時の制御) | 1 |
U+200D | ゼロ幅接合子(筆記体の時の制御) | 2 |
U+FEFF | ゼロ幅のノーブレークスペース | 3 |
ゼロ幅スペースにエンコード¶
- 文字を16進数に変換(xxd)
- 16進数を4進数に変換(bc)
- 0 1 2 3 をゼロ幅スペースに置換(sed)
ZWS1=$'\u200b'
ZWS2=$'\u200c'
ZWS3=$'\u200d'
ZWS4=$'\ufeff'
echo "unko" |xxd -p|tr a-z A-Z \
|sed 's/^/obase=4; ibase=16; &/g'|bc \
|sed s/0/$ZWS1/g |sed s/1/$ZWS2/g \
|sed s/2/$ZWS3/g |sed s/3/$ZWS4/g
仕込んだゼロ幅スペースのデコード¶
- ゼロ幅スペースを 0 1 2 3 に置換(sed)
- 16進数に変換(bc)
- バイナリに変換(xxd)
ZWS1=$'\u200b'
ZWS2=$'\u200c'
ZWS3=$'\u200d'
ZWS4=$'\ufeff'
echo '' \
|sed s/$ZWS1/0/g |sed s/$ZWS2/1/g \
|sed s/$ZWS3/2/g |sed s/$ZWS4/3/g \
|sed 's/^/obase=16; ibase=4; &/g'|bc|xxd -ps -r
※ echo '' の''にはゼロ幅スペース入ってる
Twitter用 Unicodeゼロ幅スペースぶっ込みツール に作り直した¶
TwitterやSNSで使える種類が限られていることがわかった。
こんどTwitter対応やってみます #シェル芸 #すみません動くって言って動きませんでした許してくださいなんでもしますから https://t.co/gUjAI3x9wt
— kanata (@kanata201612) 2018年7月9日
調査してTwitter用に良さそうな4種類のゼロ幅スペースを確認する
結果、Twitterに仕込んでも大丈夫そうなゼロ幅スペース #シェル芸
— kanata (@kanata201612) 2018年7月15日
U+200B
U+200C
U+200D
U+2062
もうちょっと確認してみよう
シェル芸bot氏のことも考慮して、割と真面目に作り直した
Instration¶
ファイルダウンロードして実行権限をつけるだけ
$ wget https://raintrees.net/attachments/download/486/zws
$ chmod u+x ./zws
最新版について¶
現在、githubにて最新版を管理しています。インタフェースをbase64と全く同じに修正(してもらい)ました。
https://github.com/kanata2003/ZeroWidthSpace
動作環境¶
ただのシェルスクリプトなので、だいたいの環境(Linux,Mac,Unix)で動くのでは
以下で、動作確認しました。
- CentOS Linux release 7.2.1511 x86_64
Usage¶
エンコード¶
実行すると '' が出力されるが間にゼロ幅スペースが詰まっている
./zws unko
''
パイプ経由でもできる
echo "unko"|./zws
''
ちなみにTwitterでは、ゼロ幅スペースはアスキー文字と同等に数えられるらしく、140文字ではなく280文字までいけた
エンコードサイズが280文字を超えるとWARNINGを出すようにしている(エンコード自体はする)
./zws aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
[WARN] This encoded size over 280 characters. You can not tweet. Now 285 characters.
''
シェル芸bot氏はゼロ幅スペースを普通にマルチバイト文字として数える(140文字制限)ので、bot氏に処理をお願いする時は140文字までの制限を意識する必要がございます
ゼロ幅スペースの文字数を数えるには wc -m コマンドで数えることができます
./zws 'I hava an apple'|wc -m
67
この短めの文で67文字も使うのでTwitterにはあまり長い文字列が仕込めません
デコード¶
base64コマンドっぽいインタフェースにした
ゼロ幅スペース以外の文字があっても、そこは無視してデコードする
./zws -d 'this is a pen'
unko
もちろんパイプ経由でもいける
echo ''|./zws -d
unko
使えるシュチュエーション¶
このシェル芸を実行したのは誰だ!¶
./zws -d 'echo unko'
私です
裏手順を隠しておく¶
./zws -d 'stop.sh #アプリを停止、yを入力'
pkill apli
呪いを込めておく¶
./zws -d 'Start.sh #アプリ起動'
帰りたい
暗号的やり取り¶
実はTwitterはゼロ幅スペースが使えます
他のSNSでも使えそう(未確認)
./zws -d '草'
特売だぞ
難読化シェル芸¶
echoと見せかけたdateの実行
echo 'echo unko'|./zws -d|bash
2018年 7月 16日 月曜日 10:26:37 JST
他の実装¶
- ExcelのVBAで風柳さんが実装しています
[Excel][VBA] ゼロ幅スペースを利用した情報隠蔽の試み
https://gist.github.com/furyutei/6bba0eaf5e0bcb4ae1ee30f916cfcb04
- 短縮URLのサービスで実装されています
Zero Width Shortener
https://zws.im/
技術書典4に行ってキマシタワー (2コメント)
技術書典4¶
技術書の祭典が2018年4月22日(日)@秋葉原UDXで開催決定!
どんどん規模が大きくなる技術書の同人誌販売イベント。
コミケ自体は未だに行ったことがありませんが、技術書典だけは4回目。過去3回分もブログに書いてた。
なぜかこのイベントはだいたい雨なのだけれど、今回は快晴。来場者は第一回と比べると、、、それはそれはスゴイ量になっていました。
もぅ秋葉原UDXをもってしても収まらなさそうですねw
ただいまを持ちまして、 #技術書典4 閉幕しました!今回の総参加者数は6380人でした。
— 技術書典公式アカウント (@techbookfest) 2018年4月22日
皆さんご来場ありがとうございました。
秋葉原UDX5階のファミマ、ドレッシング以外はほぼほぼ完売です。 #技術書典 pic.twitter.com/7k3MB7t9WX
— もひもひ / 4/22技術書典4「か-08」 (@mo_himo) 2018年4月22日
この短時間にめっちゃ来てたんやなって
戦利品¶
楽しかった。
これ以外に俺らの愛したセキュリティをpdfにて購入しました。
GWにゆっくり読もうっと。
待ち時間対策¶
たぶん、「待ち時間を最小にする」と「欲しい本が売り切れるリスク」を考えると開場一時間前くらいに行くのがよさそう…
でも次回このパターンでいけるかはもぅわかんない。たぶん更に人が増えると思われる。
ちなみに整理券を貰いますが、そのまま待機の順列に並ぶことができます(?)
整理券さえあれば並ばなくていい…そう思っていた時期が私にもありました #技術書典
— kanata (@kanata201612) 2018年4月22日
jus共催 第35回またまためでたいシェル芸勉強会 に参加させて頂きました!
jus共催 第35回またまためでたいシェル芸勉強会報告 | 上田ブログ¶
null
jus共催 第35回またまためでたいシェル芸勉強会¶
2018年4月7日@さくらインターネットさんのセミナールームにて問題と解答:
LTしましたが、内容がアレだったので公開を見合わせております。
知見¶
毎回勉強になります。以下、自分用メモ
# 踊るpiyokangoさん curl parrot.live # 改行の調整(忘れてること多し) cat hoge|awk NF
あと、peeコマンドめっちゃ便利(moreutils)
pee is like tee but for pipes. Each command is run and fed a copy of the standard input. The output of all commands is sent to stdout.
Note that while this is similar to tee, a copy of the input is not sent to stdout, like tee does.
感動¶
シェル芸始末書 @grethlenのお詫び状¶
https://hackmd.io/p/Bk3lBeSjz#/
著名なシェル芸人のぐれさんが海外で仕事されるとのこと。ご活躍を楽しみにしております。
超・記号オンリー難読化シェル芸¶
これにより難読化シェル芸の、難読化手法の一つが完成するに至った。歴史的瞬間。
濱せっく 出張版 #4 に参加させて頂きました!
濱せっく 出張版 #4 (2018/04/04 19:00〜)¶
濱せっくとは 横濱界隈のセキュリティエンジニアが運営している情報やスキルを共有し合うことを目標とするセキュリティ勉強会です。 今回は4度目の出張版です。 読み方:はませっく #### 対象者 セキュリティに興味のある方であれば、学生でも社会人でも無職の方でもどなたでも大歓迎です。 なお、横濱にお住まいでなくても参加できます。 ## 開催日時 * 2018年4月4日(水) * 18:30開場 / 19:00開始 * 21:00~21:30 終了見込み ## 会場 * レアルセミナールーム * 東京都新宿区西新宿1-3-13 (Zenken Pl...
知見¶
色んなツールを教えて頂きました。以下、気になったツール
puzzCode
https://github.com/aaaddress1/puzzCode
解析者の心を折りにくる難読化ツール
Buscador Investigative Operating System
https://inteltechniques.com/buscador/
OSINT特化のLinuxディストリビューション。素晴らしい。
ADRecon
https://github.com/sense-of-security/ADRecon
Active Directoryの調査ツール(OSINT)
maltegoのプラグイン
https://github.com/tampererer?tab=repositories
Recon-ng
katagaitaiCTF勉強会とシェル芸勉強会に参加させて頂きました!
katagaitai CTF勉強会 #11 - 関東|med¶
katagaitai CTF勉強会 #11 - 関東|med : ATND¶
h2. 概要 * チームkatagaitaiの実施する,CTFに関する勉強会です.過去問...
yskさん¶
無線の話!無線の話!めっちゃ面白い。資料が神だった。
無線の基礎から教えてくれたので、めっちゃ解りやすい。
これ系の問題は苦手な数学がほぼ入ってこないので、頑張ればなんとかできそうな印象(できるとは言っていない)
資料が公開されてますね!
bataさん¶
ChromeのJavascriptエンジンV8の中の話
めちゃめちゃ濃い内容。この内容理解できたらV8のメンテナになれるでコレ…
「いつも通りなんですが348ページあります」 #katagaitaiCTF
— あんべり (@berotti3) 2018年3月10日
bataさんが解説する問題は、相変わらず遥か彼方にゴールが見える感じで遠い。。
jus & USP友の会共催 シェル勉強会 @関西(第34回いつも難しい問題ばっかり出す上田が真面目に考えた初心者用シェル芸勉強会)¶
jus & USP友の会共催 シェル勉強会 @関西(第34回いつも難しい問題ばっかり出す上田が真面目に考えた初心者用シェル芸勉強会)で大阪にお邪魔しました | 上田ブログ¶
問題
https://b.ueda.tech/?post=20180317_shellgei_34
youtube
https://t.co/tuZhLj6zEu
togetter
https://togetter.com/li/1209705
LT¶
特に面白いと思ったのは以下
ターミナルでテトリスが動いてる・・・!
第34回シェル芸勉強会のLT大会で紹介したサイトのURLです。
— 日柳 光久 (@mikkun_jp) 2018年3月17日
AWKTCのリポジトリ:https://t.co/ck5kuVNHbf
LTのスライド:https://t.co/fTn6PyEatS#シェル芸 #awk
記号オンリー難読化シェル芸・・・!
知見を得た
以下はよく忘れて毎回ググるのでメモしておく
- sedで引っ掛けたものを置換対象に含めるには&を使う
$ echo abc123 |sed 's/abc/&def/g'
abcdef123
awkのNR(行番号)
awkで空行の削除
$ awk 'NF'
Google Home mini を天井に設置する
動機¶
天井と話たいんじゃ。天井から流れてくる音楽聞きたいんじゃ。
前提¶
天井がダクトレールなのが前提。
そうじゃないと後述のライトが取り付けられない。
必要な物の購入¶
1灯スポットライト・2環ウッドシェード (ダクトレール用)¶
これ
1灯スポットライト・2環ウッドシェード (ダクトレール用) 【シェードカラー:ナチュラル】¶
クロームメッキのボディに木製2連シェードを組み合わせた、ダクトレール接続のスポットライト。光を当てたい部分をスポット照射しながら、天井や壁に映る陰影も楽しむことができます。 ...
パナソニック(Panasonic) セパラボディ/P WH4101PK¶
これ
電球の口(E26)をコンセントに変換するやつ。amazonで買った。
100円ショップのSeriaで買ったスマートフォンスタンド¶
これ
セリアで買った。一番安いけど、いちばん重要。8本の足を好きなように曲げられる。
いろいろ応用ができる。
参考
【100均検証】使い方はあなた次第! あまりにも自由度の高い「マルチスタンド」の使い方をイロイロ考えてみた結果...¶
元気ですかーっ! プロレスの世界には「 ホウキ相手でもプロレスができる 」という名言がありますが、100均研究の世界にも「どんな100円グッズでも面白おかしく転がして紹介することができる」という格言があるとかないとか。しかし今回...... 面白おかしく転がすことができませんでした!
組み立て¶
簡単
- ライトの口(E26)にコンセントにするやつを装着
- Google Home mini をスマホスタンドでガバっとカバーする
- ライトと Google Home mini を合体。柔軟に曲がるスマホスタンドをいい感じに調整するとライトを垂直にしても落ちてこない程度に固定できる。
完成¶
はい完成!最&高!
よし Google home mini を天井に設置できたぞ…! #Googlehome
— kanata (@kanata201612) 2018年3月13日
これは応用でamazon echo dotもいけるやろな pic.twitter.com/yaZruZ0VId
Javaの混沌とした名称の整理 (1コメント)
Javaの混沌とした名称の整理¶
まず、ざっくりこんな感じ
ざっくりとした呼び方 | ちゃんとした呼び方 | その中のJDK | 対応するライブラリ群 | 備考 |
---|---|---|---|---|
- | - | JDK 1.0 | - | |
- | - | JDK 1.1 | - | |
Java2 | J2SE 1.2 | JDK 1.2 | - | |
Java3 | J2SE 1.3 | JDK 1.3 | J2EE 1.2 | |
Java4 | J2SE 1.4 | JDK 1.4 | J2EE 1.3 | |
Java5 | J2SE 5.0 | JDK 1.5 | J2EE 1.4 | |
Java6 | Java SE 6 | JDK 1.6 | JavaEE5 | |
Java7 | Java SE 7 | JDK 1.7 | JavaEE6 | OpenJDKはJava7相当 |
Java8 | Java SE 8 | JDK 1.8 | JavaEE7 | |
Java9 | Java SE 9 | JDK 1.9 | JavaEE8 | |
Java10 | Java SE 10 | JDK 1.10? | JakartaEE9? |
2018/3時点の名称に対する混沌とした状況¶
名称に関連した解りづらいこと¶
普通システム開発する時は、JavaEE(JakartaEE)のインストールは必要ない¶
なぜならWebコンテナ(TomcatやGrassfish、Websphere、JBOSSなど)が実装しているから。
つまり、TomcatをインストールすればJavaEEのAPIが使えるということ。
JavaEEを直接インストールする機会があるのは、基本的にWebコンテナそのものを開発する人なんかに限られるはず。
ちなみにOracleのサイトに行くとわかるけど、JavaEE SDKという名前になっていて、SDKという言葉でまた混乱してしまう。
忘れようSDKは。これはJavaEEなんだ。
JavaとJavaEEの対応バージョンが一致していない¶
伝統。JavaEEの方がバージョン番号が一つ少ない(Java9に対応しているのはJavaEE8まで)
触れてないこと¶
JavaME
組み込みの人以外は気にしなくてよい
JavaFX
忘れよう
OpenJDK
Java7相当らしい
Java全般の情報→Java
« 前 1 ... 3 4 5 6 7 ... 16 次 » (41-50/153)
他の形式にエクスポート: Atom