タグ

bashに関するwingleaのブックマーク (4)

  • シェルスクリプトに挑戦しよう(18)連想配列

    今回で「配列」は最終回となります。今回のテーマは、bashのバージョン4以降から使用できるようになった「連想配列」です。 “応用力”をつけるためのLinux再入門 連想配列とは? bashでは、バージョン4以降から「連想配列(Associative arrays)」が使用できるようになりました。 通常の配列では、今まで見てきたように添字は数値で指定しますが、連想配列の場合は文字列も使用できるようになります。連載では、連想配列は添字ではなく「キー」と呼ぶことにします。 連想配列の場合、「declare -A 配列名」で事前に配列を定義してから使用します(※)。例えば、「exam」という名前の連想配列であれば、「declare -A exam」のように指定します。

    シェルスクリプトに挑戦しよう(18)連想配列
  • Shellshockの影響が及ぶケースをまとめてみた - piyolog

    ここではBashの脆弱性 ShellShockの影響が及ぶケースとして情報が出ているものをまとめます。記載情報はpiyokangoが見つけた情報をまとめているだけであり、当該脆弱性による影響が及ぶケースをすべて網羅しているわけではありませんのでご注意ください。 関連情報 bashの脆弱性(CVE-2014-6271) #ShellShock の関連リンクをまとめてみた 影響が及ぶケースの前提条件 対象のシステムでBashの脆弱性(CVE-2014-6271、CVE-2014-7169)が修正されていない 攻撃方法 方法 具体例 条件 能動的 ExploitをHTTPリクエストやメール等を使って送り付ける (参考)BASHの脆弱性でCGIスクリプトにアレさせてみました 攻撃者が対象へ直接接続可能 受動的 Exploitを仕込んだ罠ページを設置し攻撃対象に踏ませる (参考)ファイアウォール内の

    Shellshockの影響が及ぶケースをまとめてみた - piyolog
  • ウェブアプリにおけるBash脆弱性の即死条件 #ShellShock - めもおきば

    条件1. /bin/shの実体がbashのディストリビューション RHEL CentOS Scientific Linux Fedora Amazon Linux openSUSE Arch Linux (自ら設定した場合: Debian, Ubuntu) 条件2. 動作環境 CGI (レンタルサーバでありがちなCGIモードのPHP等も含む) Passenger(Ruby) 条件3. プログラム内容 Passengerは全死亡 *1 systemや `command`、 '| /usr/lib/sendmail' などで外部コマンド実行 *2 PHPのmailやmb_send_mail、その他フレームワーク等を介したメール送信 *3 以下は条件1が不要 明示的にbashを呼ぶ 先頭で #!/bin/bash や #!/usr/bin/env bash しているプログラムを実行 (rbenv

    ウェブアプリにおけるBash脆弱性の即死条件 #ShellShock - めもおきば
  • Bashの変数パラメータ展開のまとめ - harry’s memorandum

    Bashのパラメータ展開はすぐに忘れてしまうのでメモ。 変数の文字数 ${#parameter}で変数の文字数を調べることができます。 name=/var/log/boot.log echo ${#name} 17 wcやawkコマンドを使う方法がありますがスマートではありません。*1 $ n=`echo $name | wc -c`; echo $(($n-1)) 17 $ echo $name | awk '{ print length($0)}' 17 配列も同じように配列数を調べることができます。 $ array=(a b c d e) $ echo ${array[0]} a $ echo ${#array[@]} 5 変数パラメータ展開 変数を切り出せます。ファイル名やディレクトリ名を簡単に切り出すことができます。 $ name=/var/log/boot.log $ echo

    Bashの変数パラメータ展開のまとめ - harry’s memorandum
    winglea
    winglea 2011/07/01
  • 1