忍者ブログ

one's way

個人の趣味で色々な物を触ったり、検証した内容等纏めたブログです。

SV3C製1080P POE対応IPカメラ(SV-B01POE-1080P-L)(その2)

最終更新日:2018/11/24

今回は「SV3C製1080P POE対応IPカメラ(SV-B01POE-1080P-L)」の第2弾です。

 

内容は大きく2つで、P2Pアプリ(P2PWIFICAM)とIPカメラのバックドア(Telnet)について調査してみました。

尚、結論から言うと、中華製IPカメラのP2P機能の利用はお勧めしません。
理由は、本機種に限らず中華IPカメラ(一部国内メーカOEM製品も含む)全般で第三者による不正な操作等の問題があるからです。
具体的にはPTZやマイク付きのカメラが勝手に動いたり音声が聞こえたり等の問題が発生しています。

非常に参考になるBlogがこちらです。

・(外部リンク)"中国製ネットワークカメラが恐ろしすぎるからプラネックスのに買い替えた"
・(外部リンク)"「中華ウェブカメラ」のセキュリティについて

又、IPカメラの脆弱性についてはこちらです。
・(外部リンク)"Multiple vulnerabilities found in Wireless IP Camera (P2P) WIFICAM cameras and vulnerabilities in custom http server"(英語)

0.目次



1.検証環境
2.P2Pアプリ(P2PWIFICAM)について
3.IPカメラのパケットをキャプチャー
4.IPカメラのバックドア(Telnet)について
5.まとめ


1.検証環境



本実験の環境は以下の通りです。

○検証環境
・スマホ
機種 SH-07E(Android 4.2)
P2Pアプリ P2PWIFICAM(Ver8.0.1.5)
その他アプリ NoRootFirewall (Ver3.0.1)
接続方法 自宅内(Wifi)と野外(LTE及びDocomo公衆サービス)
備考 ※Docomo 公衆サービス(Wifi)は近隣コンビニで確認










・PC
 Windows7 Pro 64Bit
 ※パケット解析用(Wireshark)

・L2SW
 アライドテレシス GS908M V2-4PS
 ※IPカメラとPCのポートはWireshark用にミラーポートを設定

・IPカメラ
 SV3C製1080P POE対応IPカメラ(SV-B01POE-1080P-L)
 Amazonでの商品名はこちら
 「PoE IPカメラ SV3C 1080P IP 防犯カメラ 監視カメラ LAN&PoE 802.3af対応 屋外 15メートルナイトビジョン IP66防水性能 Iphone/Android/Tablets/Windows PC対応」

 尚、本カメラの仕様や詳細については、以下の記事を参照して下さい。
  SV3C製1080P POE対応IPカメラ(SV-B01POE-1080P-L)


○条件
 ・IPカメラのP2P機能がONである事を確認(デフォルト)
 ・Wifiルータの設定変更(ポート開放等)は一切していない。
 ・スマホアプリはGooglePlayからP2PWIFICAM(8.0.1.5)をインストール

○ネットワーク図

 

2.P2Pアプリ(P2PWIFICAM)について



P2Pアプリ(P2PWIFICAM)を実際にスマホにインストールして動作確認してみました。

○アプリへのカメラ登録について
説明書にあった手順の検索(自動)ではカメラが見つからずに登録出来なかった。
その為、手動で登録したがその際に識別用IDが必要。
識別用IDはブラウザでカメラにアクセスしIDを確認する必要がある。
場所は「詳細設定」-「P2P」にあるP2P設定 (遠隔監視機能)のIDが識別用IDである。

尚、手動登録の際にIDを間違えたが、登録されている内容を修正してもオンラインにならず、
一度設定を完全に削除後、再登録をしたところ画像が表示された。
又、アプリ自体が不安定なのか試験中も含めてアプリが良く落ちる事があった。

○接続試験(その1)
①.自宅Wifi
 →少し遅延はあるが、表示は問題無い。
②.LTE回線での確認
 →表示はされるがかなり遅延がある(10秒~)
③.野外(Docomo Wifi)
 →表示はされるが多少遅延がある(5秒~20秒)
 ※但し、公衆サービスでの確認の為、混雑等の影響も考えられます。

○結果(感想)
先にも記載しましたが、アプリを操作していると良く落ちる(不安定)が気になります。
又、アプリインストール後にスマホの電池消費が激しいので確認したところ、アプリを上げていないにも関わらずバックグラウンドで常駐稼動し、約3分に一度外部(中国 203.205.128.130)と通信をしていました。

○スマホでの通信ログ



更にWifiルータで設定変更(ポート開放等)は一切していないにも関わらず、カメラとアプリで通信が可能でした。
※WifiルータのログでもUPnPの形跡もなし。

その為、次の追加調査を実施してみました。

3.IPカメラのパケットをキャプチャー



P2P使用時の通信をパケットキャプチャーソフト(Wireshark)を使用して確認。
→結果、UDPを使用して3箇所(中国2箇所、米国1箇所)との通信を確認。
※おそらくこの3箇所はP2Pサーバと思います。

○Wiresharkでの結果

※画像クリックで拡大します。

○通信先
121.42.208.86 Alibaba Cloud
54.221.213.97 Amazon Technologies Inc.(Amazon aws=Amazon Cloud)
120.24.37.48  Alibaba Cloud

1箇所だけ米国(Amazon aws)を使用していますが、恐らく中国の会社が借りているものと思われます。
又、中国自体のクラウドはセキュリティ的にも問題がある事が多いです。

その為、試しにIPカメラのUDPをFireWallで制限した後、再度接続試験を行ったところ次の通りとなりました。

○接続試験(その2)
①.自宅Wifi
 →接続可。少し遅延はあるが表示は問題無い。
  ※Wiresharkで直接通信しているのを確認
②.LTE回線での確認
 →接続不可
③.野外(Docomo Wifi)
 →接続不可

上記試験結果からIPカメラのUDPポートをFireWallで制限する事により、P2P機能がONの状態でも外部との通信は出来なくなりました。
尚、家庭内(内部)は通信可能ですが、スマホのアプリが未起動でも外部と通信しているので、どちらにしてもP2Pは使用しない方が良いと思います。


○結論
冒頭に記述通りです。
セキュリティを確保するのであれば、P2P機能のOFFは勿論、IPカメラの外向けパケットは種別に関係なく全て破棄(拒否)するように設定しておいた方が良いでしょう。

4.IPカメラのバックドア(Telnet)について



※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
警告:本内容は保証外行為の可能性があります。
又、操作を誤ると機器を使用不能にする可能性もありますので、実施については自己責任でお願いします。
※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

この項目が当方にとって一番興味のある内容です。
確かに勝手に稼動していればセキュリティ上問題がありますが、Telnetが使えるならば、色々出来るからです。

という訳で、IPカメラに対してポートスキャンを実施。
その結果、Telnetポート(23)が空いている事を確認しました。
○ポートスキャンの結果



又、同じくインターネット上にあった情報(ユーザ:root /PASS:cat1029)でteratermからログイン出来ました。
尚、OSはLinuxですがBusyBoxを使用している為、全てのコマンドが使える訳ではありませんでした。

○ログイン後に確認したコマンド例
RT-IPC login: root
Password:
Welcome to SONIX.
root@RT-IPC:$ uname -a
Linux RT-IPC 2.6.35.12 #16 Fri Jul 1 20:27:18 CST 2016 armv5tejl GNU/Linux

root@RT-IPC:$ cat /proc/cpuinfo
Processor       : ARM926EJ-S rev 5 (v5l)
BogoMIPS        : 200.29
Features        : swp half fastmult edsp java
CPU implementer : 0x41
CPU architecture: 5TEJ
CPU variant     : 0x0
CPU part        : 0x926
CPU revision    : 5

Hardware        : SONiX SN98600 Development Platform
Revision        : 9302014
Serial          : xxxxxxxxxxxxxxxx ※シリアルはマスク化しています。
         
root@RT-IPC:$ cat /proc/meminfo
MemTotal:          38900 kB
MemFree:            5456 kB
Buffers:            3040 kB
Cached:             8768 kB
SwapCached:            0 kB
Active:            14092 kB
Inactive:          10940 kB
Active(anon):      11120 kB
Inactive(anon):     2284 kB
Active(file):       2972 kB
Inactive(file):     8656 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:             0 kB
SwapFree:              0 kB
Dirty:                 0 kB
Writeback:             0 kB
AnonPages:         13240 kB
Mapped:             2716 kB
Shmem:               180 kB
Slab:               5396 kB
SReclaimable:       3796 kB
SUnreclaim:         1600 kB
KernelStack:         672 kB
PageTables:          368 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:       19448 kB
Committed_AS:      34312 kB
VmallocTotal:     450560 kB
VmallocUsed:       23172 kB
VmallocChunk:     414716 kB

root@RT-IPC:$ df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/root                 5824      5824         0 100% /
dev                        512         0       512   0% /dev
tmpfs                    38900       116     38784   0% /tmpfs
lock                     19448         0     19448   0% /var/lock
log                      19448        24     19424   0% /var/log
run                      19448         8     19440   0% /var/run
spool                    19448         0     19448   0% /var/spool
tmp                      19448         0     19448   0% /var/tmp
mq                       19448         0     19448   0% /var/mq
/dev/mtdblock4             384       172       212  45% /mnt/config

root@RT-IPC:init.d$ pstree
init-+-boottab-+-ddns-update.sh---busybox
     |         |-exe---sleep
     |         |-net_serv.sh---sleep
     |         |-start_cgiServer-+-cgiServer
     |         |                 `-sleep
     |         `-vs_server
     |-exe---sleep
     |-getty
     |-jsy_search
     |-klogd
     |-2*[syslogd]
     |-telnetd---sh---pstree
     `-timing_cali


その他、"vi"や"top"、"reboot"コマンド等も利用可能でした。
※"reboot"が使えるのは便利ですよね。

又、"vi"を使用して、IPカメラWeb画面で行える設定を直接変更したところ、問題無く修正できました。

例:代替DNSの値を書き換えの為、"/etc/networkc/etc/networkd/etc/network/resolv.conf"をviで修正

○修正前
root@RT-IPC:network$ cat resolv.conf
nameserver xxx.xxx.xxx.xxx
nameserver 8.8.8.8

○修正後
root@RT-IPC:network$ cat resolv.conf
nameserver xxx.xxx.xxx.xxx
nameserver 4.4.4.4

それ以外ですと/var/log/messagesやdmesg等は表示されました。
当然、これ以外にもあると思いますが、それは追々確認していきたいと思います。

5.まとめ



P2P機能やTelnet等は便利な機能です。
正しい知識(仕組みやリスク)を持った上で使用するには大丈夫ですが、一歩間違えば自分の私生活を世界中に発信している事になります。
何度も言いますが、中華IPカメラ系はこれらの情報がネット上に多数ありますので、使用する場合には十分考慮や対策を行い使用する様にしましょう。

以上

○更新履歴
2018/11/24 ネットワーク図の更新


 

タグもどき:IPカメラ ISpy ZoneMainder SV-B01POE-1080P-L SV3C
PR