SQL入门
SQL入门基础结构primary key (主键) 橙色
foreign key (外键) 绿色
创建资料库CREATE DATABASE `sql_tutorial`; --创建资料库
SHOW DATABASES; --查看资料库
DROP DATABASE `sql_tutorial`; --删除资料库
创建表格-- 数据类型
INT --整数
DECIMAL(3,2) --有小数点的数 2.33
VARCHAR(10) --字串
BLOB --(Binary Large Object)图片 影片 档案...
DATE --'YYYY-MM-DD' 日期 2024-1-21
TIMESTAMP --'YYYY-MM-DD HH:MM:SS' 记录时间 2024-1-21 21:50:29
CREATE TABLE student( --创建表格
`student_id` INT PRIMARY KEY,
`name` VARCHAR(20) NOT NUL ...
加密通信
加密通信服务端:# 导入 socket 模块
import socket
# 定义异或加密函数,输入明文和密钥,返回加密后的密文
def xor_encrypt(plaintext, key):
# 将明文和密钥转换为二进制
plaintext = plaintext.encode()
key = key.encode()
# 创建一个空的字节数组,用于存储加密后的数据。
ciphertext = bytearray()
# 使用异或加密
for i in range(len(plaintext)):
byte = plaintext[i] ^ key[i % len(key)]
ciphertext.append(byte)
return bytes(ciphertext)
# 定义服务器的 IP 地址和端口号
ip = "10.22.223.121"
port = 25000
# 创建一个 TCP/IP 套接字并绑定到指定的端口号
serve = sock ...
永恒之蓝漏洞的利用
永恒之蓝漏洞的利用一、实验前准备 首先关闭win7的防火墙,开启445端口,并且攻击机(kali)和靶机(win7)可以互相ping通。
二、实验过程使用kali打开msfconsole,使用它先进行win7靶机的445端口扫描,检查其是否打开,然后我们搜索ms17-010模块。
这里我们可以得到一些模块,其中auxiliary/scanner/smb/smb_ms17_010 是永恒之蓝扫描模块, exploit/windows/smb/ms17_010_eternalblue 是永恒之蓝攻击模块。一般配合使用,前者先扫描,若显示有漏洞,再进行攻击。
这里我们可以看到靶机存在永恒之蓝漏洞,这里我们对其使用攻击模块
这里我们需要设置攻击机、靶机的地址和payload。
这里可以看到攻击成功了,出现 meterpreter 。
成功后我们用sysinfo来获取靶机当前浏览屏幕的照片。
这里我们可以看到获取到靶机的shell权限后我们看到的是乱码,这里我们用chcp 65001这个windows命令来转换编码格式,“65001”这里代表“UTF-8”这种编码方式。转换 ...
python初阶语法
python基础语法长文警告!!!本文适合初学py的小白阅读(根据需要进行跳转)。
输出函数print()#输出数字
print (98.5)
#输出字符串
print ("Hello, clovershrub")
print('hello,world')
#输出表达式
print(3+1)
#将数据输出文件中,注意点,1.所指定的盘存在,2.使用file=fp
fp=open('D:/text.txt','a+')#文件不存在就创建,存在就在文件内容后面继续追加
print('helloworld',file=fp)
fp.close()
#不进行换行输出(输出内容在一行当中)
print('hello','world','Python')
转义字符与原字符#转义字符
print('hello\nworld')#n--newline的首字符表示换行
print('hello\tworld')
print(' ...
动态内存分配
动态内存分配头文件#include <stdio.h
#include <stdlib.h
#include <string.h
#include <errno.h
#include <windows.h
mallocint main()
{
//像内存申请10个整形的空间
int* p =(int*)malloc(10*sizeof(int));//malloc不初始化为零
if(p==NULL)
{
//打印错误的一个方式
printf("%s\n",strerror(errno));
}
else
{
//正常使用空间
int i = 0;
for(i=0;i<10;i++)
{
*(p+i)=i;
}
for ...
指针进阶(C语言)
指针进阶头文件#include<stdio.h
#include<stdlib.h
#include<string.h
字符指针int main()
{
//字符指针
char arr1[]="abcdef";
char arr2[]="abcdef";
char* p1="abcdef";
char* p2="abcdef";
if (arr1==arr2)
{
printf("hehe\n");
}
else
{
printf("haha\n");
}
if (p1==p2)
{
printf("hehe\n");
}
else
{
...
结构体
结构体头文件#include<stdio.h
#include<stddef.h
声明结构体//声明一个学生类型,是想过学生类型来创建学生变量
//描述学生:属性-名字+电话+性别+年龄
struct Stu
{
char name[20];
char tele[12];
char sex[20];
int age;
}s4,s5,s6;
struct Stu s3;//全局变量
int main()
{
//创建的结构体变量
struct Stu s1;
struct Stu s2;
return 0;
}
匿名结构体类型struct
{
int a;
char c;
}sa;
struct
{
int a;
char c;
}*psa;
int main()
{
psa=&sa;//非法的
return 0;
}
...