热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

道2——未知攻,焉知防

无论是在甲方公司还是乙方公司,对于安全工程师,渗透测试能力和应急响应能力都是必不可少的。而在应急响应过程中,以解决实际为导向的编程语言——Python,更是信息安全从业者必备四大编程语言之一。因

无论是在甲方公司还是乙方公司,对于安全工程师,渗透测试能力和应急响应能力都是必不可少的。而在应急响应过程中,以解决实际为导向的编程语言——Python,更是信息安全从业者必备四大编程语言之一。因为Python能够快速验证你的想法,应急其实就是在跟黑客争分夺秒。所以,天下武功,唯快不破。

为什么会有人说“未知攻,焉知防”呢?因为黑客的攻击思路都比较“猥琐”,都是以点进行突破的。如果你刚好有一种攻击手法不了解,那么就没办法防御以这种手法对你进行攻击的黑客。

未知攻,焉知防。也就是我今天要说的《灰帽黑客的渗透测试之道》之道2.

多了解一些安全事件,多关注一些漏洞公告,多学习一些攻击手法,才能做好安全防御。

下面来说下近期遇到的一个安全事件,某宿科技是提供内容分发与CDN加速的公司。他们通常给用户提供几百个

CDN节点,在每个节点上分发缓存的静态资源来达到网络加速,防御DDOS攻击等。但是,当某个CDN节点被劫持后,

凡是当时访问该节点的用户都会遭受攻击。来张图:


当用户在浏览器输入正常的网址,进行登陆时。会被劫持到http://61.160.185.39:8082/,该网址会生成一个js脚本

注入到用户的浏览器中,从而劫持其账户密码。直接在浏览器查看源码是看不到关于8082这个端口的相关链接的,

因为该请求是某个隐藏很深的静态资源触发的。无奈没有这些CDN节点的登陆权限,因此也只能通过外部来测试。


现在我需要模拟Firebug解析出全部的网络请求。不断切换本机host访问该登陆页面。

为了解析这些网络请求,我使用mitmproxy做http代理,用selenium模拟访问。

#encoding:utf-8
#mproxy.py,设置为代理,并dump所有网络请求
#python3.5.3from mitmproxy.tools.main import mitmdumpmitmdump()


#encoding:utf-8
#switchVisit.py不断切换本机host并访问passport登陆页面
#python3.5.3import osfrom selenium import webdriverimport timeimport datetime#设置HTTP代理profile=webdriver.FirefoxProfile()profile.set_preference('network.proxy.type', 1)profile.set_preference('network.proxy.http', '127.0.0.1')profile.set_preference('network.proxy.http_port', 8080)  # intprofile.update_preferences()ffbrowser=webdriver.Firefox(firefox_profile=profile)#切换hostdef SwitchHosts(ip):    try:        os.remove(r'C:\WINDOWS\system32\drivers\etc\HOSTS')    except:        outfile=open(r'C:\WINDOWS\system32\drivers\etc\HOSTS', "w")        outfile.close()    with open(r'C:\WINDOWS\system32\drivers\etc\HOSTS',"w") as f:        f.write(ip+"\tpassport.xxxxxxx.com")#访问网站def VisitWebsite(browser):    try:        browser.get("http://passport.xxxxxxx.com")    except:        passif __name__ =='__main__':    #cdnnodeip.txt为每行一个cdnip地址    with open("cdnnodeip.txt",'r') as f:        for ip in f.readlines():            ip=ip.strip()            SwitchHosts(ip)            print(datetime.datetime.now(),"----",ip)            VisitWebsite(ffbrowser)            time.sleep(10)




推荐阅读
  • 本文介绍了Python爬虫技术基础篇面向对象高级编程(中)中的多重继承概念。通过继承,子类可以扩展父类的功能。文章以动物类层次的设计为例,讨论了按照不同分类方式设计类层次的复杂性和多重继承的优势。最后给出了哺乳动物和鸟类的设计示例,以及能跑、能飞、宠物类和非宠物类的增加对类数量的影响。 ... [详细]
  • Java中包装类的设计原因以及操作方法
    本文主要介绍了Java中设计包装类的原因以及操作方法。在Java中,除了对象类型,还有八大基本类型,为了将基本类型转换成对象,Java引入了包装类。文章通过介绍包装类的定义和实现,解答了为什么需要包装类的问题,并提供了简单易用的操作方法。通过本文的学习,读者可以更好地理解和应用Java中的包装类。 ... [详细]
  • Spring框架《一》简介
    Spring框架《一》1.Spring概述1.1简介1.2Spring模板二、IOC容器和Bean1.IOC和DI简介2.三种通过类型获取bean3.给bean的属性赋值3.1依赖 ... [详细]
  • 浅解XXE与Portswigger Web Sec
    XXE与PortswiggerWebSec​相关链接:​博客园​安全脉搏​FreeBuf​XML的全称为XML外部实体注入,在学习的过程中发现有回显的XXE并不多,而 ... [详细]
  • 后台自动化测试与持续部署实践
    后台自动化测试与持续部署实践https:mp.weixin.qq.comslqwGUCKZM0AvEw_xh-7BDA后台自动化测试与持续部署实践原创 腾讯程序员 腾讯技术工程 2 ... [详细]
  • 微信公众号:内核小王子关注可了解更多关于数据库,JVM内核相关的知识;如果你有任何疑问也可以加我pigpdong[^1]jvm一行代码是怎么运行的首先,java代码会被编译成字 ... [详细]
  • Java工程师书单(初级,中级,高级)
    简介怎样学习才能从一名Java初级程序员成长为一名合格的架构师,或者说一名合格的架构师应该有怎样的技术知识体系,这是不仅一个刚刚踏入职场的初级程序员也是工作一两年之后开始迷茫的程序 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • 本文介绍了基于c语言的mcs51单片机定时器计数器的应用教程,包括定时器的设置和计数方法,以及中断函数的使用。同时介绍了定时器应用的举例,包括定时器中断函数的编写和频率值的计算方法。主函数中设置了T0模式和T1计数的初值,并开启了T0和T1的中断,最后启动了CPU中断。 ... [详细]
  • Spring常用注解(绝对经典),全靠这份Java知识点PDF大全
    本文介绍了Spring常用注解和注入bean的注解,包括@Bean、@Autowired、@Inject等,同时提供了一个Java知识点PDF大全的资源链接。其中详细介绍了ColorFactoryBean的使用,以及@Autowired和@Inject的区别和用法。此外,还提到了@Required属性的配置和使用。 ... [详细]
  • 抖音服务器带宽有多大,才能供上亿人同时刷?
    最近看到一个有意思的提问:抖音服务器带宽有多大,为什么能够供那么多人同时刷?今天来给大家科普一下。 ... [详细]
  • 【BP靶场portswigger服务端10】XML外部实体注入(XXE注入)9个实验(全)
    前言:介绍:博主:网络安全领域狂热爱好者(承诺在CSDN永久无偿分享文章)。殊荣:CSDN网络安 ... [详细]
  • 1.移除consol.log()的babel插件安装:npmibabel-plugin-transform-remove-console-D配置:babel.config.js:这 ... [详细]
author-avatar
手机用户2602936475
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有