2017-2-10 1957 0
Kali BT渗透

当在使用Linux的时候,如果您通过ls–l/就会发现,在/下包涵很多的目录,比如etc、usr、var、bin......等目录,而在这些目录中,我们进去看看,发现也有很多的目录或文件。文件系统在Linux下看上去就象树形结构,所以我们可以把文件系统的结构形象的称为树形结构。文件系统的是用来组织和排列文件存取的,所以她是可见的,在Linux中,我们可以通过ls等工具来查看其结构,在Linux系统中,我们见到的都是树形结构;比如操作系统安装在一个文件系统中,他表现为由/起始的树形结构。linux文件系统的最顶端是/,我们称/为Linux的root,也就是Linux操作系统的文件系统。Linux的文件系统的入口就是/,所有的目录、文件、设备都在/之下,/就是Linux文件系统的组织者,也是最上级的领导者。由于linux是开放源代码,各大公司和团体根据linux的核心代码做各自的操作,编程。这样就造成在根下的目录的不同。这样就造成个人不能使用他人的linux系统的PC。因为你根本不知道一些基本的配置,文件在哪里。。。这就造成了混乱。这就是FHS(FilesystemHierarchyStandard)机构诞生的原因。该机构是linux爱好者自发的组成的一个团体,主要是是对linux做一些基本的要求,不至于是操作者换一台主机就成了linux的‘文盲’。根据FHS(http://www.pathname.com/fhs/)的官方文件指出,他们的主要目的是希望让使用者可以了解到已安装软件通常放置于那个目录下,所以他们希望独立的软件开发商、操作系统制作者、以及想要维护系统的用户,都能够遵循FHS的标准。也就是说,FHS的重点在于规范每个特定的目录下应该要放置什么样子的数据而已。这样做好处非常多,因为Linux操作系统就能够在既有的面貌下(目录架构不变)发展出开发者想要的独特风格。事实上,FHS是根据过去的经验一直再持续的改版的,FHS依据文件系统使用的频繁与否与是否允许使用者随意更动,而将目录定义成为四种交互作用的形态,用表格来说有点像底下这样:可分享的(shareable)不可分享的(unshareable)不变的(static)/usr(软件放置处)/etc(配置文件)/opt(第三方协力软件)/boot(开机与核心档)可变动的(variable)/var/mail(使用者邮件信箱)/var/run(程序相关)/var/spool/news(新闻组)/var/lock(程序相关)四中类型:1.可分享的:可以分享给其他系统挂载使用的目录,所以包括执行文件与用户的邮件等数据,是能够分享给网络上其他主机挂载用的目录;2.不可分享的:自己机器上面运作的装置文件或者是与程序有关的socket文件等,由于仅与自身机器有关,所以当然就不适合分享给其他主机了。3.不变的:有些数据是不会经常变动的,跟随着distribution而不变动。例如函式库、文件说明文件、系统管理员所管理的主机服务配置文件等等;4.可变动的:经常改变的数据,例如登录文件、一般用户可自行收受的新闻组等。事实上,FHS针对目录树架构仅定义出三层目录底下应该放置什么数据而已,分别是底下这三个目录的定义:/(root,根目录):与开机系统有关;/usr(unixsoftwareresource):与软件安装/执行有关;/var(variable):与系统运作过程有关。一.根目录(/)的意义与内容:根目录是整个系统最重要的一个目录,因为不但所有的目录都是由根目录衍生出来的,同时根目录也与开机/还原/系统修复等动作有关。由于系统开机时需要特定的开机软件、核心文件、开机所需程序、函式库等等文件数据,若系统出现错误时,根目录也必须要包含有能够修复文件系统的程序才行。因为根目录是这么的重要,所以在FHS的要求方面,他希望根目录不要放在非常大的分区,因为越大的分区内你会放入越多的数据,如此一来根目录所在分区就可能会有较多发生错误的机会。因此FHS标准建议:根目录(/)所在分区应该越小越好,且应用程序所安装的软件最好不要与根目录放在同一个分区内,保持根目录越小越好。如此不但效能较佳,根目录所在的文件系统也较不容易发生问题。说白了,就是根目录和Windows的C盘一个样。根据以上原因,FHS认为根目录(/)下应该包含如下子目录:目录应放置档案内容/bin系统有很多放置执行档的目录,但/bin比较特殊。因为/bin放置的是在单人维护模式下还能够被操作的指令。在/bin底下的指令可以被root与一般帐号所使用,主要有:cat,chmod(修改权限),chown,date,mv,mkdir,cp,bash等等常用的指令。/boot主要放置开机会使用到的档案,包括Linux核心档案以及开机选单与开机所需设定档等等。Linuxkernel常用的档名为:vmlinuz,如果使用的是grub这个开机管理程式,则还会存在/boot/grub/这个目录。/dev在Linux系统上,任何装置与周边设备都是以档案的型态存在于这个目录当中。只要通过存取这个目录下的某个档案,就等于存取某个装置。比要重要的档案有/dev/null,/dev/zero,/dev/tty,/dev/lp*,/dev/hd*,/dev/sd*等等/etc系统主要的设定档几乎都放置在这个目录内,例如人员的帐号密码档、各种服务的启始档等等。一般来说,这个目录下的各档案属性是可以让一般使用者查阅的,但是只有root有权力修改。FHS建议不要放置可执行档(binary)在这个目录中。比较重要的档案有:/etc/inittab,/etc/init.d/,/etc/modprobe.conf,/etc/X11/,/etc/fstab,/etc/sysconfig/等等。另外,其下重要的目录有:/etc/init.d/:所有服务的预设启动script都是放在这里的,例如要启动或者关闭iptables的话:/etc/init.d/iptablesstart、/etc/init.d/iptablesstop/etc/xinetd.d/:这就是所谓的superdaemon管理的各项服务的设定档目录。/etc/X11/:与XWindow有关的各种设定档都在这里,尤其是xorg.conf或XF86Config这两个XServer的设定档。/home这是系统预设的使用者家目录(homedirectory)。在你新增一个一般使用者帐号时,预设的使用者家目录都会规范到这里来。比较重要的是,家目录有两种代号:~:代表当前使用者的家目录,而~guest:则代表用户名为guest的家目录。/lib系统的函式库非常的多,而/lib放置的则是在开机时会用到的函式库,以及在/bin或/sbin底下的指令会呼叫的函式库而已。什么是函式库呢?妳可以将他想成是外挂,某些指令必须要有这些外挂才能够顺利完成程式的执行之意。尤其重要的是/lib/modules/这个目录,因为该目录会放置核心相关的模组(驱动程式)。/mediamedia是媒体的英文,顾名思义,这个/media底下放置的就是可移除的装置。包括软碟、光碟、DVD等等装置都暂时挂载于此。常见的档名有:/media/floppy,/media/cdrom等等。/mnt如果妳想要暂时挂载某些额外的装置,一般建议妳可以放置到这个目录中。在古早时候,这个目录的用途与/media相同啦。只是有了/media之后,这个目录就用来暂时挂载用了。/opt这个是给第三方协力软体放置的目录。什么是第三方协力软体啊?举例来说,KDE这个桌面管理系统是一个独立的计画,不过他可以安装到Linux系统中,因此KDE的软体就建议放置到此目录下了。另外,如果妳想要自行安装额外的软体(非原本的distribution提供的),那么也能够将你的软体安装到这里来。不过,以前的Linux系统中,我们还是习惯放置在/usr/local目录下。/root系统管理员(root)的家目录。之所以放在这里,是因为如果进入单人维护模式而仅挂载根目录时,该目录就能够拥有root的家目录,所以我们会希望root的家目录与根目录放置在同一个分区中。/sbinLinux有非常多指令是用来设定系统环境的,这些指令只有root才能够利用来设定系统,其他使用者最多只能用来查询而已。放在/sbin底下的为开机过程中所需要的,里面包括了开机、修复、还原系统所需要的指令。至于某些伺服器软体程式,一般则放置到/usr/sbin/当中。至于本机自行安装的软体所产生的系统执行档(systembinary),则放置到/usr/local/sbin/当中了。常见的指令包括:fdisk,fsck,ifconfig,init,mkfs等等。/srvsrv可以视为service的缩写,是一些网路服务启动之后,这些服务所需要取用的资料目录。常见的服务例如WWW,FTP等等。举例来说,WWW伺服器需要的网页资料就可以放置在/srv/www/里面。呵呵,看来平时我们编写的代码应该放到这里了。/tmp这是让一般使用者或者是正在执行的程序暂时放置档案的地方。这个目录是任何人都能够存取的,所以你需要定期的清理一下。当然,重要资料不可放置在此目录啊。因为FHS甚至建议在开机时,应该要将/tmp下的资料都删除。事实上FHS针对根目录所定义的标准就仅限于上表,不过仍旧有些目录也需要我们了解一下,具体如下:目录应放置文件内容/lost+found这个目录是使用标准的ext2/ext3档案系统格式才会产生的一个目录,目的在于当档案系统发生错误时,将一些遗失的片段放置到这个目录下。这个目录通常会在分割槽的最顶层存在,例如你加装一个硬盘于/disk中,那在这个系统下就会自动产生一个这样的目录/disk/lost+found/proc这个目录本身是一个虚拟文件系统(virtualfilesystem)喔。他放置的资料都是在内存当中,例如系统核心、行程资讯(process)(是进程吗?)、周边装置的状态及网络状态等等。因为这个目录下的资料都是在记忆体(内存)当中,所以本身不占任何硬盘空间。比较重要的档案(目录)例如:/proc/cpuinfo,/proc/dma,/proc/interrupts,/proc/ioports,/proc/net/*等等。呵呵,是虚拟内存吗[guest]?/sys这个目录其实跟/proc非常类似,也是一个虚拟的档案系统,主要也是记录与核心相关的资讯。包括目前已载入的核心模组与核心侦测到的硬体装置资讯等等。这个目录同样不占硬盘容量。除了这些目录的内容之外,另外要注意的是,因为根目录与开机有关,开机过程中仅有根目录会被挂载,其他分区则是在开机完成之后才会持续的进行挂载的行为。就是因为如此,因此根目录下与开机过程有关的目录,就不能够与根目录放到不同的分区去。那哪些目录不可与根目录分开呢?有底下这些:/etc:配置文件/bin:重要执行档/dev:所需要的装置文件/lib:执行档所需的函式库与核心所需的模块/sbin:重要的系统执行文件这五个目录千万不可与根目录分开在不同的分区。请背下来啊。二./usr的意义与内容:依据FHS的基本定义,/usr里面放置的数据属于可分享的与不可变动的(shareable,static),如果你知道如何透过网络进行分区的挂载(例如在服务器篇会谈到的NFS服务器),那么/usr确实可以分享给局域网络内的其他主机来使用喔。/usr不是user的缩写,其实usr是UnixSoftwareResource的缩写,也就是Unix操作系统软件资源所放置的目录,而不是用户的数据啦。这点要注意。FHS建议所有软件开发者,应该将他们的数据合理的分别放置到这个目录下的次目录,而不要自行建立该软件自己独立的目录。因为是所有系统默认的软件(distribution发布者提供的软件)都会放置到/usr底下,因此这个目录有点类似Windows系统的C:\Windows\+C:\Programfiles\这两个目录的综合体,系统刚安装完毕时,这个目录会占用最多的硬盘容量。一般来说,/usr的次目录建议有底下这些:目录应放置文件内容/usr/X11R6/为XWindowSystem重要数据所放置的目录,之所以取名为X11R6是因为最后的X版本为第11版,且该版的第6次释出之意。/usr/bin/绝大部分的用户可使用指令都放在这里。请注意到他与/bin的不同之处。(是否与开机过程有关)/usr/include/c/c++等程序语言的档头(header)与包含档(include)放置处,当我们以tarball方式(*.tar.gz的方式安装软件)安装某些数据时,会使用到里头的许多包含档。/usr/lib/包含各应用软件的函式库、目标文件(objectfile),以及不被一般使用者惯用的执行档或脚本(script)。某些软件会提供一些特殊的指令来进行服务器的设定,这些指令也不会经常被系统管理员操作,那就会被摆放到这个目录下啦。要注意的是,如果你使用的是X86_64的Linux系统,那可能会有/usr/lib64/目录产生/usr/local/统管理员在本机自行安装自己下载的软件(非distribution默认提供者),建议安装到此目录,这样会比较便于管理。举例来说,你的distribution提供的软件较旧,你想安装较新的软件但又不想移除旧版,此时你可以将新版软件安装于/usr/local/目录下,可与原先的旧版软件有分别啦。你可以自行到/usr/local去看看,该目录下也是具有bin,etc,include,lib...的次目录/usr/sbin/非系统正常运作所需要的系统指令。最常见的就是某些网络服务器软件的服务指令(daemon)/usr/share/放置共享文件的地方,在这个目录下放置的数据几乎是不分硬件架构均可读取的数据,因为几乎都是文本文件嘛。在此目录下常见的还有这些次目录:/usr/share/man:联机帮助文件/usr/share/doc:软件杂项的文件说明/usr/share/zoneinfo:与时区有关的时区文件/usr/src/一般原始码建议放置到这里,src有source的意思。至于核心原始码则建议放置到/usr/src/linux/目录下。三./var的意义与内容:如果/usr是安装时会占用较大硬盘容量的目录,那么/var就是在系统运作后才会渐渐占用硬盘容量的目录。因为/var目录主要针对常态性变动的文件,包括缓存(cache)、登录档(logfile)以及某些软件运作所产生的文件,包括程序文件(lockfile,runfile),或者例如MySQL数据库的文件等等。常见的次目录有:目录应放置文件内容/var/cache/应用程序本身运作过程中会产生的一些暂存档/var/lib/程序本身执行的过程中,需要使用到的数据文件放置的目录。在此目录下各自的软件应该要有各自的目录。举例来说,MySQL的数据库放置到/var/lib/mysql/而rpm的数据库则放到/var/lib/rpm去/var/lock/某些装置或者是文件资源一次只能被一个应用程序所使用,如果同时有两个程序使用该装置时,就可能产生一些错误的状况,因此就得要将该装置上锁(lock),以确保该装置只会给单一软件所使用。举例来说,刻录机正在刻录一块光盘,你想一下,会不会有两个人同时在使用一个刻录机烧片?如果两个人同时刻录,那片子写入的是谁的数据?所以当第一个人在刻录时该刻录机就会被上锁,第二个人就得要该装置被解除锁定(就是前一个人用完了)才能够继续使用/var/log/非常重要。这是登录文件放置的目录。里面比较重要的文件如/var/log/messages,/var/log/wtmp(记录登入者的信息)等。/var/mail/放置个人电子邮件信箱的目录,不过这个目录也被放置到/var/spool/mail/目录中,通常这两个目录是互为链接文件。/var/run/某些程序或者是服务启动后,会将他们的PID放置在这个目录下/var/spool/这个目录通常放置一些队列数据,所谓的“队列”就是排队等待其他程序使用的数据。这些数据被使用后通常都会被删除。举例来说,系统收到新信会放置到/var/spool/mail/中,但使用者收下该信件后该封信原则上就会被删除。信件如果暂时寄不出去会被放到/var/spool/mqueue/中,等到被送出后就被删除。如果是工作排程数据(crontab),就会被放置到/var/spool/cron/目录中。由于FHS仅是定义出最上层(/)及次层(/usr,/var)的目录内容应该要放置的文件或目录数据,因此,在其他次目录层级内,就可以随开发者自行来配置了。四.目录树(directorytree):在Linux底下,所有的文件与目录都是由根目录开始的。那是所有目录与文件的源头,然后再一个一个的分支下来,因此,我们也称这种目录配置方式为:目录树(directorytree),这个目录树的主要特性有:目录树的启始点为根目录(/,root);每一个目录不止能使用本地端的partition的文件系统,也可以使用网络上的filesystem。举例来说,可以利用NetworkFileSystem(NFS)服务器挂载某特定目录等。每一个文件在此目录树中的文件名(包含完整路径)都是独一无二的。如果我们将整个目录树以图的方法来显示,并且将较为重要的文件数据列出来的话,那么目录树架构就如下图所示:五.绝对路径与相对路径除了需要特别注意的FHS目录配置外,在文件名部分我们也要特别注意。因为根据档名写法的不同,也可将所谓的路径(path)定义为绝对路径(absolute)与相对路径(relative)。这两种文件名/路径的写法依据是这样的:绝对路径:由根目录(/)开始写起的文件名或目录名称,例如/home/dmtsai/.bashrc;相对路径:相对于目前路径的文件名写法。例如./home/dmtsai或http://www.cnblogs.com/home/dmtsai/等等。反正开头不是/就属于相对路径的写法而你必须要了解,相对路径是以你当前所在路径的相对位置来表示的。举例来说,你目前在/home这个目录下,如果想要进入/var/log这个目录时,可以怎么写呢?复制代码代码如下:cd/var/log(absolute)cd../var/log(relative)因为你在/home底下,所以要回到上一层(../)之后,才能继续往/var来移动的,特别注意这两个特殊的目录:.:代表当前的目录,也可以使用./来表示;..:代表上一层目录,也可以../来代表。这个.与..目录概念是很重要的,你常常会看到cd..或./command之类的指令下达方式,就是代表上一层与目前所在目录的工作状态。实例1:如何先进入/var/spool/mail/目录,再进入到/var/spool/cron/目录内?命令:复制代码代码如下:cd/var/spool/mailcd../cron说明:由于/var/spool/mail与/var/spool/cron是同样在/var/spool/目录中。如此就不需要在由根目录开始写起了。这个相对路径是非常有帮助的,尤其对于某些软件开发商来说。一般来说,软件开发商会将数据放置到/usr/local/里面的各相对目录。但如果用户想要安装到不同目录呢?就得要使用相对路径。实例2:网络文件常常提到类似./run.sh之类的数据,这个指令的意义为何?说明:由于指令的执行需要变量的支持,若你的执行文件放置在本目录,并且本目录并非正规的执行文件目录(/bin,/usr/bin等为正规),此时要执行指令就得要严格指定该执行档。./代表本目录的意思,所以./run.sh代表执行本目录下,名为run.sh的文件。

各类教程

前言在上集我们已经知道了DDOS流量的获取方式,并且总结出每种流量的获取方式。原理说的差不多了,所以这篇文章将围绕技术角度攥写。在最后部分我将会发放辛辛苦苦收集的各种DDOS攻击脚本和各类在线DDOS平台的源代码。如果没看过上集的请参考该链接:走近科学:揭秘在线DDoS攻击平台(上)。流量控制当我们获取到足够流量的时候就需要对流量进行管理和分配。DDOS流量的管理可以分为以下三大类,分别是单一DDOS脚本控制,单个API接口控制多个DDOS脚本和单个CMS或者API控制多个API接口。单一DDOS脚本控制这类流量控制是最简单的,属于一个拒绝服务攻击(DOS),还不能称之为分布式拒绝服务攻击(DDOS)。黑客通过源代码编译好一个脚本后直接对目标站点进行攻击。这种控制方式主要运营在压力测试模拟阶段上,并不会用作真正的DDOS攻击。因为流量过小,攻击方式过于单一。单个API接口控制多个DDOS脚本这时安全研究人员为了使攻击复杂化,也为了方便流量的管理。这个时候会编译一个API接口来统一管理全部的DDOS流量。单个CMS或者API控制多个API接口在DDOS攻击里面,我们需要用到众多的服务器,那么单个API已经不能满足我们的需求了。这时每个服务器都会有一个自己的API接口,于是我们又会再去重新编写一个API接口来管理全部服务器的API接口。在攻击目标站点的时候,只需要一个命令,全部的服务器都会对目标站点展开各种各样的DDOS攻击。流量控制流程图DDOS脚本介绍在上一篇我已经说过DDOS攻击分为Layer4和Layer7两个大类,并且每个Layer都有很多种攻击方式,今天我们就来说一下怎么使用这些DDOS攻击脚本。编译脚本文件我所提供和收集的DDOS脚本文件全部都是由C++所编写,所以在Linux上用gcc来对脚本进行编译。使用以下命令对源代码进行编译gcc脚本名称.c-o脚本名称-lpthread或者gcc脚本名称.c-lpthread-lpcap-o脚本名称编译完成后需要对该脚本赋予足够的权限chmod755脚本名称对脚本编译及赋予权限使用DDOS脚本我先拿一个ACKDDOS脚本举个例子。我们可以看到这个攻击脚本需要的主要是以下几个命令参数。,/脚本名称<攻击线程><是否限制流量(如果不限输入-1)><攻击时间>ACKDDOS命令那么我们来尝试一下对局域网内IP进行DDOS攻击。可以看到目标IP已经无法ping通了。使用ACKDDOS攻击某主机AMP列表扫描但是有时候我们会看到AMPDDOS攻击需要添加一个AMP列表,如下图红色方框所示。这个AMP列表到底是什么?又是怎么得到到?DNS反射攻击(需要AMP文件)这里我需要详细解释一下。AMP的全称是Amplification,中文意思就是放大。比如大家熟悉的DNS反射型攻击就是一个标准的AMPDDOS攻击。其原理是A服务器发送大量的数据包给大量的DNS服务器,但是数据包是篡改过的。黑客会把发送过去的数据包里A服务器的IP地址更改成B服务器的IP地址。DNS服务器会以为是B服务器发送的数据包,于是就会把返回的数据包发送给B服务器。DNS放大攻击的好处是可以用一台主机达到N台主机的攻击效果。大家可以参考以下图片来理解。DNSAMPDDOS攻击而我们所需要的AMP列表就是全球所有的DNS服务器IP地址或者是可以做数据包跳转的IP地址。在我提供的源代码里面也有AMP资源扫描脚本文件的源代码,编译方式同上。资源扫描器代码我们先看看扫描一个DNS资源需要什么命令参数。./AMP扫描脚本名称<开始IP><结束IP><输出文件位置><线程><多少毫秒开始延时一次>DNS扫描器指令一般情况下,我们会把1.1.1.1作为开头IP地址,然后把255.255.255.255作为末端IP地址,这样就可以扫描到全球的DNS服务器的IP地址了。DNS反射攻击只是AMPDDOS攻击的其中一种,还有很多AMPDDOS攻击方式,比如MySQLAMPDDOS攻击,NTPAMPDDOS攻击等。以1GB的上行宽带速度来看,一般需要3-5个小时才能扫描完成。AMP列表自动化更新理念一个AMP列表的制作就需要数个小时,那么多AMP列表的制作需要的时间就更久了。这里想了一个方式能够让大家快速的得到这些AMP列表。这里大家先别激动,这个只是一个想法,还并没有人去执行。首先是是一个人或者团队专门来负责对AMP列表的更新和维护,扫描到的列表生成txt文本文件后存放在WEB服务器上。随后这个人或者团队可以免费或者付费对大家开放列表的下载地址。如果有人的AMP列表需要更新,在服务上写一个sh可执行文件,内容为#!/bin/bashrm-I老的AMP列表1.txtrm-I老的AMP列表2.txt…………省略…………wgethttp://AMP列表存放的域名/新的AMP列表1.txtwgethttp://AMP列表存放的域名/新的AMP列表2.txt…………省略…………然后直接运行这个可执行程序,那么整个AMP列表的内容就会随之更新了。目前全球没一个人在做这件事,有兴趣(金钱和技术)的人可以考虑做做看。常用DDOS攻击方式因为DDOS攻击的方式太多了,我无法把每个攻击的方式和原理都详细的讲解一遍。如果每种攻击方式都详细讲一遍,差不多可以出一本书了。但是大家可以参考下面这个表格去网上搜索相关的资料和脚本代码。攻击名称攻击层数目标种类命令填写格式GETLayer7网站,服务器IP等填写网站链接:http://xxxx.comHEADLayer7网站,服务器IP等填写网站链接:http://xxxx.comPOSTLayer7网站,服务器IP等填写网站链接:http://xxxx.comJSBYPASSLayer7网站,服务器IP等填写网站链接:http://xxxx.comJOOMLALayer7网站,服务器IP等填写网站链接:http://xxxx.comXMLRPCLayer7网站,服务器IP等填写网站链接:http://xxxx.comSNMPLayer4个人主机,服务器IP等填写IP地址:192.168.0.1SSDPLayer4个人主机,服务器IP等填写IP地址:192.168.0.1DNSLayer4个人主机,服务器IP等填写IP地址:192.168.0.1CHARGENLayer4个人主机,服务器IP等填写IP地址:192.168.0.1NTPLayer4个人主机,服务器IP等填写IP地址:192.168.0.1TS3Layer4个人主机,服务器IP等填写IP地址:192.168.0.1SSYNLayer4个人主机,服务器IP等填写IP地址:192.168.0.1DOMINATELayer4个人主机,服务器IP等填写IP地址:192.168.0.1ACKLayer4个人主机,服务器IP等填写IP地址:192.168.0.1NGSSYNLayer4个人主机,服务器IP等填写IP地址:192.168.0.1OVXLayer4个人主机,服务器IP等填写IP地址:192.168.0.1TCPACKLayer4个人主机,服务器IP等填写IP地址:192.168.0.1TCPSYNLayer4个人主机,服务器IP等填写IP地址:192.168.0.1TCPRSTLayer4个人主机,服务器IP等填写IP地址:192.168.0.1TCPURGLayer4个人主机,服务器IP等填写IP地址:192.168.0.1TCPPUSHLayer4个人主机,服务器IP等填写IP地址:192.168.0.1TCPECELayer4个人主机,服务器IP等填写IP地址:192.168.0.1TCPCWRLayer4个人主机,服务器IP等填写IP地址:192.168.0.1ICMPLayer4个人主机,服务器IP等填写IP地址:192.168.0.1MUDPLayer4个人主机,服务器IP等填写IP地址:192.168.0.1VSELayer4个人主机,服务器IP等填写IP地址:192.168.0.1ATCPLayer4个人主机,服务器IP等填写IP地址:192.168.0.1DDOSAPI搭建API搭建准备你使用一两个DDOS脚本还好,但是如果你要使用几十个DDOS脚本呢?一个一个的执行吗?所以我们还需要搭建一个API来对这些脚本文件进行调用。API编写最简便的还是PHP,所以我们还需要在服务器上搭建相关的环境。这些命令只适用于CentOS,其它版本的Linux系统请自行Google。输入以下命令进行安装1.yum-yupdate2.yuminstallgcclibcaplibpcaplibpcap-develscreenphpdstatcmakegmpgmp-develgengetoptbyaccflexgitjson-czmapiptrafnano(或者直接输入yumgroupinstall"DevelopmentTools")3.yumgroupinstall"DevelopmentTools"4.yuminstallgccphp-develphp-pearlibssh2libssh2-devel5.peclinstall-fssh26.touch/etc/php.d/ssh2.ini7.echoextension=ssh2.so>/etc/php.d/ssh2.ini8.Servicehttpdrestart就这么简单,环境已经搭建完成。然后你需要把API文件,DDOS脚本和AMP列表文件文件放入到你的WEB目录内。环境创建完毕后默认的WEB目录在/var/www/htmlAPI文件编辑这时你需要对你的API文件进行编辑。我们先来看看这个API文件哪里需要改的。如下图所示,在代码第六行那里有个红方框,在红方框内设置一个你自己的KeyCode。KeyCode设置在11行那里我们需要输入服务器的IP地址,SSH的账号和密码。服务器SSHIP地址,账号和密码从43行到63行是调用脚本文件的。在==后面填写的是DDOS攻击名称,./后面跟着的是脚本的路径和文件名称,然后每个$后面的变量值都是要填写的指令,如果没有动态变量那么直接填写相关命令,比如AMP列表文件名称。如果你的DDOS脚本文件或者AMP列表文件在其它文件夹,那么请确保对API内的DDOS脚本文件路径进行更改,并且确定这个API文件有权限访问你的脚本文件所在目录。调用DDOS攻击脚本文件然后就是使用这个API文件了,根据源代码的里面的各种变量和常量值,我们可以这么构建。http://服务IP地址/api.php?key=自己设置的KeyCode&host=目标地址&time=攻击时间&port=端口&method=攻击方式举例:http://192.168.1.2/api.php?key=keycode&host=192.168.1.3&time=50&port=80&method=DNSAPI调用文件核查搭建完API后我们需要核实一下是否成功的对脚本进行调用。这里很简单,直接用HTOP查看整个服务器的进程就行。输入以下命令开启htop服务。htop下面这张图是未执行API前的运行程序未执行API前下面这张图是执行API后的运行程序,可以发现多了几个DDOS攻击脚本运行在后台。执行API后在线DDOS演练系统搭建在线DDOS平台的搭建也没多复杂,我已经提供给大家足够的在线DDOSCMS源码,并且都附上了数据库结构。这些在线DDOS平台都是采用PHP编写,数据库都是MySQL。每个CMS都有特定的文件来填写DDOSAPI,在填写API的文件里面可以填写多个API,之后要发送攻击命令的时候只需要调用一个API接口,这个API接口又会调用你输入的API接口,然后你输入的API接口又会调用全部的DDOS攻击脚本文件,非常的方便。这个地方需要普及的知识太多了,但是凡是搭建过WEB服务器的人都很清楚这些流程,我就不专门去讲了,大家自己研究一下。某在线DDOS平台API插入界面尾声与感想我通过各种PY交易获得了大量的在线DDOS平台的源码和DDOS脚本的源代码,为了这个专题也花了不少的精力和少许的金钱,但是能够免费的为国内的安全研究人员提供一个在线DDOS平台的研究我是非常高兴的。但是我为什么不提供像低轨道粒子炮,HUCDDOS这种工具?得了吧,那种东西不配叫做DDOS(分布式拒绝服务)攻击,称其量只能算作DOS(拒绝服务)攻击,拿来打苍蝇都打不死。与其提供给你们一把AK47,不如直接给你们制造核弹头的原材料。笔者曾在美国生活,美国在线DDOS平台处于一个法律的灰色地带,你既不能说它非法,也不能完全说它合法,因为DDOS和大流量的攻击演练并没有太清晰的界限。我在美国那段时期有幸和一个在线DDOS平台的站长聊过几次,他说他们的主要收入都是来自中国,他甚至想专门弄一个中文版本的在线DDOS平台,只可惜他不会中文,而且又担心被GFW拦截。在中国开DDOS在线平台只有授权检测证明我才能购买这个服务,而客户群体普遍都是厂商,针对个人用户的反而很少。于此同时就造成DDOS演练在国内变成了供不应求的局面,要做压力测试厂商有时只能被迫去购买国外的流量。在这种情况下,压力测试服务只能成为安全厂商的一个附加服务。据笔者了解,国内诸如阿里巴巴、腾讯、淘宝都有专门的DDOS演练平台,可以自动化的演练此类攻击,因而这些企业对于DDOS的防御能力是相对较强的。可是其他国内的互联网厂商做过正规压力测试服务的非常少,基本上只要三个G的上行流量可以打死国内一大堆网站,并且不管这些厂商用什么服务器。DDOS攻击是最难防御的,也是威胁程度很高的。但是值得庆幸的是国内还有个GFW对这些DDOS流量进行拦截。在2016年二月,爱尔兰就遭受到大规模的DDOS攻击,整个国家的网络差点瘫痪。那么中国企业能够应对这种压力吗?国内厂商和政府的服务器是否做好了抗DDOS的准备?*文章原创作者:ArthurKiller,转载请注明来自FreeBuf黑客与极客(FreeBuf.COM)

2017-2-4 2713 0
各类教程

*本文原创作者:ArthurKiller注:本文主张交流与科研学习,请勿对该技术进行恶意使用!本平台及作者对读者的之后的行为不承担任何法律责任。简介DDOS攻击也叫做分布式拒绝服务攻击,其英文全称为DistributedDenialofServiceattack。DDOS攻击的主要目的是使目标电脑的网络或系统资源耗尽,使服务暂时中断或停止,导致其对目标客户不可用。用在好处可以为厂商及政府的服务器做合法的压力测试,用在坏处则可以对厂商进行敲诈勒索。本文主要讲解在线DDOS那么以下两点,流量获取方式和DDOS分成方式。获取流量DDOS攻击最需要的就是流量,而流量又分为上行流量(Outlet)和下行流量(Inlet)。上行流量关系到向外发送数据包的速度和大小,而下行流量则是和接收数据包的速度和大小有关,在DDOS攻击里面主要用到的是上行行流量。那么黑客们是怎么获取到DDOS攻击的流量呢?我总结了一下,黑客获取流量的方式主要基于以下六点。1.肉鸡集群最常见的DDOS攻击流量主要是采用肉鸡所获得。黑客利用后门程序配合各种各样的安全漏洞获得个人计算机和web服务器的控制权限,随后由C&C服务器所控制。而黑客主要是连接C&C服务器对肉鸡集群下达命令。这种流量产生的攻击也叫做肉鸡集群DDOS攻击(BotNetDDOSAttack)。肉鸡集群虽然有资源丰富和流量大这么两个优点,但是个人需要承担相关法律责任,并且技术要求很高。常见肉鸡控制图2.租用VPSVPS的好处是价格便宜,流量稳定,也不用担心法律问题,但是使用VPS的流量有个缺陷,就是大部分服务器厂商都禁止客户采用VPS服务器用作于DDOS攻击。因为一旦一个VPS长时间占用过多的流量,那么可能会影响到其它VPS的网络速度。如果客户违反其相关规定,VPS可能会被禁止使用,并且无法退款。VPS价格和流量大小3.租用专属服务器(DedicatedServer)大部分服务器厂商都不会去管你采用专属服务器做什么。专属服务器有自己的宽带和独立IP,所以不管你怎么操作都不会影响到机房其它服务器的网络。虽然专属服务器流量大也稳定,但是它有个缺点就是价格十分昂贵。Godaddy上专属服务器的价格4.黑市购买流量有些黑客因为不懂DDOS脚本的代码,也不知道怎么搭建,于是会去网上购买别人搭建好的API或者购买压力测试厂商的服务。在全球比较大的暗网平台一般都会出售DDOS服务,DDOSAPI接口,僵尸网络等。但是暗网上买鱼龙混杂,除了小心骗子以外,这些流量都十分的昂贵,并且有很多的不确定因素,比如流量太小,支持的攻击方式太少等。暗网上出售的僵尸网络暗网上的DDOSAPI搭建服务5.通过论坛等社交平台上购买也有些黑客会在一些英文黑客论坛上出售DDOS资源或者在YouTube上打广告。YouTube上的广告直接用搜索引擎搜索就行,但是论坛里的DDOSAPI购买还是得去hackforums或者leakforums之类的黑客论坛上发帖询问。这种方式购买到的流量有些是他们自己用VPS或者专属服务器搭建的,有些是用自己的肉鸡集群搭建的。虽然方便快捷,但是依然存在着这么两个问题,一个是价格高,第二个是骗子十分的多。YouTube上的广告6.向在线DDOS平台上购买API还有第三种是向在线小型DDOS平台购买。有些小型的DDOS平台也会出租他们自己的DDOSAPI资源。除了VPS和专属服务器外,但是不管你采用哪种方法购买,都需要注意一点,就是这些商家只接受比特币交易,同时注意别被骗了。在国外有很多的在线DDOS攻击平台,几个大型的在线DDOS平台都宣传自己采用专属主机作为DDOS流量,而且合理合法。不过这些DDOS攻击平台普遍都十分欢迎用户采用比特币付款,甚至有些在线压力平台会给予比特币付款用户一些折扣。一般情况下,普通货币兑换成比特币是需要交一些手续费的,比如Circle,火币网之类的,而且从黑客手中购买肉鸡集群也只能采取比特币付款的方式进行支付。所以不排除考虑,国外这些在线压力测试平台可能也会去购买一些灰色流量。下面给大家推荐国外几个大型的在线压力测试平台。https://vdos-s.comhttp://booterbox.comhttps://booter.orghttps://youboot.nethttp://networkstresser.com/https://booter.xyz/某在线DDOS平台上的价格7.流量获取总结基于以上六个获取流量的方式,我做了一个表格可以更加方便的让大家进行对比每种方式的优点和缺点。流量获取方式在线DDOS平台购买APIVPS专属服务器黑市购买社交平台购买肉鸡集群价格高低高中等中等无法律风险中等低低中等中等高交易风险低高低中等高无流量稳定性不确定稳定稳定不确定不确定低IP资源数量不确定低低不确定不确定高技术要求低中中低低高交易货币要求比特币普通货币普通货币比特币比特币,普通货币等无DDOS攻击分层目前的DDOS攻击主要分为两个大类,分别为Layer4和Layer7,也叫做第四层攻击和第七层攻击。这个所谓的层是由OSI(OpenSystemInterconnection)模型进行分类的,也叫做开放式系统互联模型。这七个层分别是应用层(applicationlayer)表示层(presentationlayer)会话层(sessionlayer)传输层(transportlayer)网络层(networklayer)数据链路层(datalinklayer)物理层(physicallayer)OSI模型每个攻击方式所需要用到的层数代表它的攻击分类。比如SNMPDDOS攻击只会用到第4个层,这种攻击就属于layer4DDOS攻击。而JSBYPASSDDOS攻击会用到第7个层,那么这类攻击属于layer7DDOS攻击。每一层攻击都有它特有的攻击对象,那么我们先看看这layer7和layer4DDOS攻击的不同。Layer4DDOS攻击主要是发生在传输层,而传输层的功能主要是一些网络协议,所以像TCP/ACK攻击,DNS反射型攻击之类的都是在Layer4这一层。因为它是属于协议类型攻击,那么就会需要大量的资源(IP和流量),所以这一层攻击也常在僵尸网络DDOS攻击里面出现,而这类攻击的攻击对象主要是个人电脑,web服务器等网络设备。Layer7DDOS攻击主要是发生在应用层,比如某一个错误的指令导致系统死机或者下线。像JOOMLA攻击,GET攻击之类的就属于Layer7攻击。这里有个误区,大部分人认为Layer7攻击只可以发生在web服务器上,其实不然,它也可以用作在个人手机,电脑上等。TelegramDDOS漏洞总结第一集主要是讲解一些原理和普及相关知识。在下面一集我会提供相关源代码,利用方式以及常见DDOS攻击原理讲解等。*文章作者:ArthurKiller,转载请注明来自FreeBuf黑客与极客(FreeBuf.COM)

2017-2-4 2356 0
Kali BT渗透

据说是Th4ck日站的思路……非同一网关C段劫持菜鸟思路大牛勿笑这方法需要大家一起研究下修复一点错误泪少说MAC软修改机子会上不了网所以这个问题我会研究下的这是我自己很早就发现的方法一直没发不过为了法客的奖品我还是发了直说思路不做实例讲解这个方法很简单就是利用局域网的IP冲突(可做到突破非同网关劫持与SB嗅探)也就说土地点就是直接把我们拿到的服务器修改成目标服务器的IP这个就是我们修改IP后他会判断成从新获取IP所以直接把原来的IP服务器的顶下来的然后我们绑定我们目标站的域名就可以达到劫持的效果了而且看不出是劫持的因为IP没有变所以管理发现网站被入侵了会通过FTP或者服务器修改会主页然后我们嗅探本机就好了他发送的数据都是到我们本机的还有就是IP和MAC双绑定我们修改成相对应的就好了这个方法我用过很多次无视非同网关无视神马防火墙神马神马的劫持成功大站的案例有天下网吧华夏联盟这两个站我直接修改的IP劫持装逼作者:Liuker摘自:http://www.ra1nker.com/?p=125Green_leaves发表于昨天00:03根据我没有做测试的猜想是,自己手上局域网的机子改成目标主机ip,造成局域网冲突,在网关缓存没有更新的情况下会造成目标主机ip解析到你的机器上。结果会造成目标主机登录不上,因为ip解析到你的电脑上了。等目标主机恢复的时候,你的主机就断开了,需要等待缓存更新。这样的冲突就算是双绑的服务器也一样有用。防御方法暂不清楚。更深层次利用则是仿造与目标主机一样的登录环境,记录其帐号密码,或者利用劫持的时间内进行钓鱼等等。理论和实践基础薄弱,可能分析得不到位。china-96发表于昨天00:08回复2#Green_leaves应该是这样吧,不过这样冲突是如何能记录到目标的帐号密码,还是说进入路由器之后截取到的,?Green_leaves发表于昨天00:17回复3#china-96如果我们劫持了服务器,把首页变成空白页,那么管理员肯定会去登录服务器,而服务器的ip已经变成你的机子上了,实际登录到的是你服务器了。如果思路没错的话,是可以记录下登录帐号和信息的。我不知道上面的方法是否可行,正准备过几天有空了试验一下。如果可行的话,只要弄个跟目标主机差不多,是肯定可以骗到的。testonly发表于昨天02:57回复4#Green_leaves骗到的话目标主机一旦恢复,你的主机ip不是失效了?那么你如何查询你主机记录下的东西?莫非等你的主机管理员发现后恢复?Green_leaves发表于昨天12:16回复6#testonly如果骗到目标主机管理员登录,实际登录到的应该是你控制的主机,嗅探工具或者密码记录工具应该记录的是你实际控制的那台主机,而不是目标主机。如果管理员登录了,理论上是可以记录下来的。hup发表于昨天12:44回复2#Green_leaves这样自己的服务器就down掉了吧。hup发表于昨天12:45回复11#Green_leavesgina就可以记录Green_leaves发表于昨天12:55回复12#hup自己控制的那台机子是可以登录的,但是如果缓存更新,则有一段时间会登录不上。这个是foraya测试了很多次以后告诉我的结果。perky发表于昨天20:44可以绑定多ip很早就玩过了现在才搬出来哈哈。。。wenzicishui发表于昨天21:08同在一个局域网怎么可能绑多个同网段IP在自己网卡上?最后受害的应该是自己,估计需要从console把IP才能改回去....Green_leaves发表于昨天21:13具体的方法还得研究研究,不然改掉以后,自己的远程会话肯定断掉了。摘自:https://forum.90sec.org/thread-3949-1-1.html站长评论:这个问题,在局域网中经常碰到(尤其是网吧),不能算是漏洞……严格的来讲,这个也不叫“劫持”,只能说是IP冲突的一种……这个方法受以下因素、条件影响:1、必须在同一局域网(无需同网关,C段相同即可)。2、目标机器是否装有具有“拦截外部IP冲突”功能的防火墙。3、目标机器本地连接是否设置为:“自动获取IP”。(这条因素不确定)4、网管是否绑定IP+MAC,如果绑定了,则还需要修改攻击机器的IP、MAC与目标机器完全一致。5、可以给本机(攻击机器)绑定多个IP备用,否则在IP冲突时,你可能无法登陆本机。关于通过这种方法拿到服务器权限,这个略蛋疼……因为使用这种方法“劫持”后(其实就是霸占目标机器IP而已……),目标机器网络是中断状态(本地连接如果是“自动获取IP”,则可能会自动获取为另一IP,未实践、不确定),按照上边所说的,如果这时管理员登陆目标机器(Mstsc、FTP等),数据是发到本机的(攻击机器)。没错,这时是可以嗅探的,但是管理员是使用目标机器的账号密码登陆本机,所以会造成“登陆不上”的现象,换句话说:就是,太明显了……说到这里,大家可能想起来了,这和单向Arp欺骗(没有转发时,即:非中间人)的情况是一样的,这种现象曾经在“嗅探、劫持3389端口、远程桌面、rdp协议的一些经验技巧总结”中写过:……省略……3、钓鱼攻击,使用Arp劫持,欺骗本机为目标机器,然后在本机安装本地密码记录软件,例如:WinlogonHack、WinPswLogger等工具(注意:这些工具都要修改,改成即使是错误密码也要记录,不然你什么都记录不到!),然后坐等管理员连接,得到密码后恢复Arp劫持。……省略……5.如果成功取得密码.停止端口转向.停止模拟.停止arp发送.等待网关刷新arp缓存.这时双方都不能登录.直到网关刷新.在这个漫长的等待中.ping目标IP-T抢在管理前上线.6.接下来就是拼人品.……省略……简单的概括一下,就是记录到账号密码后,停止攻击,然后等待网络恢复,此时双方都不能连接目标机器,然后当恢复时,抢在管理前登陆目标机器,然后拼人品……这里和单向Arp攻击也有很大的区别,如果单向Arp开启了转发,那就形成完整的数据回路(具体请参阅:ArpEMPv1.0发布&技术文档&详细分析hijackport+rdpproxy),目标机器不会感觉到异常。而IP冲突则无法转发,因为此时双方的IP和MAC都被改成了一样的,如果将数据发出去的话,会形成死循环,无法转发……关于防御方法,其实比较简单,使用带“拦截外部IP冲突”功能的防火墙即可(具体未实践,应该是有效的),例如“金山贝壳ARP防火墙v2.0”:

2017-1-19 3675 0