- [情報技術] 16進表記をアスキー文字に変換する
- Linuxで16進表記(Hex)をアスキー文字(ASCII Charactors)に変換するには、次のコマンドを使います。
$ echo -n {16進表記} | xxd -p -r
- 例えば、"0x61" や "0a61" に見られる16進表記をアスキー文字に変えてみます。
$ echo -n 61 | xxd -p -r
a
- 2025-03-25 (Tue) by Canaid SK
- [情報技術] 実行ファイルを逆アセンブル(deassemble)
- セキュリティコンテストでflagを見つけるときに、逆アセンブルをします。Linuxであれば下記のコマンドで簡単です。
$ objdump -d EXECFILE
- 以下は、"test" という実行ファイルをRust言語で作って、それを逆アセンブルした例です。
$ objdump -d test
test: ファイル形式 elf64-x86-64
セクション .init の逆アセンブル:
0000000000006000 <_init>:
6000: f3 0f 1e fa endbr64
6004: 48 83 ec 08 sub $0x8,%rsp
6008: 48 8b 05 e9 1b 05 00 mov 0x51be9(%rip),%rax # 57bf8 <__gmon_start__@Base>
- 2025-03-25 (Tue) by Canaid SK
- [情報技術] Linuxのファイルやディレクトリの初期パーミッション
- Linuxでファイルやディレクトリを作成する際のパーミッションの設定値を知るには、下記のコマンドを入力します。
$ umask
- 表示されるのはマスク値です。「0002」であれば、ファイルの権限は「664」、ディレクトリの権限は「775」で作成されます。最大値からマスク値を引いた値であることが、ひと目でわかります。
- 一時的に設定を変えるには、
$ umask 022
- でできます。022は任意の値です。
- オプションを知りたければ、
$ help umask
- と入力してください。
- マスク値を常に変えたければ、ユーザディレクトリにあるファイル「.profile」の末尾に
umask 022
- を書き足してください。
- 2025-03-20 (Thu) by Canaid SK
- [情報技術] netcat (nc) とechoでローカル通信
- Linuxでは `/dev/tcp/{IP}/{PORT}` で特定のIPアドレスの特定のポートにアクセスすることができます。
- それとnetcat(nc)を用いれば、簡便なローカル通信を行えます。
- まずは端末1で受信側を用意します。例として、localhostの8080ポートで待機します。
$ nc -lk localhost 8080
-
- -l: Listen mode
- -k: 通信用ソケットを維持
- 次に、端末2から受信側に「r u ok?」と送信してみます。
$ echo "r u ok?" > /dev/tcp/localhost/8080
- 端末1に「r u ok?」と表示されれば成功です。受信を終了させるときは、キーボードで「CTRL+c」を押してSIGINTを送ってください。
- 2025-03-04 (Tue) by Canaid SK
- [情報技術] Linuxの端末上でマウスポインタの位置を取得する
- Linuxの端末上でマウスポインタの位置を取得するには、次のツールを使います。
$ xdotool getmouselocation --shell
-
- xdotool:X11の自動ツール
- getmouselocation:xdotoolのコマンド。マウスカーソルのx座標・y座標・スクリーン番号・ウィンドウIDを表示する。
- --shell:オプション。シェルの値として出力する。
- もっと元のデータを知りたければ、デバイスファイルから直接取得できます。
$ cat /dev/input/mouse1
- 2025-02-13 (Thu) by Canaid SK
- [情報技術] 現在のfile discriptors(ファイルディスクリプター)を知る
- 入出力に使用されるプロセス識別子を知るには、端末で下記のように入力します。
$ ls -l /proc/$$/fd/
- 「$$」は現在のプロセス識別子の別称です。echoで知ることができます。
$ echo $$
- 2025-02-12 (Wed) by Canaid SK
- [情報技術] GhostScriptでPDFの一部のページを取り出す
- LinuxでGhostScriptを使って、PDFから一部のページを取り出すことができます。
- たとえば、2ページから10ページまでを抽出するならば、次のようにコマンドを打ちます。
$ gs -sDEVICE=pdfwrite -dNOPAUSE -dBATCH -dBeginPage=2 -dLastPage=10 -sOutputFile=<出力ファイル名> <入力ファイル名>
- 2025-01-28 (Tue) by Canaid SK
- [情報技術] Eye of GNOME でsRGB画像が変色する問題
- LinuxのGNOMEでおなじみ画像ビューワー「Eye of GNOME」では、カラープロファイルがsRGBの画像を表示すると、正常に発色されません。
- 恐らくsRGB非対応です。
- Linuxの軽量な画像ビューワーでsRGBに対応しているものに「pqiv」があります。GTK3ベースの軽量なコマンドラインツールで、CUIでの作業に慣れている方には特におすすめです。

- 2025-01-22 (Wed) by Canaid SK