2014-12-01から1ヶ月間の記事一覧
tcp/9200に次のようなリクエストが来ていた。 GET /_search?source=%7B%22query%22%3A+%7B%22filtered%22%3A+%7B%22query%22%3A+%7B%22match_all%22%3A+%7B%7D%7D%7D%7D%2C+%22script_fields%22%3A+%7B%22exp%22%3A+%7B%22script%22%3A+%22import+java.util.…
bind -xはコマンドラインの状態を保持したまま任意のコマンドを実行するキーバインドを定義する。 これを使うと、zshのrun-helpのような機能を実装することができる。 if [[ -n "$PS1" ]]; then bind -x '"\eh":"[[ -n $READLINE_LINE ]] && man ${READLINE_…
きちんとまとめられた情報が少ないのでメモ。 bashの機能はemacsと共通する部分が多く、使われている用語やキーバインドも類似している。 以下で述べるキーバインドについて、C-xはCtrl+x、M-xはESC xまたはC-[ xを表す。 kill-ringを活用する bashにはkill-…
findコマンドのオプション指定が面倒なので、grepのように使える、次のようなシェル関数を定義してみる。 if [[ -n "$PS1" ]]; then f() { find "${2:-.}" \! -type d \! -path "*/.*" -path "*$1*" |& grep -v -F ": Permission denied" | sort } fi このコ…
aliasとシェル関数の違いについてのメモ。 たとえばgrepコマンドを常にロケール非依存にて扱い処理を高速化するにあたり、一見、次の二つの定義は同等に見える。 alias grep='LC_ALL=C grep --color=auto' grep() { LC_ALL=C command grep --color=auto "$@"…
「cdの引数を絶対パスにしてコマンドヒストリに残す」のように標準コマンドを置き換える上で考えるべき、bashの仕組みについてのメモ。 環境 $ uname -a Linux vm-ubuntu64 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:08 UTC 2014 x86_64 x86_64 x8…
cdの引数が相対パスのままコマンドヒストリに残って便利な例が思いつかないので、絶対パスでコマンドヒストリに残すようにする。 具体的には、以下のシェル関数を.bashrcに書く。 if [[ -n "$PS1" ]]; then cd() { command cd "$@" local s=$? if [[ ($s -eq…
「x64でROP stager + Return-to-dl-resolve + __libc_csu_init gadgetsによるASLR+DEP回避をやってみる」では、ASLR+DEPが有効なx64環境でReturn-to-dl-resolve + __libc_csu_init gadgetsを使ってシェル起動を行った。 この際、事前に固定アドレスにret命令…
「x64でDynamic ROP + Return-to-vulnによるASLR+DEP+RELRO回避をやってみる」では、leave命令がない実行ファイルに対してstack pivotを行わずに複数回のROPシーケンス実行を行った。 しかし、コンパイラによってはleave命令がない場合でも__libc_csu_init関…