- 博客(52)
- 资源 (9)
- 收藏
- 关注
原创 Joern环境的安装(Windows版)
网上很少有关于Windows下安装Joern的教程,而我最初使用也是装在Ubuntu虚拟机中,这样使用很占内存,影响体验感。
2024-01-18 18:44:53
2019
2
原创 C++异常处理
第 十二 章 异常处理12-1 什么叫做异常?什么叫做异常处理?解:当一个函数在执行的过程中出现了一些不平常的情况,或运行结果无法定义的情况,使得操作不得不被中断时,我们说出现了异常。异常通常是用throw关键字产生的一个对象,用来表明出现了一些意外的情况。我们在设计程序时,就要充分考虑到各种意外情况,并给与恰当的处理。这就是我们所说的异常处理。12-2 C++的异常处理机制有何优点?解:C++的异常处理机制使得异常的引发和处理不必在同一函数中,这样底层的函数可以着重解决具体问题,而不必过
2022-03-23 12:30:03
2264
原创 c++汉诺塔问题--递归思想
递归:函数直接或者间接调用自身;直接调用void fun1(){ …… fun1(); …… }间接调用void f1(){ …… f2(); ……}void f2(){ …… f1(); ……}汉诺塔问题汉诺塔问题是一个经典的问题。汉诺塔(Hanoi Tower),又称河内塔,源于印度一个古老传说。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始
2022-03-16 21:37:43
306
原创 C++ 每日一题
2.25如何理解封装、继承和多态?(它们分别解决了什么问题)(1)封装封装是面向对象的核心思想,将对象的属性和行为封装起来,不需要让外界知道具体实现细节,这就是封装思想。防止代码(数据)被破坏。(2)继承继承主要描述的就是类与类之间的关系,通过继承,可以在无需重新编写原有类的情况下,对原有类的功能进行扩展。(3)多态多态(包含多态)指的是在一个类中定义的属性和功能被其他类继承后,子类重写父类函数,当把子类对象直接赋值给父类引用/指针变量时,相同引用类型的变量调用同一个方法所呈现出的多种不同
2022-03-14 11:58:58
1316
原创 C++类和对象
将抽象后的数据和函数封装在一起,构成了C++的‘类’;1. 面向对象程序设计基本特点1.1 抽象 具体的对象进行概况,抽出一类对象的公共性质加以描述的过程。 分类:数据抽象和行为抽象,前者是区别彼此类对象的特征,后者描述某类对象共同的行为或功能特征;1.2 封装 将抽象的数据和行为相结合,形成一个整体。即将数据和操作函数代码有机结合形成”类“; 特点:将一些成员当类和外部的接口,而将其他成员隐蔽起来,达到了对成员访问权限的合理控制,增强了数据安全性和简化了程序编写工作; 封装优点:将数据代码
2022-03-13 21:37:58
822
原创 C++共享数据的保护-const
对于需要共享又要防止被修改的数据因该声明为常量;1. 常对象 常对象的数据成员的值在整个生存期间都不会被改变,所以常对象必须初试化,然后不能被更新class A{public: …… A(int a,int b):x(a),y(b){} ……private: int x,y;};const A a(3,4);【属性】常对象不能被赋值的两种保护:(1)一般用对象.数据成员=值的方式,但是限制其不能这样赋值。(2)类中用成员函数访问去更改值,而语法规定:不能通过常对象调用普通成
2022-03-10 21:38:17
903
转载 状态检测防火墙
源码#include<linux/kernel.h>#include<linux/init.h>#include<linux/module.h>#include<linux/version.h>#include<linux/skbuff.h>#include <linux/net.h>#include<linux/netfilter.h>#include<linux/netfilter_ipv4.h&g
2022-01-02 21:12:32
550
原创 webscan bypass和Sql注入的笔记
一. 360webscan bypass绕过360webscan通防的方法1. php_self白名单绕过原理:$webscan_white_directory='admin|\/dede\/|\/install\/';php_self中含有 admin或者 /dede/ 或者 /install/时,不过滤字符。测试:在urlpath之后添加 /admin ,/dede/ ,/install/之后不拦截2. white_url白名单绕过原理:$webscan_white_url =
2021-06-19 22:45:30
780
原创 字符串压缩算法5.11
字符串压缩算法有一种简单的字符串压缩算法,对于字符串中连续出现的同一字符,用该字符加上连续出现的次数来表示(连续出现次数小于3的不压缩)。设计程序,将采用该压缩方法压缩后的字符串解压还原为原字符串并输出。输入样例:ab5a10c5输出样例:abbbbbaaaaaaaaaaccccc办法分析对输入的字符串进行逐个扫描,如果遇到字符串直接输出,如果遇到数字,则逐个读取数字字符将其转为int型数字,然后输出该数字个前一字符。代码实现#include <stdio.h>#i
2021-05-11 13:23:47
1466
原创 LINUX服务器安装JDK
准备官网下载地址:JDK 1.82. 共享账号账号:2696671285@qq.com密码:Oracle123安装1.首先使用ssh工具(这里用的是FinalShell)将下载的.tar.gz文件上传到服务器目录下。新建目录:mkdir /usr/lib/java/jdk/然后解压:tar -zxvf xxx.tar.gz -C /usr/lib/java/jdk/2. 配置环境变量sudo vi /etc/profile在文末加入以下内容 export
2021-04-17 23:49:07
119
原创 CTF模板注入
模板注入赛题1. [护网杯 2018]easy_tornado进入后三个链接/flag.txt # flag in /fllllllllllllag/welcome.txt #提示render(渲染)/hint.txt #提示md5(cookie_secret+md5(filename))url上两个参数:filename&filehash根据提示,要查看flag,已经知道了文件名,filehash也知道了构
2020-07-30 01:04:07
4305
原创 [BUUCTF][GYCTF2020]Ezsqli
[GYCTF2020]Ezsqli布尔盲注无列名盲注抓包,存在post的id参数。进行测试id=1时, :Nu1Lid=0时, :Error Occured When Fetch Result.id=1’时, :bool(false)id=1’#时,:bool(false)语句不正确时返回bool(false)所以猜测是数字型的注入id=1^1 :Error Occured When Fetch Result.id=1^0 :Nu1L存在sql注入。
2020-07-26 03:31:58
2737
原创 [buuctf][RCTF2015]EasySQL
[RCTF2015]EasySQL进去后是个登陆框,可以注册用户。首先这种猜测是二次注入,注册了admin’#用户,进去后有个改密码的操作,更加坚信了是个二次注入,但是并没有起到效果。因为并不清楚sql语句的闭合方式,所以重新注册一个admin"#,登陆后也没有起到作用。注册admin\,登陆进去后修改密码,结果出现报错。可以看到原语句中的username是双引号闭合的,所以单引号注册的账号是不起作用的.由此推断,我们注册admin"#因为闭合语句且将后面进行了注释,所以是可以sql语句会变为
2020-07-26 00:49:41
1144
原创 sqli_labs(11-20)练习
POST注入less11post类型一个登陆框试一下万能密码:uname=admin’ or ‘1’='1–+&passwd=1显示出Your Login name:adminYour Password:admin所以猜测sql语句是:$sql="SELECT username, password FROM users WHERE username='$uname' and password='$passwd' LIMIT 0,1";注入如下(同对id的注入方法):u..
2020-07-22 01:16:16
352
原创 sqli_lab(less1-10)解题方法
GET注入less1:?id=1’ #报错?id=1’ and 1=1–+ #正常 ?id=1’ and 1=2–+ #语句正常但返回异常?id=1’ order by 3–+ #正常?id=-1’ union select 1,2,3–+ #2为显示位?id=-1’ union select 1,group_concat(schema_name),3, from information_schema.schemata–+?id=-1’
2020-07-19 00:30:44
427
原创 [BUUCTF刷题]HardSQL
HardSQL进入后是sql注入页面,过滤了一些字符,先进行fuzz测试。发现过滤了union,双写也无法绕过,所以不能使用常规的方法进行注入。但发现没有过滤extractvalue和updatexml。也过滤了空格,使用括号绕过。首先,注数据库名称username=admin'or(updatexml(1,concat(0x7e,(SELECT(database())),0x7e),1))%23&password=1然后得到表名(过滤=,使用like)userna
2020-07-03 00:29:42
2144
原创 [BUUCTF刷题]我有一个数据库
我有一个数据库cve-2018-12613-PhpMyadmin后台文件包含进去后出现乱码的文字,扫描目录发现/phpmyadmin发现其版本为phpmyadmin4.18,搜索相关版本的漏洞。利用poctarget=db_datadict.php%253f/../../../../../../../../flag漏洞分析:问题在index.php的55~63:// If we have a valid target, let's load that script instead
2020-07-02 22:57:41
1352
原创 buuctf_[CISCN2019 华北赛区 Day2 Web1]Hack World
Hack World进入后提示是sql注入,并且给了表和列名。进行fuzz测试,过滤了很多字符。主要的union字符被过滤,但select,from没有被过滤。我们还发现id只有输入1,2时分别返回Hello, glzjin wants a girlfriend.,Do you want to be my girlfriend?。并且支持异或判断。所以可以进行布尔盲注读取数据。id=0^(ascii(substr((select(flag)from(flag)),1,1))>
2020-07-02 16:24:58
867
原创 buuctf_安洵杯 2019_easy_web
安洵杯 2019_easy_web进入后页面显示如下查看源代码:发现一长串base64编码的数据,然后进行解码发现是png图片的内容信息。地址.../index.php?img=TXpVek5UTTFNbVUzTURabE5qYz0&cmd=对TXpVek5UTTFNbVUzTURabE5qYz0进行两次base64解密,一次hex2bin解密得到555.png。想必上面显示的那张图片就是555.png,然后源代码里面显示的数据就是该图片的内容,即在参数img中输入一次he
2020-07-01 23:09:27
1541
1
原创 [BUUCTF刷题]禁止套娃
禁止套娃exp=show_source(next(array_reverse(scandir(pos(localeconv())))));exp=show_source(array_rand(array_flip(scandir(pos(localeconv())))));exp=show_source(session_id(session_start()));进入后显示flag在哪儿,找不到线索,进行目录扫描。但也没有扫到。查看别人的wp发现是.git泄露。但是自己的网址下/.git
2020-07-01 16:48:09
2274
原创 java绘制C/S架构的网络绘图版
java绘制C/S架构的网络绘图版1. 服务端程序Server.javaimport java.net.ServerSocket;import java.net.Socket;public class Server extends Thread { public void run(){ createServer(); } public void createServer(){ try { ServerSocket serverSocket = new Serv
2020-06-23 00:31:53
2234
原创 防灾科技学院GKCTF2020_misc wp
GKCTF_20200x01 签到0x02 问卷调查0x03 Pokémon0x04 code obfuscation0x01 签到比赛直播间地址:https://live.bilibili.com/772947屏幕上有flag;0x02 问卷调查填写对这次比赛的问卷调查,就可以得到flag。flag{I_W4nt_t0_Fu4k_GKCTF}0x03 Pokémon一个.gba格式的文件,下载Visual Boy Advance打开;是一个叫 口袋怪兽绿宝石的游戏。没办法,
2020-05-25 16:47:08
2674
原创 在Windows上部署Tomcat
在Windows上部署Tomcat准备:1. JDK:jdk-8u131-windows-x642 tomcat:apache-tomcat-8.5.23-windows-x64.zip一:安装jdk和tomcat。(JDK)下载连接: https://www.oracle.com/java/technologies/javase-downloads.html(Tomcat)下载链接:https://tomcat.apache.org/download-80.cgi二: 将tomcat解压
2020-05-11 13:50:20
1225
原创 2020网鼎杯_青龙组
2020网鼎杯青龙组0x01 misc_签到题0x02 WEB1_AreUSerialz0x03 WEB_filejava0x01 misc_签到题有必要说一下签到题,进去后是一个答题的模式,可能大家觉得答几道后还不出flag就会失望,或者转去其他地方找突破口。但是每次答完后它会给你一个称谓,可能你答对题数越高地位称呼会越高,最终能拿到flag吧。作对15道后会出现提交Token的提示框。提交本队的token后,可以F12得到flag。或者用bp抓包,当提交后才能抓到包。所以明显看到就是给/f
2020-05-11 00:10:10
5848
原创 2020 DASCTF四月春季战-Web
0x01 Esunserialize构造反序列化Pop链字符逃逸上源码:<?phpshow_source("index.php");function write($data) { return str_replace(chr(0) . '*' . chr(0), '\0\0\0', $data);}function read($data) { return str_replace('\0\0\0', chr(0) . '*' . chr(0), $data);}
2020-05-09 23:29:51
953
原创 2019全国大学生信息安全竞赛—Web
0x01 JustSosoparse_url的解析漏洞_wakeup()绕过序列化pop链的构造php引用赋值打开页面后查看源代码:提示为本地文件包含漏洞,查看index.php和hint.php.index.php:<?phperror_reporting(0); $file = $_GET["file"]; $payload = $_GET["payload"];if(!isset($file)){ echo 'Missing parameter'.'<
2020-05-09 14:45:23
1460
原创 [MRCTF2020]Ezpop—序列化pop链
Ezpop序列化Pop链利用几个类之间相互关联进行构造文件包含漏洞Modifier类中append函数使用了include(),会出现文件包含漏洞。以下是题目内容:Welcome to index.php<?php//flag is in flag.php//WTF IS THIS?//Learn From https://ctf.ieki.xyz/library/php.html#%E5%8F%8D%E5%BA%8F%E5%88%97%E5%8C%96%E9%AD%94%
2020-05-09 13:12:11
6838
1
原创 buuctf online_tool
online_tool进去后得到以上页面,其中设置X-Forwarded-For或者不设置不影响题目,它只是设置命名,$sandbox为目录名。代码实现的功能就是在线进行namp扫描,通过get一个host主域名进行扫描。对上面出现的nmap命令进行了解:-T5 : 可以加快或者减慢扫描速度,有六个级别,级别越高速度越快,也越容易被WAF或者IDS发现。-sT:使用TCP Syn...
2020-04-29 20:49:27
760
原创 2020 DASCTF四月春季战-misc
misc0x01 签到题5G都来了,6G还远吗?6G下还需要开会员才能高速下载吗?请提交 DASCTF{} 里的内容。下载发现有将近1G。作为签到题应该不需要这样做。按下F12,接收到payload。payload如下:REFTQ1RGe3dlbGNvbWVfdG9fREFTX0FwMXIxfc9Vo4jQqwH4ON+olEgxiijIjbgcdJur4VZjq9WlhUI...
2020-04-26 13:36:30
2078
原创 [极客大挑战2019]easysql
easysql进入后这样的页面,正常用’会报错,然后用burp扫一下。尽然就出来了!原来要用万能密码就行了,现在总结一下 万能密码:aspaspx万能密码1:"or “a”="a2:‘.).or.(’.a.’=’.a3:or 1=1–4:'or 1=1–5:a’or’ 1=1–6:"or 1=1–7:'or.‘a.’...
2020-04-22 23:44:09
1323
1
原创 运动码表—状态转换和输出函数的Excel表
码表控制器状态转换对应逻辑表达式:N2=~stop store ~NewRecord ~S2 S1 ~S0 + ~stop store NewRecord ~S2 S1 ~S0 + ~start ~stop ~store ~reset ~NewRecord S2 S1 ~S0 + NewRecord S2 S1 ~S0 + ~start ~stop ~store ~reset ~NewRec...
2020-04-18 03:19:16
3974
原创 小型数字系统---运动码表
小型数字系统—运动码表一,实验目的熟悉数字系统基本特征及设计方法,熟练掌握数字系统设计基本流程,利用Logisim构建运动码表数据通路和控制逻辑,最终完成整个码表功能的设计。二,实验内容设计电路并使用Logisim软件进行虚拟仿真,具体内容及要求如下:输入:4个按钮。输出:4个7段数码管显示数字。具体功能:(1)当按下Start时,计时器清零,重新开始计时;(2)当按下Stop...
2020-04-18 03:02:47
7953
6
原创 计算机硬件系统设计—码表计数器
码表计数器功能:利用4个BCD码计数器显示码表计数,分别对应10秒,1秒,1/10秒,1/100秒。输入:时钟信号Clk,使能信号En,异步复位Rst。输出:16位输出Q,用于控制显示码表计数值要求:(1)利用4个4位的BCD码计数器级联而成,每个计数器在0-9之间变化,当最低位计数器从9变化为0时,高位计数器加1;(2)当低两位计数器变化到99时,下一个时钟到来时,高一位的计数器加...
2020-04-14 13:24:46
6008
原创 计算机硬件系统设计—4位BCD计数器
4位BCD计数器功能:对输入的时钟信号进行计数。输入:时钟信号Clk,使能信号En,异步复位信号Rst。输出:4位输出Q,进位输出Cout。要求:(1)当En=1且有时钟信号输入变化时(Clk从0变化到1)时,Q的值增加1,且Q只能在0-9之间变化,Cout=(Q==9)?1:0;当Rst为1时,Q和 Cout均清零。(2)先设计BCD计数器的状态转换和输出函数电路并进行封装;(3...
2020-04-14 13:22:00
12652
原创 计算机硬件系统设计—16位寄存器(16位)
16位寄存器(16位)电路功能:根据控制信号,将相应的输入进行输出。输入:16位数据输入Din,1个使能信号En, 1个时钟信号Clk。输出:16位输出Q。要求:(1)当En=1且有时钟信号输入变化时(Clk从0变化到1)时,Q=Din;否则Q的值维持不变;(2)先使用4个D触发器设计4位的并行加载寄存器并进行封装;(3)用4个4位的并行加载寄存器进行并发得到16位的并行加载寄存器...
2020-04-14 13:03:20
6599
原创 计算机硬件系统设计—码表数码管显示驱动设计
码表数码管显示驱动设计功能:利用4个并行的7段数码管显示16位的BCD码。输入:16位BCD码。输出:4个7段数码管的控制信号(32位数据)S4T,S4B,S3T,S3B,S2T,S2B,S1T,S1B 。这32位数据中,每8位数据用来控制显示1个7段数码管的控制信号。要求:(1)将16位BCD码分为4组,每组BCD码(4位)作为1个7段数码管的控制信号的输入;(2)数码管中小数...
2020-04-03 21:01:24
4838
原创 计算机硬件系统设计—16位无符号比较器
16位无符号比较器功能介绍:功能:对两个16位的无符号数进行比较。输入:2个16位数据输入X和Y。输出:Great(1位)、Equal(1位)、Less(1位)。要求:(1)当X>Y时,Great输出为1;当X=Y时,Equal输出为1;当X<Y时,Less输出为1;(2)只能使用线路库、逻辑门组件、输入输出库,不能使用Logisim软件提供的复用器;(3)先设计4位...
2020-04-03 20:51:39
7995
3
原创 计算机硬件系统设计—2路选择器设计
实验2组合逻辑电路设计实验2路选择器设计实验要求:电路功能:根据选择控制信号,将相应的输入进行输出。输入:16位数据输入X和Y,1个选择控制信号Sel。输出:16位输出Out。要求:(1)当Sel=0时,Out=X;当Sel=1时,Out=Y;(2)只能使用线路库、逻辑门组件、输入输出库,不能使用Logisim软件提供的复用器(3)先设计1位的2路选择器并进行封装;(4)用1...
2020-04-03 20:39:28
19280
12
原创 巧放五角星
问题描述现有 10 颗五角星,在方格线中放置这些五角星,每条线上有且仅有两颗,怎样进行巧放(已经有两颗已经放好了,还剩 8 颗未放)。项目要求(1) 请编制 Python 程序进行求解其他 8 个五角星该如何放置。(2) 请用 Python 程序列出符合要求的 10 颗五角星摆放的所有可能。【输出格式要求】为每个解决方案一行,一行内按照字母顺序输出10 个位置。【可选项...
2019-12-04 19:38:48
1098
java网络画板.zip
2020-06-17
C语言课程设计报告医院专家门诊挂号系统.doc
2020-06-17
java 网络绘画板
2020-06-17
C语言课程设计 菜农种植系统2017
2020-06-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人