社会工程学之黑客七宗罪——贪婪(死亡之PING)
前言
我为什么要将“死亡之PING”归结到《贪婪》?
其实如果你知道“死亡之PING”的里含义就很好理解了。
我始终相信双刃剑理论,其实个人主观臆断是“死亡之PING”最一开始并不是恶意攻击方法,而是为了达成目的而做成的一劳永逸的工具。
为什么我会这么认为?首先我们要知道PING的含义。
ping (Packet Internet Groper)是一种因特网包探索器,用于测试网络连接量的程序 [1] 。Ping是工作在 TCP/IP网络体系结构中应用层的一个服务命令, 主要是向特定的目的主机发送 ICMP(Internet Control Message Protocol 因特网报文控制协议)Echo 请求报文,测试目的站是否可达及了解其有关状态。
——百度百科
由上述一段介绍得知,PING可以做到连接服务器,那也就意味着,我用PING去连接一个网站,相当于访问了这个网站。而通过猜测,如果你想让一个网站达到一定的访问量,就可以这样做。
那么也就意味着,那些很贪婪的想一直刷访问量的人,肯定想用这种办法的吧~
不过,仅仅是访问网站而已呀 ?和黑客攻击有什么关系?
咱们日常访问普通网站或服务器时,有没有一种现象叫做500、502或504?
500错误:
500 Internal Server Error 内部服务错误:顾名思义500错误一般是服务器遇到意外情况,而无法完成请求。
502、504错误:
502 Bad Gateway错误、504 Bad Gateway timeout 网关超时
——幽幽靖
上述错误造成的原因有一个交点:当我的访问数据超载,资源被吃到不足。
那么资源吃到不足是一个什么概念呢?
举个栗子~
比如你的电脑只有一个内存条是8G,假设系统进程用了1G,各种后台软件以及正在打开的软件用了4G,而在没有任何保护机制以及调度方案的情况下,你想直接点开一个游戏,需要占用你的内存4G。
那么现在,你需要9G的内存资源,而你计算机能提供的内存资源为8G,在没有任何保护机制以及调度方案的情况下,点开,运行,蓝屏~
那么,PING其实就可以达到这一点。
但是我PING一次好像也消耗不了多少资源吧……
好的,欲知后事如何,请往下看~
一、问题所在:一次PING所消耗的资源量
不难发现,我们在PING的时候所发送和接受的数据(以“字节”为单位)着实很小:
很明显,这里的字节为32,想想就很小了吧——无论是对于服务器来讲还是PC来说。
但是,如果我增大它的字节数呢?
首先,我们从第一行命令的结果得知,最高的字节数只能是65500。
其次,我把字节数换成65500,由于给服务器的安全设定阻止了过量字节的数据访问,导致了请求超时现象。
可能有的人会想:既然说过量字节的数据访问会被服务器驳回,那样不就没办法用PING攻击了嘛?~
其实最一开始我也想到了这个事,但是后来我想了想,如果有2047台电脑同时访问这个服务器,每一次都是32字节,是不是就能达到65500了?
(手动计算:)
二、衍生问题:怎么可能同时拥有2047台可用的电脑嘛~
确实,就算你家大业大,根据正常思维来讲,谁也不想败家对吧~
不过,我们不能同时拥有2047台可用电脑,但是我们可以同时PING它个2047次呀~
这里要用到的知识点呢,叫做《并行程序设计基础》。
三、什么叫“并行”?
问个问题~:
如果烧水需要5分钟,洗衣服(机器)20分钟,做饭15分钟,问:不算外来时间因素及水放置降温影响,把这些事情全干完最短需要用多长时间?
答案肯定是20分钟对吧。
想想看:用机器洗衣服放了衣服和洗液它会自己洗,烧水的话加了水点了火它会自己烧,那么在他们工作的时候我去做饭,做晚饭,水早就烧好了,再等5分钟,洗衣机也好了,一共用时20分钟。
那么,在洗衣机洗衣服的同时,我去烧水,水烧着的时候我去做饭,三个事件同时进行,省心省力,我们把这种处理事件的模式叫做“并行”。
这里呢,我们可以把每个事件都看作一个线程:
1.洗衣机线程包括:放入衣服,放入洗液,按洗衣按钮……
2.烧水线程包括:装水,点火……
3.做饭线程包括:切菜,调料,做菜,盛盘……
那么,线程里包括的每一个动作,我们都可以看作一个进程。
诸如此类,现在我们把目光看向我们的PING。
那么我是不是可以建立多个PING进程或PING线程,让它们同时运行?
也就意味着,我是不是可以建立2047个PING进程或PING线程同时运行,来达到65500字节的目的?
那么具体我们应该怎么做?
四、准备前置
1、一只活了很久的蟒蛇~(Python2.7)
众所周知,蟒蛇(Python)作为程序界的一大利器,它拥有很大的便捷性以及广泛性。
不过为什么要挑一只活了很久的蛇?
毕竟蛇还是老的辣呀~老蛇对于很多旧模块的兼容性很强的,尤其是……
一只老蛇:嘶~嘶……(钻洞~侵入~)
2、Ping语法
(1)如果你用的是Windows系统:
你将要用到cmd(命令提示符)窗口,在里面输入Ping语法。
(2)如果你用的是Linux系统:
你将要用到Terminal(终端)窗口,在里面输入Ping语法。
而需要用到的Ping的语法如下(Windows与Linux通用):
1 ping <ip/url>
2 ping <ip/url> -l <字节数>
3 ping <ip/url> -t
第一行的PING是普通的PING,单纯就是图个能不能连通。
第二行的PING,上面咱们说到了,设置字节数的PING。
第三行的PING,无限PING,直到你在cmd或Terminal中键入停止指令。
五、实战
首先需要了解我们所需要的模块包:
(注意:下列模块与在python3中的相同作用模块的使用方法有出入!!!)
1.subprocess 模块:允许我们启动一个新进程,并连接到它们的输入/输出/错误管道,从而获取返回值。
这也就意味着,我们可以通过此模块来创建一个进程并使用它~
2.thread 模块:提供对线程的支持。
顾名思义,这是我们创建新线程的必要条件~
除此之外,我们还需要用到一个模块叫做time,至于用它干什么,下面我们会介绍到。
模块包了解完了,现在我们就需要说思路的事了:
1.导入subprocess、thread和time这三个模块。
2.声明一个用来执行PING动作的函数,此函数当中PING用进程来运行。
3.利用第2条所声明的函数来循环创建线程并让它们并行,每创建一个线程,休息0.8秒
那么具体代码如下所示:
1 import subprocess
2 import thread
3 import time
4
5
6 def POD(id):
7 ret = subprocess.call("<Ping语法>", shell=True)
8 print "%d," % id
9
10
11 for i in range(<你要创建的线程数>):
12 thread.start_new_thread(POD, (i,))
13 time.sleep(0.8)
这里说重点:
一、第6行所定义的POD函数是用来执行PING命令的。在第12行,由线程调用此POD函数。
二、第12行中的 ‘(i,)’的意思是传入了第11行‘i’的数字,用来标注是第几个被创建的线程
三、第13行为什么要睡觉休息?毕竟创建线程的同时你的电脑也是会消耗资源的,为了减轻负荷就休息了0.8秒
后序
最后我想说,无论我说的够不够明白,够不够清晰,这篇文章只供参考和学习,如果拿了这个东西干了什么坏事的话……违法我不追究,毕竟该审判你的不是我,是法律哦!!!~
——Redice(Yatogami)
社会工程学之黑客七宗罪——贪婪(死亡之PING)相关推荐
- 社会工程学之黑客七宗罪——傲慢(Hooking)
前言 至于这次我把Hooking(钩子)归类为傲慢,原因只有一点:自负只会导致不注重甚至忽略小错误,而小错误也可以将整个局面崩盘. 显然,一部分黑客,或者说脚本小子,他们觉得自己超过了身边的人就是很厉 ...
- linux服务器防端口扫描,linux下防止syn***,端口扫描和死亡之ping
http://downloads.sourceforge.net ... les-v0.0.3-3.tar.gz下载以后安装: tar zxvf arptables-v0.0.3-3.tar.gz c ...
- 死亡之Ping(Ping of Death)攻击
由于在早期的阶段,路由器对包的最大尺寸都有限制,许多操作系统对TCP/IP栈的实现在ICMP包上都是规定64KB,并且在对包的标题头进行读取之后,要根据该标题头里包含的信息来为有效载荷生成缓冲区,当产 ...
- 黑客还是间谍?让你惊出一身冷汗的10个社会工程学黑客攻击手段
世界第一黑客凯文 米特尼克在<欺骗的艺术>中曾提到,人为因素才是安全的软肋.很多公司在信息安全上投入重金,最终导致数据泄露的原因却在人本身.你可能想象不到,对黑客来说,通过网络远程渗透破解 ...
- 社会工程学中个人信息的防护
有人的地方就有江湖,有江湖的地方一定有社会工程学. 社会工程学是黑客米特尼克悔改后在<欺骗的艺术>中所提出的,是一种通过对受害者心理弱点.本能反应.好奇心.信任.贪婪等心理陷阱进行诸如欺骗 ...
- 社会工程学——基础与认知建立
社会工程学(Social Engineering)在上世纪60年代左右作为正式的学科出现,广义社会工程学的定义是:建立理论并通过利用自然的.社会的和制度上的途径来逐步地解决各种复杂的社会问题. 世界第 ...
- 黑客必学之社会工程学
2019独角兽企业重金招聘Python工程师标准>>> 黑客必学之社会工程学什么是社会工程学? 总体上来说,社会工程学就是使人们顺从你的意愿.满足你的欲望的一门艺术与学问.它并不单纯 ...
- 2008社工新书《黑客社会工程学攻击》
保留一份以免淡忘了. 这本书写的非常的好,对于想深入了解这门艺术的人看是个不错的选择. --------------部分目录------------------------ 第一章.黑客时代的 ...
- 黑客社会工程学攻击的八种常用伎俩
著名黑客Kevin Mitnick在上世纪90年代让"黑客社会工程学"这个术语流行了起来,不过这 个简单的概念本身(引诱某人去做某事,或者泄露敏感信息)却早有年头了. 专家们认为, ...
- 黑客社会工程学攻击2 新书来袭
黑客社会工程学攻击2 黑手不出,谁与争锋!阔别4年,社工尸再现江湖. 2008年 <黑客社会工程学攻击>上市,它是当时国内第一本"社工尸"图书,启智中国式社工黑商.荣获 ...
最新文章
- 西瓜创客+Leangoo敏捷实践企业案例分享
- spring之DelegatingFilterProxy
- 重庆事业单位计算机职称评定,看效果 | 重庆事业单位改革 职称评定不再“终身制”...
- JavaBean的保存范围与javaBean的删除
- 基于Arduino开发的简易“高水位报警系统解决方案”
- mysql 列合并_mysql 列转行,合并字段的方法(必看)
- 堆、栈及静态数据区详解 转
- Unix 网络编程(四)- 典型TCP客服服务器程序开发实例及基本套接字API介绍
- sql server 2005 COUNT_BIG (Transact-SQL)
- 【Elasticsearch】玩转 Elasticsearch 7.8 的 SQL 功能
- 20190703 日子
- android 同步list数据,android SharedPreferences保存list数据
- [root@py ~]# watch -n 1 ifconfig 求解释
- vc模拟 tabletpc_KB895953-TCServer.exe TabletPC崩溃/内存泄漏HotFix
- SpringCloud-Feign接口调用超时:feign.RetryableException: Connection timed out (Connection timed out) execut
- linux 防DDOS防火墙脚本
- 2010-01-22 | 占豪收评:牛市继续还是进入熊市?
- 本周内外盘行情回顾2022.2.27
- 特殊纪念日Android APP内设置黑灰色背景
- AllenNLP系列文章之六:Textual Entailment(自然语言推理-文本蕴含)