- 博客(36)
- 收藏
- 关注
原创 AWD攻防学习总结(草稿状态,待陆续补充)
CTF——9款网站目录扫描工具推荐——附下载链接与相关字典:https://blog.csdn.net/weixin_51735061/article/details/124236800。漏洞工具合集:https://github.com/Mr-xn/Penetration_Testing_POC。下载地址:https://gitee.com/duran3000/awd-tools。Web日志安全分析工具v2.0.rar apache日志分析工具。seay扫描速度快,但是扫描深度小且只支持PHP。
2023-08-09 00:13:24 645
原创 Kali中AWD靶机环境搭建
详见:https://blog.csdn.net/aodechudawei/article/details/122450720?参照:https://blog.csdn.net/weixin_34211761/article/details/92983952。修改方法参见:https://www.cnblogs.com/Triangle-security/p/11332223.html。https://pan.baidu.com/s/18KlIeluaTtm-kT3KuXHseQ 密码:cvdn。
2023-08-06 19:06:10 1469
原创 CTF-MISC:BUUCTF练习汇总(26-40题)
.-. ----. …- ----. -.-. -…----- .---- —…----- ----. …— ----. .---- ----. .---- -.-.4)key_part_one中NUL文件包含了前半段flag,key_part_two中where_is_flag_part_two.txt:flag_part_two_is_here.txt文件包含了后半段flag。binwalk+foremost分离得到zip压缩包,解压后得到的文件里存在flag.txt,打开即可获取到flag。
2023-08-03 00:57:06 1281
原创 CTF-MISC:BUUCTF练习汇总(1-25题,不包括签到题)
解题思路:该题比较基础,wireshark打开过滤HTTP流量包,追踪HTTP流后可以看到base64密文,解密后得到jpg图片,打开图片即可看到flag,在线OCR识别即可提取出flag值。解题思路:zip压缩包解压需要密码,图片中的盲文为解压的密码,解压后得到MP3音频文件,内容为典型的摩斯密码;解题思路:由题目可以为LSB隐写,使用StegSolve打开图片查看最低有效位得到PNG信息,另存为图片后发现是二维码,扫描后即可得到flag。对应摩斯电码为:-.-. - …-. .-- .–. . …
2023-07-30 19:07:52 2454
原创 SQLi-LABS 1-22关(Basic Challenges) 手动注入--(缓慢更新中 12/22)
首先判断注入类型,分别使用?时间注入是利用sleep()或benchmark()等函数让MySQL的执行时间变长,时间盲注多与if(expr1,expr2,expr3)结合使用,此if语句意思为:如果expr1是TRUE,则if()的返回值是expr2;进入到MySQL所在目录,我这里是D:\software\phpstudy_pro\Extensions\MySQL5.7.26\bin,目录栏直接输入cmd调出cmd终端,输入mysql -u root -p ,然后输入密码即可成功登陆数据库。
2022-11-18 22:40:35 3383
原创 MySQL基础入门学习笔记(二)
MySQL基础入门学习笔记(二)1、SQL、DB、DBMS分别是什么,它们之间的关系18、创建表:19、insert语句插入数据20、表的复制21、将查询结果插入到一张表中22、update修改数据23、delete删除数据24、约束:非空约束(not null)、唯一性约束(unique)、主键约束(primary key)、外键约束(foreign key)25、存储引擎(了解)26、事务的概念、事务的特性和事务的隔离级别27、索引:概念、作用、索引对象的创建和删除、索引的实现原理1、SQL、DB、D
2022-03-23 23:03:22 1122
原创 MySQL基础入门学习笔记(一)
MySQL基础入门学习笔记1、SQL、DB、DBMS分别是什么,它们之间的关系2、什么是表?3、SQL语句的分类4、查看“演示数据”的表结构5、常用命令6、简单的查询 关键字:select7、条件查询 关键字:where8、排序数据 关键字:order by9、分组函数/聚合函数/多行处理函数10、单行处理函数11、分组查询 group by 和 having12、总结一个完整的DQL语句以及执行顺序13、查询结果集的去重:distinct14、连接查询:内连接和外连接1、SQL、DB、DBMS分
2022-03-22 00:41:29 1123
原创 【动力节点 Java进阶学习笔记】第九章 注解
【动力节点 Java进阶学习笔记】第九章 注解1、什么是注解、注解的作用,以及如何自定义注解和使用注解2、内置注解:Deprecated和Override3、元注解:Target和Retention4、注解中定义属性:怎么定义、默认值、value省略属性名、属性支持的类型、数组属性5、反射注解6、反射在开发中的作用示例1、什么是注解、注解的作用,以及如何自定义注解和使用注解注解的定义: 注解其实就是代码中的特殊标记,这
2022-03-13 22:07:04 653
原创 【动力节点 Java进阶学习笔记】第八章 反射机制
【动力节点 Java进阶学习笔记】第八章 反射机制1、什么是反射机制、反射机制的作用和相关的类2、获取Class的三种方式、通过获取的Class实例化对象、获取文件的绝对路径3、类加载器的概念、分类以及双亲委派机制4、通过反射机制反射属性、如何读取和修改属性值5、通过反射机制反射方法、如何调用对象的某个方法6、通过反射机制反射构造方法、如何调用构造方法实例化对象7、通过反射机制获取父类以及父类型接口1、什么是反射机制、反射机制的作用和相关的类反射机制:可以操作字节码文件作用:可以让程序更加灵活。相
2022-03-13 15:48:19 3971
原创 【动力节点 Java进阶学习笔记】第七章 多线程
【动力节点 Java进阶学习笔记】第七章 多线程1、进程和线程的基本概念、区别以及多进程和多线程的作用2、创建线程的两种方式、启动线程的方法、run()和start()的区别3、线程的生命周期4、线程中常用的方法以及线程休眠、唤醒、终止的方法5、线程的调度:线程调度模型、与线程调度有关系的方法6、多线程安全:存在线程安全问题的三个条件、线程同步机制及语法、以及开发中解决线程安全问题的方法7、守护线程的概念和设置守护线程的方法、定时器的概念和使用7.1 守护线程7.2 定时器8、实现线程的第三种方式:实现Ca
2022-02-19 22:49:42 374
原创 【动力节点 Java进阶学习笔记】第六章 IO流
【动力节点 Java进阶学习笔记】第六章 IO流IO流和FIle类总结1、IO流总结2、File类中方法总结IO流和FIle类学习笔记1、Java流概述和IO流的分类2、FileInputStream的使用:按字节和byte数组两种方式读取文件内容3、FileOutputStream的使用:覆盖方式和追加方式写入数组中内容4、FileReader的使用5、FileWriter的使用6、缓冲流BufferedReader和BufferedWriter的使用以及转换流的使用、节点流和包装流7、数据流DataOu
2022-02-12 23:07:56 380
原创 【动力节点 Java进阶学习笔记】第五章 集合
【动力节点 Java进阶学习笔记】第五章 集合集合概述1、集合概述和集合继承结构图Collection部分2、Collection接口常用方法、迭代器Iterator、使用迭代器遍历集合元素3、List接口中常用方法、ArrayList和LinkedList、数组和链表的特点4、泛型的优缺点和使用、for each的使用5、HashSet和TreeSet集合存储元素特点Map部分6、Map接口中常用方法和Map集合的遍历7、HashMap:哈希表数据结构和方法map.put(k,v)、map.get(k)的
2022-01-15 23:14:10 433
原创 【动力节点 Java进阶学习笔记】第四章 异常处理
【动力节点 Java进阶学习笔记】第四章 异常处理1、异常的基本概念:什么是异常、异常的作用、异常的存在形式2、异常的继承结构和分类3、编译时异常和运行时异常的定义和区别4、异常的捕获和处理5、异常对象两个非常重要的方法:getMessage()和printStackTrace()6、finally语句的特性和使用7、final finally finalize有什么区别?8、如何自定义异常和使用1、异常的基本概念:什么是异常、异常的作用、异常的存在形式 &
2022-01-11 21:50:40 245
原创 【动力节点 Java进阶学习笔记】第三章 常用类
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar
2022-01-09 19:10:26 346
原创 Java常用类--String类
关于Java JDK中内置的一个类:java.lang.StringString类的知识点汇总1、String表示字符串类型,属于引用数据类型,不属于基本数据类型。2、在java中随便使用双引号括起来的都是String对象。例如:“abc”,“def”,“hello world!”,这是3个String对象。3、java中规定,双引号括起来的字符串,是不可变的,也就是说"abc"自出生到最终死亡,不可变,不能变成"abcd",也不能变成"ab"4、在JDK当中双引号括起来的字符串,例如:“abc”
2021-12-27 21:56:52 324
原创 Java学习--二分查找
二分查找的java实现二分查找简介如何选择使用线性查找还是二分查找代码实现二分查找简介二分查找也是在数组中查找数据的算法,但要求数据已经排好序利用已排序好的数组,每一次查找都可以将查找范围减半,查找范围只剩一个数字时查找结束二分查找时间复杂度为O(logn)如何选择使用线性查找还是二分查找二分查找建立在数据已经排好序的基础上才能使用,因此添加数据时必须加到合适的位置,这就需要额外耗费维护数组的时间线性查找则对数据排序没有要求,添加数据时直接加在末尾即可,不需要耗费时间具体使用哪种查找方法,取
2021-12-27 20:59:22 189
原创 Java学习--选择排序
选择排序的java实现选择排序简介代码实现选择排序简介选择排序就是重复“从待排序的数字中寻找最小值,并将其与序列最左边的数字进行交换”这一操作的算法使用线性查找在序列中寻找最小值时间复杂度O(n^2)第1轮需要比较n-1个数字,第2轮需要比较n-2个数字…第n-1轮需要比较1个数字,总次数与冒泡排序相同,为(n-1)n/2每轮中交换数字次数最多为1次,即最多总共交换n-1次代码实现package com.javalearn.javase.review;import java.util.A
2021-12-27 20:52:41 137
原创 Java学习--冒泡排序
冒泡排序的java实现冒泡排序简介算法步骤时间复杂度:O(n^2)思路及代码实现数组遍历元素的三种方式冒泡排序简介冒泡排序就是重复”从序列左边开始比较相邻两个数字的大小,再根据结果交换两个数字的位置“这一操作的算法。数字会像泡泡一样,慢慢从左往右浮到序列的顶端。算法步骤1、从序列最左边放置一个天平,比较天平两边数字的大小,如果左边数字较大,就交换两边数字的位置;2、天平往右移动一个位置,继续比较两边数字的大小,重复同样的操作直到天平到达序列最右边;3、将天平移回最左边,重复同样的操作直到所有数
2021-12-26 18:45:23 376
原创 Java基础部分知识点汇总
Java基础部分知识点汇总第一章 Java开发环境搭建第二章 标识符与关键字第三章 变量第四章 数据类型第五章 运算符第六章 控制结构第七章 方法第八章 认识面向对象第九章 对象的创建和使用第十章 封装第十一章 this和static第十二章 继承第十三章 方法覆盖和多态第十四章 super第一章 Java开发环境搭建1、常用的DOS命令:创建目录:mkdir 切换目录:cd 相对路径和绝对路径cls 清屏dir 列出当前目录下内容exit 退出DOS命令窗口del命令,删除一个或者多个
2021-12-25 22:33:19 198
原创 《算法图解》学习笔记:第1章 算法简介
1、引言概念:算法是一组完成任务的指令。任何代码片段都可视为算法。2、二分查找输入为一个有序的元素列表对于包含n个元素的列表,用二分查找最多需要log2n步,而简单查找最多需要n步应选择效率最高的算法,以最大限度地减少运行时间或占用空间二分查找python实现:我的代码-python3:def binary_search(list, item): low = 0 high = len(list) - 1 while low <= high:
2020-07-16 01:13:43 181
原创 《Python语言程序设计》学习笔记四:程序的控制结构
该笔记内容整理于《Python语言程序设计》课程控制结构:顺序结构、分支结构、循环结构1、程序的分支结构:单分支结构:if <条件>: <语句块>二分支结构:if <条件>: <语句块1>else: <语句块2>紧凑形式:<表达式1> if <条件> else <表达式2>注意是表达式不是
2020-07-14 00:24:50 263
原创 《Python语言程序设计》学习笔记三:基本数据类型
该笔记内容整理于《Python语言程序设计》课程1、数字类型及操作整数类型:没有取值范围限制pow(x, y)函数:计算x的y次方4种进制表示形式:十进制、二进制(以0B或0b开头)、八进制(以0o或0O开头,Octal)、十六进制(以0x或0X开头)浮点数类型:浮点数的取值范围和小数精度都存在限制,但常规计算可忽略浮点数间运算存在不确定尾数,不是bug:如0.1+0.2结果为0.30000000000000004不确定尾数的原因:二进制并不是与十进制完全相等,二进制表示小数字,可以无限接
2020-07-10 22:47:21 206
原创 《Python语言程序设计》学习笔记二:Python基本图形绘制
该笔记内容来源于《Python语言程序设计》课程1、计算机技术的演进过程:1946-1981 计算机系统结构时代 &n
2020-06-28 23:36:38 297
原创 《Python语言程序设计》学习笔记一:python基本语法元素
该笔记内容来源于《Python语言程序设计》课程1、计算机的概念:功能性:对数据的处理,包括数据计算、输入输出处理和结果储存可编程性:可以根据一系列指令自动地、可预测地、准确地完成操作者的意图2、摩尔定律:集成电路规模指数增长(单位面积集成电路上晶体管数量)3、编译和解释:源代码:人类可读,高级语言目标代码:人类不可读,机器语言编译:将源代码一次性转变为目标代码的过程------>先编译再执行解释:将源代码逐条转换为目标代码同时逐条运行的过程------->边解释边执行4、
2020-06-28 22:11:36 257
原创 《Python语言程序设计》学习:连续质数计算
题目内容:获得用户输入数字N,计算并输出从N开始的5个质数,单行输出,质数间用逗号,分割。注意:需要考虑用户输入的数字N可能是浮点数,应对输入取整数;最后一个输出后不用逗号。输入格式:输入一个整数或浮...
2020-04-25 00:12:39 3719
原创 中国大学MOOC《程序设计入门-C语言》学习(十):单词长度
题目内容:你的程序要读入一行文本,其中以空格分隔为若干个单词,以‘.’结束。你要输出这行文本中每个单词的长度。这里的单词与语言无关,可以包括各种符号,比如“it’s”算一个单词,长度为4。注意,行中可能出现连续的空格。输入格式:输入在一行中给出一行文本,以‘.’结束,结尾的句号不能计算在最后一个单词的长度内。输出格式:在一行中输出这行文本对应的单词的长度,每个长度之间以空格隔开,行末没有...
2018-12-31 19:18:32 762
原创 中国大学MOOC《程序设计入门-C语言》学习(九):Tic-Tac-Toe游戏(井字棋)
Tic-Tac-Toe游戏(井字棋)问题描述:读入一个3x3的矩阵,矩阵中的数字为1表示该位置上有一个X,为0表示为O;程序判断这个矩阵中是否有获胜的一方,输出表示获胜一方的字符X或O,或输出无人获胜 。程序:需要使用二维数组,这里将检查行和检查列合并在了一起,将检查主对角线和副对角线也合并在了一起。对程序输入测试案例后,未发现问题。#include &lt;stdio.h&gt;......
2018-12-13 23:50:45 1869 3
原创 中国大学MOOC《程序设计入门-C语言》学习(八):数组
数组形式诸如:int number [100]; scanf ("%d", number [i] );数组中所有元素的类型相同,且一旦创建,不能改变大小;初始化:格式如下int v[5] = {1, 2, 3, 4, 5 };即用{1, 2, 3, 4, 5}初始化。也可以为int v[5] = {1, 3 };即用{1, 3, 0, 0, 0}初始化。求平均数问题描述:用户输...
2018-12-12 19:31:01 278
原创 中国大学MOOC《程序设计入门-C语言》学习(七):正序分解整数
正序分解整数问题描述:输入一个非负整数,正序输出它的每一位数字。如输入:12345,输出:1 2 3 4 5。程序第一个为我自己写的程序,用的是while循环,后来看老师的课件,发现用的是do_while循环(第二个程序)。想了一下子后,发现在进入该语句之前,divisor始终是大于等于1的,即无论如何都会进入循环体,用while循环相当于判断(必定成立)—>执行—>判断…其实...
2018-12-12 12:32:21 308
原创 中国大学MOOC《程序设计入门-C语言》学习(六):求最大公约数
求最大公约数问题描述:用户输入两个整数,输出其最大公约数。枚举法程序:#include <stdio.h>int main(){ int a, b; int i ; int c; scanf("%d %d",&a, &b) ; for(i=1; i<=a && i<=b; i++){ if(a%i == 0 &...
2018-12-12 11:39:39 311
原创 中国大学MOOC《程序设计入门-C语言》学习(五):倒数求和
倒数求和问题描述:用户输入n 的值,输出f(n)=1+1/2+1/3+…+1/n的结果。程序:#include <stdio.h>int main(){ int n; int i; double sum = 0.0; scanf("%d",&n) ; for(i=1; i<=n; i++){ sum += 1.0/i; } print...
2018-12-11 22:52:56 1369
原创 中国大学MOOC《程序设计入门-C语言》学习(四):循环的一些例子
算平均数问题描述让用户输入一系列的正整数,最后输入-1表示输入结束,然后程序计算出这些数字的平均数,输出输入数字的个数和平均数。思路变量-&gt;算法-&gt;流程图-&gt;程序变量:这里需要三个变量:一个变量记录读到的整数,一个变量记录累加的结果,一个变量记录读到的数的个数。算法:1、初始化变量sum和count为0;2、读入number;3、如果number不是-1,则将...
2018-12-10 00:13:51 1830
原创 中国大学MOOC《程序设计入门-C语言》学习(三):判断与循环
判断问题描述:给定两个时间,计算其时间差,输出形式为x小时y分。代码:#include &lt;stdio.h&gt;int main(){ int hour1, minute1; int hour2, minute2; //输入两个时间 scanf("%d %d", &amp;hour1, &amp;minute1); scanf("%d %d&
2018-12-09 21:06:39 432
原创 中国大学MOOC《程序设计入门-C语言》学习(二):运算符优先级
优先级优先级运算符结合性1()从左到右2! + - ++ –从右到左(单目的+和-)3* / %从左到右4+ -从左到右5&lt; &lt;= &gt; &gt;=从左到右6== !=从左到右7&amp;&amp;从左到右8
2018-12-09 00:11:11 200
原创 中国大学MOOC《程序设计入门-C语言》学习(一)
《程序设计入门-C语言》学习(一)变量的名字标识符有标识符的构造规则。基本的规则是:标识符只能由字母、数字和下划线组成,数字不可以出现在第一个位置上,C语言的关键字不可以用作标识符。例子1:找零:#include &amp;amp;lt;stdio.h&amp;amp;gt;int main(){ int price=0; printf(&amp;quot;请输入金额(元):&amp;quot;);
2018-12-05 21:36:06 754
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人