備忘録

備忘録

Dockerコマンドメモ

Ⅰ. はじめに

タイトルの通り「Dockerコマンドメモ」です。

Ⅱ. まとめ

停止中のコンテナ、未使用のネットワーク、未使用のイメージ、キャッシュを削除する
# -f は強制削除オプション
docker system prune -a -f

# ボリュームも削除する
docker system prune -a --volumes -f
起動中のコンテナを全て停止する
docker kill $(docker ps -q)
「7dbca919c8c3」の文字列を含むコンテナを全て終了する

※docker psした時「7dbca919c8c3」を含む行のコンテナIDをもとに削除する

docker kill $(docker ps | grep 7dbca919c8c3 | awk '{print $1}')
停止中の全てのコンテナを削除する
docker container prune

# 強制削除
docker container prune -f
未使用のイメージを全て削除する
docker image prune

# 強制削除
docker image prune -f
docker images の <none> を一括削除
docker rmi -f $(docker images -f "dangling=true" -q)
再ビルドする(キャッシュを無効化)
docker build --no-cache
# docker-compose build --no-cache
再ビルドする(キャッシュを無効化)(標準出力あり)
docker build --no-cache --progress=plain
# docker-compose build --no-cache --progress=plain

Linuxでプロセスがロード済みの動的ライブラリ一覧を表示する方法

Ⅰ. はじめに

タイトルの通り「Linuxでプロセスがロード済みの動的ライブラリ一覧を表示する方法」です。

Ⅱ. やり方

1. プロセスIDを取得する
ps -ef | grep target_app_name
2. 一覧を表示する
cat /proc/[pid]/maps

実行結果

12c00000-12d80000 rw-p 00000000 00:05 25511                              /dev/ashmem/dalvik-main space (region space) (deleted)
12d80000-12e40000 ---p 00180000 00:05 25511                              /dev/ashmem/dalvik-main space (region space) (deleted)
12e40000-12f80000 rw-p 00240000 00:05 25511                              /dev/ashmem/dalvik-main space (region space) (deleted)
12f80000-146c0000 ---p 00380000 00:05 25511                              /dev/ashmem/dalvik-main space (region space) (deleted)
146c0000-32c00000 rw-p 01ac0000 00:05 25511                              /dev/ashmem/dalvik-main space (region space) (deleted)
70c39000-70c51000 rw-p 00000000 08:0d 2902489                            /data/dalvik-cache/arm64/system@framework@boot.art
...

リバースエンジニアリング系情報まとめ

Ⅰ. はじめに

タイトルの通り「リバースエンジニアリング系情報まとめ」です。

Ⅱ. DLLインジェクション、コードインジェクション

メモ リンク
C++, Kernel, user mactec0/Kernelmode-manual-mapping-through-IAT
C# erfg12/memory.dll
C# Akaion/Bleak
https://kagasu.hatenablog.com/entry/2019/05/12/192717
C wbenny/injdrv
C++, Windows secrary/InjectProc
C++, Windows rootm0s/Injectors
C++, Windows, .NET jonatan1024/clrinject
C++, Android nicerepo/MANIAC
C++, Windows can1357/ThePerfectInjector
C++, Windows fdiskyou/injectAllTheThings
C, Windows countercept/doublepulsar-usermode-injector
C++, Windows Zer0Mem0ry/RunPE
C, Windows stephenfewer/ReflectiveDLLInjection
C, Windows Cybellum/DoubleAgent
https://kagasu.hatenablog.com/entry/2017/04/16/215505
C++, C#, Windows, .NET math314/DotNetInjection
C#, Windows, .NET punitganshani/CodeInject
C#, Windows, .NET HearthSim/UnityHook
C++, Android evilsocket/arminject
C++, Windows ez8-co/yapi
C++, Windows, Kernel strivexjun/DriverInjectDll
C++, Windows AddressOfEntryPoint Code Injection without VirtualAllocEx RWX
C#, Windows fireeye/DueDLLigence
C++, Windows btbd/modmap
Python, Linux
ptrace無しで.soをinject
DavidBuchanan314/dlinject
C, Windows antonioCoco/Mapping-Injection
C#, Windows Dewera/Lunar
C, Windows theevilbit/injection
C, Windows NtRaiseHardError/NINA
C++, Windows IDontCode/reverse-injector
Linux LD_PRELOADを利用する
C++, Windows DarthTon/Xenos
C, Windows bats3c/DarkLoadLibrary

Ⅲ. Hook

メモ リンク
C++, Windows, Kernel, syscall hook
ETWをabuseして一部のsyscallをhookできる。
everdox/InfinityHook
https://kagasu.hatenablog.com/entry/2019/12/29/155520
C++, Windows, Kernel, syscall hook
InfinityHook Windows 10 Build 19041
fIappy/infhook19041
C++, Windows, Kernel, syscall hook
InfinityHook Windows 10 Build 19041
MakeInfinityHookGreatAgain
C++, Windows, Kernel, syscall hook
InfinityHook Windows 7 ~ Windows 11
FiYHer/InfinityHookPro
C++, Windows, Kernel, syscall hook
InfinityHook Windows 7 ~ Windows 11
ThomasonZhao/InfinityHookProMax
C++, Windows, Kernel, syscall hook
PGを回避して(無効化ではない)syscall後に任意のコードを割り込ませる。syscall前の割り込みは不可
can1357/ByePg
C++, Windows, Kernel, syscall hook
KasperskyのHVを利用してsyscallをhookする(SSDT, SSSDT)
iPower/KasperskyHook
C, Windows HoShiMin/HookLib
C++, Android, iOS, Linux, macOS asLody/whale
C++, Android Chainfire/inject-hook-cflumen
C, Windows, Kernel DarthTon/HyperBone
C++, Windows microsoft/Detours
C, Android ele7enxxh/Android-Inline-Hook
C#, .NET pardeike/Harmony
C++, Windows stevemk14ebr/PolyHook
C, Windows TsudaKageyu/minhook
C, Windows, Kernel tinysec/iathook
C, C#, .NET EasyHook/Easyhook
C#, .NET, Unity easy66/MonoHooker
C++, Linux, Android ChickenHook/ChickenHook
TypeScript, Android, syscall hook AeonLucid/frida-syscall-interceptor
C++, Windows, DirectX Rebzzel/kiero
C++ vovkos/protolesshooks
C++, Linux, Android, macOS ChickenHook/ChickenHook
C, Linux, syscall hook pmem/syscall_intercept
C++, Multiplatform, Multiple architecture, jmpews/Dobby
Linux LD_PRELOADを利用する
C, Android iqiyi/xHook
C, Windows mrexodia/AppInitHook
C++, Windows vmcall/dxgkrnl_hook
C++, Windows zeroperil/HookDump
C++, Windows, Kernel MiroKaku/DetoursX

Ⅳ. Debug

メモ リンク
C++, Windows, Kernel, Intel VT-x changeofpace/VivienneVMM

Ⅴ. アンチリバースエンジニアリング

メモ リンク
C++ JustasMasiulis/lazy_importer
C++, Kernel Kernel Lazy Importer
C++ JustasMasiulis/xorstr
C++ adamyaxley/Obfuscate
C++ d35ha/CallObfuscator
C++ skadro-official/skCrypter
LLVM obfuscator-llvm/obfuscator
C++, Obfuscator Snowapril/String-Obfuscator-In-Compile-Time
C++, Obfuscator katursis/StringObfuscator
C++, Obfuscator llxiaoyuan/oxorany
Obfuscator Oreans Themida
Virtualizer Oreans Code Virtualizer
Obfuscator/Virtualizer VMProtect
Virtualizer rewolf-x86-virtualizer
Obfuscator/Virtualizer Safeengine
Obfuscator The Enigma Protector
Obfuscator Obsidium
Obfuscator/Virtualizer Denuvo
Anti debug BaumFX/cpp-anti-debug/
Anti debug chztbby/RebirthGuard
Anti Anti debug Air14/HyperHide
Detect memory patch mike1k/HookHunter
Obfuscator bluesadi/Pluto-Obfuscator
Obfuscator mike1k/perses
Obfuscator llvm ollvm-13.x (llvm obfuscator) - vs2022 compatible
Spoofer Barracudach/CallStack-Spoofer
Call stack spoofer klezVirus/SilentMoonwalk
Obfuscator weak1337/Alcatraz
Call stack spoofer altoid29/SafeCall

Ⅷ. その他

メモ リンク
C++, Windows, prcess clone _xeroxz_pclone
C, Windows, Access without a real handle btbd/access
C++, Windows Mattiwatti/PPLKiller
C++, Windows RedCursorSecurityConsulting/PPLKiller
C++, Windows itm4n/PPLcontrol
C++, Windows DarthTon/Blackbone
C#, Unity sinai-dev/UnityExplorer
C++, Windows, Kernel HyperDbg/HyperDbg
C++, Windows SamuelTulach/negativespoofer
Python Ciphey/Ciphey
C++, Windows vxunderground/WinAPI-Tricks
改変されたUPXをアンパックできる JPCERTCC/upx-mod
.NET デコンパイラ一覧 https://blog.dotnetsafer.com/best-dotnet-decompilers/
C, Windows, Packer ORCx41/AtomPePacker
Flutter Impact-I/reFlutter
Windows symbol diff ergrelet/windiff
Windows脆弱なドライバの一覧 https://www.loldrivers.io/
期限切れの証明書で署名可能にする namazso/MagicSigner
Themida CRC Bypass SohWeeKiat/Themida-3.x.x-CRC-Bypass

Ⅸ. Unpacker / Devirtualizer

メモ リンク
Themida/WinLicense 2.x and 3.x. ergrelet/unlicense
VMProtect samrussell/vmprotect_binja_plugin
Themida Hendi48/Magicmida
Oreans Code devirtualizer st4ckh0und/AntiOreans-CodeDevirtualizer
VMProtect devirtualizer archercreat/titan
VMProtect Import fixer archercreat/vmpfix

Powershell スクリプト(ps1 ファイル)をUTF-8で利用する場合の注意点

Ⅰ. はじめに

タイトルの通り「Powershell スクリプト(ps1 ファイル)をUTF-8で利用する場合の注意点」です。

Ⅱ. 注意点

2点あります。

1. 必ずUTF-8 BOM付きで保存する
  • BOM無しの場合文字化けする場合がある為
  • スクリプト署名時UTF-8 BOM付きが必須条件な為

UTF-8 BOM無の場合スクリプトが正常に実行されない事がありました。

2. ファイル先頭でエンコーディングを指定する

test.ps1

$OutputEncoding = [Text.Encoding]::UTF8
# do something