LoginSignup
0
0

More than 3 years have passed since last update.

コマンドラインから Chrome のクッキーを読み取って表示

Last updated at Posted at 2021-05-05

コマンドラインから Chrome のクッキーを読み取って表示します。

さくっと試して見たい方はこちら( sqlite3 のインストールのためパスワードを聞かれる場合があります)。

wget https://raw.githubusercontent.com/mugimugi555/ubuntu/main/mix_print_coockie.sh && bash mix_print_coockie.sh ;

シェルファイルの後ろにドメインを付けると絞り込みができます。サブドメインを含めたい場合は %google.com にします。

bash mix_print_coockie.sh google.com ;
bash mix_print_coockie.sh %google.com ;

中身の紹介

sqlite3 を使用しますので、事前にインストールを行っておきます。

sudo apt install -y sqlite3 ;

実行

bash print_coockie.sh ;
bash print_coockie.sh google.com ;

シェルの内容

print_coockie.sh
#!/bin/bash

# bash print_coockie.sh
# bash print_coockie.sh google.com

# coockie path
CHROME="${HOME}/.config/google-chrome/Default"
COOKIES="$CHROME/Cookies"

# query
# QUERY='select * from cookies'
QUERY='select host_key, path, expires_utc, name, encrypted_value from cookies'

# coloums
# creation_utc INTEGER NOT NULL
# host_key TEXT NOT NULL
# name TEXT NOT NULL
# value TEXT NOT NULL
# path TEXT NOT NULL
# expires_utc INTEGER NOT NULL
# is_secure INTEGER NOT NULL
# is_httponly INTEGER NOT NULL
# last_access_utc INTEGER NOT NULL
# has_expires INTEGER NOT NULL DEFAULT 1
# is_persistent INTEGER NOT NULL DEFAULT 1
# priority INTEGER NOT NULL DEFAULT 1
# encrypted_value BLOB DEFAULT ''
# samesite INTEGER NOT NULL DEFAULT -1

# query where
if [[ $# == 1 ]]; then
    domain=$1
    QUERY="$QUERY where host_key like '$domain'"
fi

# print result
sqlite3 -separator '    ' "${COOKIES:-Cookies}" "$QUERY"

ただし、クッキーの値が encrypted_value とあるように暗号化されています。
これを解除する必要があります。

詳細は参考リンクを見てください。気が向いたらそのうち実装してみたいと思います。

参考リンク

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0