草庐IT

day3:基于UDP模型的简单文件下载

思维导图tftp文件下载客户端实现#include#defineSER_PORT69#defineSER_IP"192.168.125.223"intlink_file(){ intsfd=socket(AF_INET,SOCK_DGRAM,0); if(sfd==-1) { perror("socketerror"); return-1; } returnsfd;}intfiledownload(){ //创建文件描述符用于下载传输过来的数据包 intwfd=-1; if((wfd=open("./copy_file",O_WRONLY|O_CREAT|O_TRUNC,0664))==-

02 传输层协议 TCP:TCP 为什么握手是 3 次、挥手是 4 次?

TCP和UDP是今天应用最广泛的传输层协议,拥有最核心的垄断地位。今天互联网的整个传输层,几乎都是基于这两个协议打造的。无论是应用开发、框架设计选型、做底层和优化,还是定位线上问题,只要碰到网络,就逃不开TCP协议相关的知识。在面试中TCP一直是一个高频考察内容,外加TCP关联的知识比较多,因此面试题五花八门。在介绍今天的主题之前,我先提一道高频面试题:TCP协议为什么握手是3次,挥手却是4次?下面请你带着这个问题,开启今天的学习。TCP协议要想把开篇这道面试题回答得漂亮,我们有必要先说一下概念,然后我再逐字给你解读。TCP(TransportControlProtocol)是一个传输层协议,

内网渗透 day15-empire(usestager用法、提权、持久化后门)

empire(usestager用法、提权、持久化后门)本章前提:已成功设置监听器(如何设置监听器请看day14篇)1.usestager的几种用法windows/launcher_sct:介绍:Regsvr32命令用于注册COM组件,是Windows系统提供的用来向系统注册控件或者卸载控件的命令,以命令行方式运行。WinXP及以上系统的regsvr32.exe在windows\system32文件夹下;2000系统的regsvr32.exe在winnt\system32文件夹下。用法:regsvr32[/u][/s][/n][/i[:cmdline]]dllname1)usestagerwi

Day67内网安全-域横向smb&wmi明文|哈希

这节课围绕着这两个协议来讲知识点一:Windows2012以上版本默认关闭wdigest,攻击者无法从内存中获取明文密码Windows2012以下版本如安装KB2871997补丁,同样也会导致无法获取明文密码在实战情况下就有可能获取不到明文密码(操作系统高关闭了wdigest,打上了补丁),针对这种方法,我们有四种方法解决这一类问题1,利用hash的传递攻击(pth,ptk等和利用)进行移动2,利用其他服务协议(SMB,WMI等)进行hash移动三四种方法是围绕怎么得到明文密码3,利⽤注册表操作开启WdigestAuth值进⾏获取;前提条件:权限允许#注册表操作开启WdigestAuth值re

研习代码 day42 | 动态规划——买卖股票的最佳时机 I II

一、买卖股票的最佳时机(只能买卖一次)        1.1题目        给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。        你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。        返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0 。示例1:输入:[7,1,5,3,6,4]输出:5解释:在第2天(股票价格=1)的时候买入,在第5天(股票价格=6)的时候卖出,最大利润=6-1=5。注意利润不能是7-1=6,因为卖出价格需要

Day 42 动态规划 4

K46.背包理论基础(二维背包)代码随想录1.思路背包问题的主要特征为,在有限制的情况下满足最优化,因此可以构造二维dp数组,一个维度记录成本,一个维度记录收益,一步步寻找最优解。(1)dp数组以及下标含义dp[i][j]代表0-i的物品,在j的背包容量下,可以形成的最大价值。注意,这里i为序数,第一个第二个物品这样,而j为基数,也就是对应着成本的单位,比如kg。因此,如果有3个物品,成本分别为1、3、5kg,则i取0-2,j取0-5。(2)确定递推公式每次更新都有两个可选择的方式,一种是放入这个物品,一种是不放入。如果放入,则放入前背包中的物品个数位i-1,最大容量为j-weight[i],

【JAVA-Day03】JDK安装与IntelliJ IDEA安装、配置环境变量

JDK安装与IntelliJIDEA安装、配置环境变量一、JDK版本介绍1.1JDK版本选择JDK8JDK11JDK16JDK171.2JDK下载1.3JDK安装1.4配置环境变量1.5验证JDK安装二、开发利器——IntelliJIDEA的安装2.1IntelliJIDEA下载2.2IntelliJIDEA安装2.3IntelliJIDEA启动2.4新建Java项目三、总结博主默语带您GotoNewWorld.✍个人主页——默语的博客👦🏻《java面试题大全》🍩惟余辈才疏学浅,临摹之作或有不妥之处,还请读者海涵指正。☕🍭《MYSQL从入门到精通》数据库是开发者必会基础之一~🪁吾期望此文有资助

Day 44 动态规划 6

K52.完全背包代码随想录 1.思路(1)dp数组定义以及更新模式完全背包和01背包的区别可以从展开的二维背包中看出来:01背包:dp[i][j]=max(dp[i-1][j],dp[i-1][j-weights[i-1]]+values[i-1])完全背包:dp[i][j]=max(dp[i-1][j],dp[i][j-weights[i-1]]+values[i-1])区别就在i-1上。在保持原状不变的情况下,结论是一样的。但是,在放入第i-1个物品的情况下,如果是01背包,则这个物品是唯一的,所以要退回i-1这一行,寻找最优。但在完全背包的情况下,由于这个物品并非唯一,所以要在第i行寻找

【教学类-44-02】20231226阿拉伯数字字帖的字体(二)——文鼎标楷国字体 AR StdKaiGDLB5 Md(虚线字体)

作品展示:虚线数字(文鼎标楷国字体ARStdKaiGDLB5Md)背景需求:数字描字帖上的,第一个数字是样例实线,后面的描字就会用虚线。如何实现数字的虚线?二、“田字格数字帖”   文鼎标楷虚线国字(显示名字是ARStdKaiGDLB5Md)是是一款免费中文字体下载。文鼎标楷虚线国字是一款手写化的标准楷书字体(繁体字),字体提取自文鼎最新产品“注音小博士3”(Big5编码),线条做了重绘,十分细腻,除了摹字外亦可用于各种装饰。下载位置(每个电脑不同)安装位置黏贴进去文件名字不是“文鼎……”,而是AR开头的英文字体所以代码里的字体要改成“ARStdKaiGDLB5Md”=文鼎除了4,还有1、2、

<云计算>Linux入门--> day1

当我们虚拟机和shell安装后我们就可以来学习Linux的基本操作了!首先学习Linux就必须了解虚拟机在shell的登录方法.在虚拟机输入ipa这个命令,找到ip地址 接着打开shell输入sshroot@ip地址进入之后我们会看到一个这样的界面我们要了解[root@localhost~]#的意思[root@localhost~]#用户root  主机名localhost当前用户家目录~管理员用户#用户名@做分隔符主机名当前所在位置]权限符号权限符号有两种管理员#与普通用户$创建一个普通用户useradd 用户名称登录这个用户  su用户名称当看到这个界面就说明到达了普通用户界面管理员和普通