首页 > 其他分享 >实训第三天

实训第三天

时间:2023-04-21 20:55:28浏览次数:37  
标签:攻击 IP 第三天 192.168 传输层 实训 攻击者 ICMP

实训第二天 网络层——传输层

网络层

基础知识(补充)

IP分片 实际过程中,要减少IP分片 传输层1460+网络层20+数据链路层20 总共 1500字节

IP头部字段:每32bit一行,第一行:版本 1100 / 1000 首部长度4bit,服务类型4bit,总长度16bit
第二行:标识 16bit 标志 3bit 片偏移 13bit
第三行:生成时间(TTL) 8bit 协议 8bit 首部检验和 16bit
源IP地址: 32bit
目标iP地址 : 32bit
1682073944376

ip配套协议: ARP(还有代理ARP和RARP协议) 和 ICMP(ping 主机存活探测)

arp报文:解析ip和mac地址的对应关系,映射关系会在一定时间后映射超时删除,然后重新询问。不询问,直接接收到响应也会更新自己的MAC地址表。
arp -a

icmp报文: 0-7 Type 7-15 Code 15-31 Checksum
icmp和arp都是请求和回应

网络层安全

smurf攻击:攻击者向受害者的局域网内持续大量的发送ICMP报文,目标地址为广播域。局域网下的所有主机都会相互回应,流量放大。造成DOS攻击

防御:禁止路由器,交换机转发来自外部网络的广播流量。等等

ICMP重定向:攻击者向目标发送伪造的ICMP重定向报文,目标接收到之后会更新自己的路由表,指向新的路由器(攻击者自身),然后实行信息窃取

IP Header: 
Source IP: 192.168.1.5   # 攻击者IP
Destination IP: 192.168.1.1 # 受害主机IP

ICMP Header:
Type: 5 (Redirect Message)
Code: 1 (Redirect for network) 
Checksum: 0x1234  
Gateway IP Address: 192.168.1.5 # 攻击者指定的新"默认路由器"

Original IP Header:
Source IP: 192.168.1.1  # 受害主机IP 
Destination IP: 10.0.0.1   

ICMP不可达攻击:攻击者伪造ICMP报文,声称某一主机或网络现在已经不可达。接收者会将此主机或网络在其路由表中标记为不可达,进而停止访问。

IP Header:
Source IP: 192.168.1.5   # 攻击者IP
Destination IP: 192.168.1.1 # 路由器IP

ICMP Header: 
Type: 3 (Destination Unreachable Message)
Code: 0 (Net Unreachable)
Checksum: 0x1234

Original IP Header:
Source IP: 10.0.0.1
Destination IP: 192.168.2.1 

IP欺骗攻击

ARP攻击实验

环境搭建

win7 NAT模式 192.168.80.137

kali NAT模式 192.168.80.136

网关 192.168.80.2

设置kali开启路由转发
echo 1 > /proc/sys/net/ipv4/ip_forward

实验过程

nmap探测局域网存活主机

arpspoof -i eth0 -t 192.168.80.136 192.168.80.2 -r

1682051780798

查看win7 arp -a

1682051806814

可以看到,网关的物理地址已经和kali物理地址一样了。

但是试了好多次,图像都出不来........

1682052864539

防御

使用静态ARP表,将网关地址与ip地址绑定。
使用ARP防火墙

传输层

学校的计算机网络课程正好讲玩 传输层 所以传输层和应用层的知识点 都很熟,笔记可能会粗略

基础知识

端口: 通过tcp/udp发送syn或其它的报文到主机的某个端口,看其是否响应来判断端口是否打开

tcp报文格式

1682079750156

udp报文格式更简单

1682079771464

tcp的 三次握手和四次挥手
三次握手 syn=1 syn=1 ack=1 ack=1
四次挥手 C:fin=1 ack=1 S:ack=1 S: fin=1 ack=1 C:ack=1
fin 和 cin 都是控制位里面的标识符

分段和重组

传输层安全

TCP拒绝服务 SYN洪水攻击

UDP拒绝服务

SYN半开连接攻击:攻击者伪造虚假的源ip向目标发送syn包,建立连接,由于是虚假的ip地址,第二次握手的包到达不了,会等待超时然后删除
防御:缩短SYN等待队列超时时间与清空周期,加快释放半开连接的速度,降低占用资源的数量。

DOS攻击,DDOS攻击,CC攻击,都是那么一回事

SYN洪水攻击

环境

kali 192.168.100.128
win7 192.168.100.129

攻击过程

kali运行

hping3 -q -n -a 192.168.100.128 -S -s 80 --keep -p 445 --flood 192.168.100.129

1682066514137

标签:攻击,IP,第三天,192.168,传输层,实训,攻击者,ICMP
From: https://www.cnblogs.com/An0ma1/p/17341773.html

相关文章

  • 校企合作 | 成都工业职业技术学院人工智能实训专场会顺利召开
    近期,人工智能产业应用研究院收到合作已久的成都工业职业技术学院的邀请,在学院的积极组织下,近三百名大数据、工业互联网、云计算相关专业的同学报名参加研究院组织召开的人工智能实训专场会,昨天同学们学习人工智能基础知识及数据标注技能,并通过数据标注实训指导完进行实训。实训目标......
  • 实训第二天
    协议安全实战(物理层——网络层)本博客不是按照知识点顺序进行总结的,而是按照本人不熟悉的知识点来总结的,参考可以,用来系统学习可能不全面物理层基础知识点四个特性:机械特性、电气特性、功能特性、规程特性数据的编码方式:曼切斯特编码、差分曼切斯特编码传输介质:同轴电缆、......
  • 第三天打卡
    一、问题描述中国有句俗语叫“三天打鱼两天晒网”。某人从1990年1月1日起开始“三天打鱼两天晒网”,问这个人在以后的某一天中是”打鱼“还是”晒网"。二、设计思路1.根据题意,需要对于闰年的判断,计算今天距离指定日期的天数,需要运用函数实现;2.定义一个结构体用来输入今天的......
  • 第三天打卡
    #include<iostream>usingnamespacestd;intmain(){intyear,mouth,day,x=0,i;inta[12]={31,28,31,30,31,30,31,31,30,31,30,31};scanf("%d%d%d",&year,&mouth,&day);if(year-1990<=2)x=(year-1990)*365+day;......
  • 打卡第三天
    一、问题描述: 从键盘上输入4个整数,输出其中的最小值二、设计思路:从键盘上输入四个整数,然后找到其中的最小值,并将其输出。具体实现的方法是,先定义四个整数变量a、b、c、d,然后使用cin语句从键盘上依次读入这四个整数。接下来,我们可以用if语句来比较这些数,并找到其中的最小值,将其赋......
  • c/c++零基础坐牢第三天
    c/c++从入门到入土(3)开始时间2023-04-17 19:07:20结束时间2023-04-17 20:53:40前言:经过三天的算法训练,大家肯定对后面的编程知识产生浓厚的兴趣,有了前两章的知识铺垫,我们今天来学习一下如何从键盘输入和屏幕输出!以下是自制思维导图参考于苏小红C语言程序设计(第四版): 作业三......
  • 团队冲刺第三天
    今天我计划用两个小时时间完成今日任务,结果因为一些问题弄了一天也没有成功。       今日完成:下载kotlin组件       明日目标:能成功引入kotlin组件并实现人脸识别       遇到问题(已解决或未解决):人脸开发要用到kotlin这门语言,但今天我......
  • 实训课程模块和系统设置模块
    实训课程模块和系统设置模块(2023-04-10)考虑到实验中心会有老师组织实训活动比如:ACM集训、蓝桥杯集训、数学建模集训等非教务系统导出的课程,需要实现实训课程模块,主要包括实训课程列表展示模块(类似于实验课和上机课展示模块)、实训课程添加模块、实训课程修改模块、实训课程删除模......
  • 学习MySQL数据库的第三天(DDL修改表操作 删除表操作)
    DDL修改表(增加字段、删除字段、修改字段、修改表名)添加字段ALTERTABLE表名ADD字段名类型(长度);修改字段ALTERTABLE表名旧字段名新字段名类型(长度)[comment注释];删除字段ALTERTABLEDORP字段名;修改表名ALTERTABLE表名RENAMETO新表名;DDL删除表操作删除......
  • 第三天练习(部分)
    //student.h#pragma once#include<string>#include<iostream>using namespace std;class student{public:student(void);~student(void);void setValues(int n,stringstr,char c);void display();protected:int num;stringname;char sex;};//st......