- 博客(221)
- 资源 (3)
- 收藏
- 关注
原创 WEB杂七杂八
1、php curl题目:Cat题解:攻防世界-web-Cat(XCTF 4th-WHCTF-2017)key: 1、根据Django的目录,我们使用@进行文件传递,对文件进行读取之后还会把内容传给url参数,如果像上面一样有超出解析范围的编码的时候就会得到错误信息。 2、在报错信息中搜索DATABASE,就可找到数据库的绝对路径。 3、其他:BASE_DIR '/opt/api' ...
2020-11-18 10:03:56 232
原创 服务端模板注入攻击 (SSTI)
1、题目:Web_python_template_injection从零学习flask模板注入关于python魔术方法payload:"".__class__.__mro__[2].__subclasses__()[40]("/etc/passwd").read() 的解释题解1:CTF引出对Python模板注入的思考#找到os模块#有两个#我们要找的是第71个<class 'site._Printer'>num = 0for n in ''.__class__.__m
2020-11-17 15:04:40 517
原创 php积累
1、PHP弱类型比较题目simple_php<?phpshow_source(__FILE__);include("config.php");$a=@$_GET['a'];$b=@$_GET['b'];if($a==0 and $a){ echo $flag1;}if(is_numeric($b)){ exit();}if($b>1234){ echo $flag2;}?>php中其中两种比较符号:==:先将字符串类型转化
2020-10-22 09:36:16 551
原创 python小积累
Reverse-it#读取文件,逆转,然后保存成图片#注意hex和str的转换#字符串逆转的3种方法https://www.cnblogs.com/fengff/p/10367136.htmlif __name__ == '__main__': filename = "C:/Users/Administrator/Desktop/tmp/0da9641b7aad4efb8f7eb45f47eaebb2" file = open(filename, 'rb') str =
2020-10-19 16:42:03 204
原创 Misc-隐写(二)
1、Base64隐写import base64#开始在网上找了一个将int转换为固定位数的二进制的函数,后来参考了别人的用zfill()def int2bin(n, count=24): return "".join([str((n >> y) & 1) for y in range(count-1, -1, -1)])if __name__ == '__main__': b64dict = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcde
2020-10-17 11:37:28 185
原创 文件包涵漏洞
https://www.jianshu.com/p/3514f0fd79f7例题:“百度杯”CTF比赛 2017 二月场include注意1.<?php echo system('cat dle345aae.php');?>和2.<?php echo `cat dle345aae.php`;?>的区别
2020-10-03 13:14:50 123
原创 sql注入
1.基本步骤https://www.jianshu.com/p/078df7a35671例题:“百度杯”CTF比赛 九月场SQLtips:用<>绕过敏感词过滤1.得到数据库名称为sqlihttp://e14891ee716b434e845d5375b2b206ca6876877f00be47e0.changame.ichunqiu.com/index.php?id=1 union sele<>ct 1,database(),3 2.得到表明为infohtt
2020-10-02 16:55:31 311
原创 ctf加密总结
https://blog.csdn.net/qq_40836553/article/details/79383488https://blog.csdn.net/qq_41187256/article/details/79693012?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.channel_param&depth_1-utm_source=distribute.pc_rel
2020-10-01 21:02:53 852
原创 文件上传绕过总结
总结参考例题:“百度杯”CTF比赛 九月场Upload1.头部<?php 绕过2.文件后缀.php绕过1.php标记的几种风格1.<?phpeval($_POST['cmd']); ?>2.<script language="php"> eval($_POST['cmd']);</script>3.<? eval($_POST['cmd']);?>4.<% eval($_
2020-10-01 17:10:36 229
转载 测试/开放、智力
测试1、测试一部电梯功能测试—单个功能:1、电梯内分楼层键是否正常2、电梯内开关门键是否正常3、电梯内的报警键是否正常使用4、电梯外的上下键是否正常5、同时关注显示屏,电梯内外的显示屏显示的电梯层数、运行方向是否正常6、有障碍物时,电梯门的感应系统是否有效功能测试—逻辑业务/功能交互1、功能与功能模块间的集成,可根据电梯当前状态是上行、下行还是停止来设计测试
2017-09-16 18:32:08 388
原创 面试算法题
1、直方图矩形最大值class Solution {public: int largestRectangleArea(vector& heights) { int res = 0; stack s; heights.push_back(0); for (int i = 0; i < heights.size(); +
2017-09-04 22:31:56 372
转载 epoll源码分析(转)
链接:poll&&epoll实现分析(二)——epoll实现epoll源码实现分析[整理]epoll源码分析(转)epoll用法回顾先简单回顾下如何使用C库封装的3个epoll相关的系统调用。更详细的用法参见http://www.cnblogs.com/apprentice89/archive/2013/05/06/3063039.htmlint e
2017-09-03 10:33:04 541
转载 select\poll源码
参考:点击打开链接/*sys_select(fs/select.c)处理了超时值(如果有),将struct timeval转换成了时钟周期数,调用core_sys_select,然后检查剩余时间,处理时间*/asmlinkage long sys_select(int n, fd_set __user *inp, fd_set __user *outp, fd_set
2017-09-02 21:15:04 560
原创 图的邻接表结构
class Graph{public: Graph(); Graph(unsigned int vtxCount, unsigned int edgeCount); ~Graph(); void create(unsigned int vtxCount, unsigned int edgeCount); //给图的结点容器和边容器分配内存 int addVtx(); //添加空结
2017-08-03 17:04:34 510
转载 epoll的LT和ET使用EPOLLONESHOT
epoll的总结之四LT和ET使用EPOLLONESHOT在前面说过,epoll有两种触发的方式即LT(水平触发)和ET(边缘触发)两种,在前者,只要存在着事件就会不断的触发,直到处理完成,而后者只触发一次相同事件或者说只在从非触发到触发两个状态转换的时候儿才触发。这会出现下面一种情况,如果是多线程在处理,一个SOCKET事件到来,数据开始解析,这时候这个SOCKET又来了同样一个
2017-07-01 21:57:58 909
转载 并行编程中的lock free技术
lock free (中文一般叫“无锁”,一般指的都是基于CAS指令的无锁技术) 是利用处理器的一些特殊的原子指令来避免传统并行设计中对锁(lock)的使用。众所周知,锁在解决并行过程中资源访问问题的同时可能会引入诸多新的问题,比如死锁(dead lock),另外锁的申请/释放对性能也有不小的影响,当然最大的问题还在于使用锁的代码模块通常难以进行组合。lock free的目标就是要消除锁对编程
2017-06-02 14:29:18 1504
原创 epoll et模式
//server.c#include #include #include #include #include #include #include #include #include #include #include #include #include #include #define MAX_EVENT_NUMBER 1024#define BUFFER_SIZ
2017-05-31 20:46:44 374
转载 SQL注入式攻击
转自点击打开链接 所谓SQL注入式攻击,就是攻击者把SQL命令插入到Web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令。在某些表单中,用户输入的内容直接用来构造(或者影响)动态SQL命令,或作为存储过程的输入参数,这类表单特别容易受到SQL注入式攻击。一、SQL注入攻击的种类首先要了解注入方式有哪些种类,才能更好的防御注入。
2017-05-26 08:46:04 1170
转载 论fork()函数与Linux中的多线程编程
转自:http://blog.csdn.net/cywosp/article/details/27316803一、fork()函数 在操作系统的基本概念中进程是程序的一次执行,且是拥有资源的最小单位和调度单位(在引入线程的操作系统中,线程是最小的调度单位)。在Linux系统中创建进程有两种方式:一是由操作系统创建,二是由父进程创建进程(通常为子进程)。系统调用函数fork
2017-05-14 20:25:27 309
原创 mysql(二)
六 事务控制和锁定语句 MySQL支持对MyISAM和MEMORY存储引擎的表进行表级锁定,对BDB存储引擎的表进行页级锁定,对InnoDB存储引擎的表进行行级锁定。默认情况下,表锁和行锁都是自动获得的,不需要额外的命令。但是在有的情况下,用户需要使用事务控制和锁定语句来完成。6.1 Lock Table 和 Unlock Table LOCK TABLES可
2017-05-03 00:27:06 413
原创 awk
awk基础简介 awk程序的报告生成能力通常用来从大文件文本文件中提取数据元素并将它们格式化成可读的报告。awk程序允许从日志文件中只过滤出你要看的数据元素,并以某种更容易读取重要数据的方式将他们格式化。awk命令格式awk options program file从命令行中读取程序脚本awk '{print "Hello john!"}'如
2017-04-27 18:50:11 651
原创 sed
sed编辑器 流编辑器,在编辑器处理数据之前基于预先提供的一组规则来编辑数据流,每次从输入中读取一行,用提供的编辑器命令匹配数据、按命令中指定的方式修改流中的数据,然后将生产的数据输出到STDOUT,在流数据将所有命令与一行数据匹配后,它会读下一行数据并重复这个过程,在流编辑器处理完流中的所有数据行后,它就会终止。set options screipt files
2017-04-26 19:04:16 307
转载 测试(三)
1、用例 在UML的文档中,Use Case的定义是:在不展现一个系统或子系统内部结构的情况下,对系统或子系统的某个连贯的功能单元的定义和描述。其实UseCase就是对系统功能的描述而已,不过一个UseCase描述的是整个系统功能的一部分,这一部分一定要是在逻辑上相对完整的功能流程。在使用UML的开发过程中,需求是用UseCase来表达的,界面是在Use Case的辅助下设计的,
2017-04-25 12:37:54 808
原创 mysql(一)
一、存储引擎 插件式存储引擎,包括MyISAM,InnoDB,BDB,MEMORY,MERGE,EXAMPLE,NDB cluster,ARCHIVE,CSV,BLACKHOLE,FEDERATED,其中InnoDB和BDB提供安全事务表,其他的存储引擎都是非安全事务表。a、查看默认的存储引擎show variables like 'default_storage_engi
2017-04-25 09:16:40 868
原创 bash shell(2)
第 8 章 操作符和相关的主题8.1 操作符Example 8-1 最大公约数#!/bin/bashARGS=2E_BADARGS=65if [ $# -ne "$ARGS" ]then echo "Usage: `basename $0` first_number second_number" exit $BASARGSfigcd(){
2017-04-24 19:20:01 616
原创 Bash-shell
第2章 #eg 2-1 清除/var/log下的log文件#/bin/bash#以root身份运行cd /var/logcat /dev/null > messages #清空messages这个文件cat /dev/null > wtmpecho "Logs cleaned up"eg2-2 2-1的改良版本#以root身份运行LOGDIR=/var/log
2017-04-22 18:58:50 732
转载 Linux常用命令
显示目录和文件的命令 Ls:用于查看所有文件夹的命令。1. ls -a 列出文件下所有的文件,包括以“.“开头的隐藏文件(Linux下文件隐藏文件是以.开头的,如果存在..代表存在着父目录)。2. ls -l 列出文件的详细信息,如创建者,创建时间,文件的读写权限列表等等。3. ls -F 在每一个文件的末尾加上一个字符说明该文件的类型。"@"表示符号链接、"|
2017-04-13 00:19:56 815
原创 测试(2)
五、系统测试 将已经集成好的软件系统作为整个计算机系统的一个元素,与支持软件计算机硬件、外设、数据等其他元素结合在一起,在实际使用环境下,对计算机进行一系列测试活动。 针对的是整个系统,关注的是整个系统的输入输出 测试用例应根据需求分析书名数来设计 在测试实施过程中必须在实际使用环境下来运行六、性能测试 定义:通
2017-03-29 15:12:42 936
转载 设计模式/面向对象
观察者模式https://wenku.baidu.com/view/8820cd1b10a6f524ccbf85cb.html
2017-03-22 22:13:14 346
原创 算法汇总
一、二分查找/****************************************************** 二分查找* 在[low,high)中查找等于value的元素* 若找到,返回其下标;若没有等于value的元素则返回-1******************************************************/#incl
2017-03-22 10:39:20 1325
转载 Linux下C语言执行MySQL语句
本文出自 http://blog.csdn.net/shuangde800执行SQL语句的增、删、改、查的主要API函数为:[cpp] view plain copy int mysql_query(MYSQL *connection, const char *query); 函数接收参数
2017-03-18 21:50:06 1112
转载 会话、前台进程组、后台进程组、孤儿进程等相关概念
终端登录:当系统自举时,内核创建ID为1的进程,也就是init进程,init进程系统进入多用户状态。init进程读取/etc/inittab,对每一个允许登录的终端设备,init调用一次fork,它所生成的子进程执行(exec)getty程序。getty为终端设备调用open函数,如果没有请求则阻塞,如果有请求,则文件描述符0,1,2就设置到该设备,然后getty输出”login“
2017-03-11 16:01:55 1156
转载 守护进程的创建方法和步骤
守护进程(Daemon)是运行在后台的一种特殊进程。守护进程(Daemon)是一种运行在后台的一种特殊的进程,它独立于控制终端并且周期性的执行某种任务或等待处理某些发生的事件。由于在Linux中,每个系统与用户进行交流的界面成为终端,每一个从此终端开始运行的进程都会依附于这个终端,这个终端被称为这些进程的控制终端,当控制终端被关闭的时候,相应的进程都会自动关闭。但是守护进程却能突破这种限制,它脱离
2017-03-11 15:44:33 1115
数字信号处理理论算法与实现(胡广书).的Matlab代码及参考文献
2015-12-06
设计模式实训教程代码
2014-12-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人