自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 缓冲区溢出攻击

缓冲区溢出(buffer-overflow)是一种非常普遍、同时非常危险的漏洞,在各种操作系统、应用软件中广泛存在。缓冲区溢出攻击是利用缓冲区溢出漏洞所进行的攻击,轻则可以导致程序失败、系统关机等,重则可以利用它执行非授权指令,甚至获取系统特权,从而进行其它的非法操作。缓冲区攻击有栈溢出、堆溢出、格式化字符串漏洞、整形变量溢出等。本文将主要介绍堆栈溢出攻击,并实现对一个ubuntu 16.04系统的简单的栈攻击,获取其root权限。实验平台操作系统:SEED Ubuntu16.04 VM (32-bit

2021-02-06 20:32:48 4313 2

原创 DRF序列化和反序列化

声明序列化器先声明对象from datetime import datetimeclass Comment(object): def __init__(self, email, content, created=None): self.email = email self.content = content self.created = created or datetime.now()comment = Comment(email='le

2020-12-06 11:37:26 168

原创 Django rest framework创建新用户,并登录

目的:创建新用户,创建成功后让新用户登录视图类通过Ctrl+B查看CreateAPIView的源码,可以看到该类继承于CreateModelMixin和GenericAPIView在CreateAPIView里就只有一个post,里面调用了CreateModelMixin的create用于创建模型实例,于是我们可以自定义perform_create,让模型实例创建好后,登录# 成功创建用户后,让新用户登录class UserRegister(generics.CreateAPIView):

2020-12-05 09:43:24 559

原创 c语言指针偏移量的单位

有下面一段代码#include<iostream> using namespace std;int main(){ int list[5]; int* p1=&list[4]; cout<<p1-list<<endl;}输出是4,而不是4*sizeof(int)(偏移量),说明2个同类型的指针相减,结果的单位不是byte,而是该类型的大小...

2020-06-17 09:17:32 429

转载 关于句柄handle

句柄就是个数字,一般和当前系统下的整数的位数一样,比如32bit系统下就是4个字节。这个数字是一个对象的唯一标示,和对象一一对应。这个对象可以是一个块内存,一个资源,或者一个服务的context(如 socket,thread)等等。这个数字的来源可以有很多中,只要能保证和它代表的对象保持唯一对应就可以,比如可以用内存地址,也可以用句柄表的序号,或者干脆用一个自增ID,再或者用以上的值去异或一个常...

2020-04-30 23:02:36 170

原创 关于TCP与UDP的接收recv和recvfrom

1.UDP发包的问题问:udp 发送两次数据,第一次 100字节 ,第二次200字节, 接包方一次recvfrom( 1000 ), 收到是 100,还是200,还是300?答:UDP是数据报文协议,是以数据包方式,所以每次可以接收100,200,在理想情况下,第一次是无论recvfrom多少都是接收到100。当然,可能由于网络原因,第二个包先到的话,有可能是200了。对可能会由于网络原因乱序...

2020-04-30 16:19:44 1254

原创 关于org指令的一些理解

ORG是Origin的缩写:起始地址,源。在汇编语言源程序的开始通常都用一条ORG伪指令来实现规定程序的起始地址在编写引导程序是,在程序的开通通常有org 0x7c00作用是改变标号的位置(不是真正的地址,只是加上了一个偏移量),比如org 0x7c00mov ax,msgmsg: db "hello,world"mov ax,msgmsg: db "hello,wor...

2020-04-29 15:03:58 4685

原创 判断一个点是否在三角形的外接圆上

主要有两种方法先求出三角形的外接圆的圆心的坐标,然后判断该点到圆心的距离设三角形为ABC,判断D点是否在ABC的外接圆内,假设设点C和点D在AB同侧,则比较∠ADC和∠ACB的大小就可以判断点C是在圆上、圆内、圆外了...

2020-04-27 20:12:54 1433

原创 一种二维数组的引用方法

一种二维数组的引用方法#include<iostream>using namespace std;void f(int* a){ cout<<a[3]<<endl;}int main(){ int a[2][2]; fill(a[0],a[1]+4,1); f(a[0]);}说明c或c++里,二维数组本质上以一维数组的形式储存。但是二...

2020-04-27 19:39:03 570

转载 进度条实现

c/c++ #include<iostream> #include<Windows.h> int main() { HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE); CONSOLE_CURSOR_INFO CursorInfo; GetConsoleCursorInfo(handle, &am...

2020-04-20 15:58:39 97

原创 判断n是否为2的次幂

n&(n-1)==0把n写成二进制数就很容易证明出来了。

2020-04-01 09:47:16 112

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除