最新发布第2页
深拷贝与浅拷贝-能不能吃完饭再说

深拷贝与浅拷贝

概念浅拷贝(shallow copy)浅拷贝(Shallow Copy)是一种对对象进行复制的方式,它简单地将源对象的所有成员变量的值复制给目标对象。在浅拷贝中,如果对象中存在指针成员变量,那么只会复制指...
Andromeda的头像-能不能吃完饭再说Andromeda1年前
011328
SeedLab——Packet Sniffing and Spoofing Lab-能不能吃完饭再说
SeedLab——SQL Injection Attack Lab-能不能吃完饭再说

SeedLab——SQL Injection Attack Lab

Lab Environment Setup 在Linux下的/etc/hosts种添加下面的映射 10.9.0.5 www.seed-server.com 进入Labsetup根目录,运行dcbuild构建容器,dcup启动容器 dcbuild # alias for docker-compose bu...
SeedLab——Cross-Site Scripting (XSS) Attack Lab-能不能吃完饭再说

SeedLab——Cross-Site Scripting (XSS) Attack Lab

Lab Environment SetupDNS Setup在/etc/hosts文件中,添加域名和IP地址的映射# For XSS Lab 10.9.0.5 www.seed-server.com 10.9.0.5 www.example32a.com 10.9.0.5 www.example32b.com 10.9.0.5 ...
leetcode刷题记录——2023年11月-能不能吃完饭再说

leetcode刷题记录——2023年11月

421、数组中两个数的最大异或值——哈希表、位运算、前缀暴力方法最简单的一集毫无疑问的超时😓时间复杂度O(n²)class Solution { public: int findMaximumXOR(vector<int>& nums) { ...
SeedLab——Environment Variable and Set-UID Program Lab-能不能吃完饭再说

SeedLab——Environment Variable and Set-UID Program Lab

本实验的学习目标是让学生了解环境变量如何影响程序以及系统行为。环境变量是一组动态命名值,可以影响正在运行的进程将在计算机上运行。大多数操作系统都使用它们,因为它们是1979年引入Unix。...
LeetCode 热题 100-能不能吃完饭再说

LeetCode 热题 100

49、字母异位词分组——哈希表、排序将异位词进行排序后可以得到相同字符串。遍历字符串数组,对每个字符串排序之后存入哈希表,最后将哈希表转化成数组即可。class Solution { public: vector&...
SeedLab——Shellcode Development Lab-能不能吃完饭再说

SeedLab——Shellcode Development Lab

Task-1 Writing ShellcodeA: The Entire Process下面这段代码使用汇编语言编写实现一个Linux系统调用程序,用于执行/bin/sh命令。section .text ; 定义代码段开始 global _start ; 声明_start标...
万字长文解读经典并发模型—多进程、多线程、IO多路复用-能不能吃完饭再说

万字长文解读经典并发模型—多进程、多线程、IO多路复用

理解并发如果给CPU一系列任务,CPU按照事件顺序逐一完成这些任务,在这种情况下后续任务必须等待前面的任务完全完成之后才能占用CPU资源,对于简单的任务,计算机使用这种模型就足够了。但是为...
SSL/TLS协议解析-能不能吃完饭再说

SSL/TLS协议解析

SSL/TLS协议是什么? SSL/TLS概述 SSL/TLS协议(Security Socket Layer Protocol/Transport Layer Security Protocol,安全套接层协议/传输层安全协议)是网景公司在1994年提出的一种基于Web应用...
经典进程同步问题-能不能吃完饭再说

经典进程同步问题

进程同步 临界区 对共享资源进行访问的那段代码称为临界区,当有其他进程在这段代码中运行时,其他进程就不能在这段代码中执行。 为了互斥访问临界资源,每个进程在进入临界区之前,需要先进行...
STL 常用容器-能不能吃完饭再说

STL 常用容器

vector:动态数组向量(vector):向量是一个可变大小的数组,支持快速的随机访问和在末尾进行元素的插入和删除。适用于需要高效的随机访问和动态调整大小的情况,例如存储大量元素且需要频繁地...
SeedLab——Buffer Overflow Attack-能不能吃完饭再说

SeedLab——Buffer Overflow Attack

Lab4——Buffer Overflow AttackEnvironment Setup1、禁用地址空间布局随机化(ASLR)。ASLR是一种安全功能,它随机化进程使用的内存地址,增加攻击者利用内存漏洞的难度。在大多数现代Linux发...
SeedLab——MD5 collision-能不能吃完饭再说

SeedLab——MD5 collision

task 1# Task生成两个不同的文件,但是这两个文件具有相同的md5哈希值。也就是最简单的哈希碰撞。md5collgen的原理如下图所示。其接受一个相同的前缀内容prefix,并为其生成两个填充与P和Q,P与...
leetcode刷题记录——2023年10月-能不能吃完饭再说

leetcode刷题记录——2023年10月

2、两数相加注意的点:同位相加大于10的情况注意进位可能是极大的数字,转成整数直接相加不可行class Solution { public: ListNode *addTwoNumbers(ListNode *l1, ListNode *l2) { ListNode *re...
智能指针详解-能不能吃完饭再说

智能指针详解

为什么引入智能指针?内存泄漏问题C++在堆上申请内存后,需要手动对内存进行释放。随着代码日趋复杂和协作者的增多,很难保证内存都被正确释放,因此很容易导致内存泄漏。在上述代码中,Functio...
Andromeda的头像-能不能吃完饭再说Andromeda1年前
014122
cpp的union使用-能不能吃完饭再说

cpp的union使用

union介绍 看一下下面的代码运行结果 #include <iostream> using namespace std; union u { char c; int n; }; int main() { cout << sizeof(u) << endl; return 0; } 运行结...
Andromeda的头像-能不能吃完饭再说Andromeda1年前
010722
nmap使用-能不能吃完饭再说

nmap使用

主机发现nmap主机发现的原理与ping类似,发送探测包到目标主机,如果收到回复,则说明目标主机是开启的。主机发现常用参数如下所示参数说明-snping扫描,只进行主机发现,不进行端口扫描-PE/PP/...
程序机械级表示——数据格式与访问信息-能不能吃完饭再说

程序机械级表示——数据格式与访问信息

数据格式 8位称为字节(byte),16位称为字(word),32位为双字(double words),64位为四字(quad words) C语言基本数据类型对应的x86-64表示如下 C声明 Intel数据类型 汇编代码后缀 大小(...
preg_replace函数/e漏洞-能不能吃完饭再说

preg_replace函数/e漏洞

preg_replace 函数执行一个正则表达式的搜索和替换,语法如下: mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] ) pat...
CTFHUB web基础——SSRF-能不能吃完饭再说

CTFHUB web基础——SSRF

数字IP bypass数字IP是指将IP地址中的每个数字都转换为一个十进制数的形式,例如将192.168.0.1转换为十进制数 3232235521。IP地址是用于标识网络上设备的唯一地址,它由32位二进制数表示,通常...
Andromeda的头像-能不能吃完饭再说Andromeda1年前
017720
upload-labs大闯关-能不能吃完饭再说

upload-labs大闯关

pass-1解题思路:这里对上传的文件扩展名进行验证,但是只在前端验证,服务端没有进行验证,因此伪造扩展名抓包然后再burp suite中修改扩展名即可绕过前端验证。还可以通过直接F12删除这段JavaS...
Nachos文件系统调用与shell-能不能吃完饭再说

Nachos文件系统调用与shell

文件系统调用Nachos 实现了两套文件系统,一套是FILESYS_STUB,它是建立在 UNIX 文件系统之上的,而不使用 Nachos 的模拟磁盘,在Makefile文件大概194行使用了该宏定义开关;另一套则是Nachos本...
计算机通信与网络学习笔记-chapter4、5-能不能吃完饭再说

计算机通信与网络学习笔记-chapter4、5

第四、五章网络层知识点ipv4为32位,ipv6为128位有限广播地址:有限广播地址也称为本地广播地址,TCP/IP协议规定32位全为1的IP地址(255.255.255.255)用于本网广播直接广播地址:当广播地址包...
Nachos内存管理-能不能吃完饭再说

Nachos内存管理

用户程序的执行流程在main.cc中,当我们选择-x选项时,这段代码将-x之后的参数设置为userProgName,即我们需要执行的用户程序。else if (strcmp(argv[i], '-x') == 0) { ASSERT(i + 1 < argc...
Nachos进程管理-能不能吃完饭再说

Nachos进程管理

Nachos用线程模拟操作系统的进程,因此本文中的线程与进程在Nachos意思一致 关键函数 进程状态相关 Fork()函数创建新进程,它将一个函数作为参数传入,然后为其分配栈空间。调用scheduler->R...
系统调用详解:以Nachos为例实现系统调用-能不能吃完饭再说

系统调用详解:以Nachos为例实现系统调用

四川大学操作系统实验Nachos实现系统调用
PHP安全核心配置-能不能吃完饭再说

PHP安全核心配置

PHP配置文件指令多达数百项,为了节省篇幅,这里不对每个指令进行说明,只列出会影响PHP脚本安全的配置列表以及核心配置选项。详细参阅官方文档,关于php.ini的配置选项列表。allow_url_include...
Andromeda的头像-能不能吃完饭再说Andromeda1年前
017321
JDBC注册驱动报错-能不能吃完饭再说

JDBC注册驱动报错

在使用下面代码注册JDBC驱动时报错。 DriverManager.registerDriver(new Driver()); Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc...
Andromeda的头像-能不能吃完饭再说Andromeda1年前
019323
JDBC常用接口-能不能吃完饭再说

JDBC常用接口

Driver 所有JDBC驱动程序必须实现的接口,该接口专门提供给数据库厂商使用。在编写JDBC程序时,必须要把所使用的数据库驱动程序或者类库加载到项目的classpath中。 static final String JDBC_DR...
Andromeda的头像-能不能吃完饭再说Andromeda1年前
018118
计算机通信与网络学习笔记-chapter3-能不能吃完饭再说

计算机通信与网络学习笔记-chapter3

第三章 传输层仅个人学习总结,不具有普适性与正确性知识点TCP不提供Delay guarantees 和 bandwidth guarantees服务TCP提供可靠数据传输、流量控制、拥塞控制、有序传输服务UDP仅提供差错检验和...
servlet高级-Filter过滤器-能不能吃完饭再说

servlet高级-Filter过滤器

可以对调用servlet容器的过程进行拦截,用于在servlet进行响应前后进行实现一些特殊功能。实例servlet程序import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet...
Andromeda的头像-能不能吃完饭再说Andromeda1年前
016027