渔樵对问「上」
作者:康节先生
渔者垂钓于伊水之上。樵者过之,弛担息肩,坐于磐石之上,而问于渔者。
曰:“鱼可钩取乎?”
曰:“然。”
曰:“钩非饵可乎?”
曰:“否。”
曰:“非钩也,饵也。鱼利食而见害,人利鱼而蒙利,其利同也,其害异也。敢问何故?”
渔者曰:“子樵者也,与吾异治,安得侵吾事乎?然亦可以为子试言之。彼之利,犹此之利也;彼之害,亦犹此之害也。子知其小,未知其大。鱼之利食,吾亦利乎食也;鱼之害食,吾亦害乎食也。子知鱼终日得食为利,又安知鱼终日不得食为害?如是,则食之害也重,而钩之害也轻。子知吾终日得鱼为利,又安知吾终日不得鱼不为害也?如是,则吾之害也重,鱼之害也轻。以鱼之一身,当人之食,是鱼之害多矣;以人之一身,当鱼之一食,则人之害亦多矣。又安知钓乎大江大海,则无易地之患焉?鱼利乎水,人利乎陆,水与陆异,其利一也;鱼害乎饵,人害乎财,饵与财异,其害一也。又何必分乎彼此哉!子之言,体也,独不知用尔。”樵者又问曰:“鱼可生食乎?”
曰:“烹之可也。”曰:“必吾薪济子之鱼乎?”曰:“然。”曰:“吾知有用乎子矣。”曰:“然则子知子之薪,能济吾之鱼,不知子之薪所以能济吾之鱼也。薪之能济鱼久矣,不 ...
后端开发-PHP基础
PHP 简述php,超文本预处理器,是一种通用的开源脚本语言
在一个 php 文件中可以包括以下内容:
php 文件可以包含文本、html、JavaScript代码和 PHP 代码
php 代码在服务器上执行,结果以纯 HTML 形式返回给浏览器
php 文件的默认文件扩展名为 “PHP”
php 的使用
可以生成动态页面内容
可以创建、打开、读取、写入、关闭服务器上的文件
可以收集表单数据
可以发送和接收 cookies
可以添加、删除、修改数据库中的数据
可以限制用户访问网站上的一些页面
可以加密数据
基本语法格式1234567<?php phpinfo(); //php语句 (单行注释) /* 多行注释 */?>
变量的命名规范
1、必须以 $ 开始,后面跟变量名
2、必须以字母或者下划线开始
3、变量名智能包含数字字母和下划线
4、 变量名不能包含空格
static 关键字的作用
当一个函数完成时,它里面所有的变量通常都会被删除。
然而有时候你会希望其中某一个局部变量不会被删除。
要做到这一点,就可以在第一次声明这个变量时加一个 ...
Web安全-信息收集
知己知彼,百战不殆
whois信息
得到注册人的信息
邮箱
电话号码
姓名
有的站长喜欢拿自己的姓名的拼音设置为密码,这样我们收集到信息之后可以生成一本字典,对网站的后台进行爆破
whois网站
whois.com
站长之家
http://whois.chinaz.com/
子域名
谷歌语法
site: 指定域名
在线平台
ip反查域名
https://dns.aizhan.com/
https://reverseip.domaintools.com/
微步社区
https://x.threatbook.cn/
站长工具
http://tool.chinaz.com/subdomain/
潮汐指纹
http://finger.tidesec.com/
使用工具爆破DNS服务器
Python
subDomainsBrute
https://github.com/lijiejie/subDomainsBrute
exe工具
Layer.exe
网页内蜘蛛爬虫
等待后续…..
google hacking
语法 ...
MySQL数据库基础
首先启动数据库
Linux :
1sudo systemctl start mysql
1mysql -h 数据库地址 -u 用户名 -p 密码
windows:
进入mysql 目录下的 bin 目录,打开cmd
查看数据库1show databases;
选择数据库1use [数据库名];
查看数据表1show tables;
查看表结构1desc [数据表名];
增创建一个数据库1create database [数据库名];
创建一个数据表1234create table [数据表名] ( 字段名1 字段类型, 字段名2 字段类型);
eg:
12345create table user ( id int(20), name varchar(255), password varchar(255));
增加数据1insert aaa values (值1,值2...);
注意 插入的字段数必须和表结构中原有的字段数相同
方法2:指定字段添加数据
1insert aaa (字段1,字段2) values (值1,值 ...
STL库(一)--Vector
Vector(动态数组)头文件1#include<vector>
初始化
定义一个vector 未初始化 输出 0
1vector<int> a;
定义一个长度为3 的vector 未初始化 输出 0
1vector<int> a(3);
定义一个长度为10 的vector 每个数赋值为 3
1vector<int> a(10,3);
将向量b中从下标 0 1 2(共三个)的元素赋值给a ,a 的类型为int型
1vector<int> a(b.begin(),b.begin+3);
从数组中获得初始值
12int b[7] = {1,2,3,4,5,6,7}vector<int> a(b,b+7);
输出
1234for(auto x:a){ cout << x << " ";}
size()1a.size() // 返回元素个数
resize()1a.resize() ...
STL库(二)--Pair[x,y]
Pair[x,y]12可以理解为(x,y)数学中的坐标表示小技巧:使用typedef定义 typedef pair<int,int> PII
头文件1#include<utility>
初始化123// 两种方法初始化pair<string,int> p("hello",1);p = make_pair("hello",1);
first() 和 second()123p("hello",1);p.first; //第一个元素 = hello;p.second; // 第二个元素 = 1;
嵌套(套娃)1vector<vector<pair<int,int>>> //与vector结合再写个vector结合即可
12//套娃操作 用pair 存储3个数据pair<int,pair<int,int>> p(1,{2,3});
Javascript基础
概述12javascript 是目前web开发中必不可少的脚本语言,js不需要编译即可运行运行在客户端,需要通过浏览器来解析执行 javascript 代码
常用于(1)修改 html 以及css代码(2)验证表单
嵌入方法内嵌式1理论上js可以写在任一个地方,但是一般写在head标签里或者body下
1234<script type="application/javascript">alert("内嵌式");</script><script>alert("内嵌式")</script>
外链式1首先新建一个文件类型为js的文件,然后在该文件中写js语句,通过script标签对引入到html页面中
1<script src="js文件路径地址">这里不能写js语句</script>
行内式12字节书写在标签身上,是一个简写的事件,所以又称之为事件属性。比如: onclick 单击事件
123<input type ...
Web安全-SQL注入
漏洞描述Web 程序代码中对于用户提交的参数未做过滤就直接放到 SQL 语句中执行,导致参数中的特殊字符打 破了 SQL 语句原有逻辑,黑客可以利用该漏洞执行任意 SQL 语句,如查询数据、下载数据、写入 webshell 、执行系统命令以及绕过登录限制等。
测试方法代码层最佳防御 sql 漏洞方案:采用 sql 语句预编译和绑定变量,是防御 sql 注入的最佳方法。
1234567( 1 )所有的查询语句都使用数据库提供的参数化查询接口,参数化的语句使用参数而不是将用户输入变量嵌入到 SQL 语句中。当前几乎所有的数据库系统都提供了参数化 SQL 语句执行接口,使用此接口可以非常有效的防止 SQL 注入攻击。( 2 )对进入数据库的特殊字符( ' <>&*; 等)进行转义处理,或编码转换。( 3 )确认每种数据的类型,比如数字型的数据就必须是数字,数据库中的存储字段必须对应为 int 型。( 4 )数据长度应该严格规定,能在一定程度上防止比较长的 SQL 注入语句无法正确执行。( 5 )网站每个数据层的编码统一,建议全部使用 UTF-8 编码,上下层编码 ...
PHP+MySQL「登录功能实现」
基础函数
mysqli_connect 函数
12mysqli_connect("HOST","username","password","dbname");//如果使用 sqli_select_db 函数,则最后一个参数可以省略
mysqli_select_db 函数
12$conn = mysqli_connect("HOST","username","password");mysqli_select_db($conn,"dbname");
mysqli_query 函数
123$sql = "SELECT * FROM test WHERE ...";mysqli_query($conn,$sql);// 会返回执行的结果
mysqli_fetch_array 函数
12$reault=mysqli_query(); // 声明一个变量接受sql语句执行的结果mysqli_fetc ...
CTF-MISC杂项
MISC 杂项文件的操作文件类型识别
file 命令 使用场景:不知道文件名,无法打开文件
winhex 使用场景:windows下通过文件头信息判断文件类型
常见文件头、文件尾
文件格式
文件头
文件尾
JPEG (jpg)文件头
FFD8FF
FF D9
PNG (png)文件头
89504E47
AE 42 60 82
GIF (gif) 文件头
47494638
00 3B
TIFF (tif)文件头
49492A00
XML (xml)文件头
3C3F786D6C
HTML (html)文件头
68746D6C3E
Adobe Acrobat (pdf)文件头
255044462D312E
ZIP Archive (zip)文件头
504B0304
504B
TAR (tar.gz)文件头
1F8B0800
RAR Archive (rar)文件头
526172211A0700 C43D7B00400700
C43D7B00400700
Wave (wav)文件头
57415645
AVI ...