首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

最近攻防记录

最近一直处于攻防泥沼里面。当然我能做就是防护,我没有能力也不会去攻击任何人! 首先交代背景:一套所谓开源代码程序,在线上运营!当然没有二次开发(重点,要考),我也只是受人之托,来帮看看!...(1)字段通过url传递,直接修改数据库(坑1) (2)XSS攻击(坑2) (3)能登陆后台,添加管理员账号(坑3,最大坑) (4)DDOS攻击,这个交给了厂商 下面来说我解决方案: 第(1)问题我是通过...binlog日志找到坑,在上一篇文章已经写了一篇,感兴趣可以看看《有时候binlog能救你一条命》 第(2)个问题大家百度网上一大堆解决方案:过滤用户输入 检查用户输入内容中是否有非法内容。...居然加了一个超级管理员,emmmm,我就有点慌了,这顶级坑啊。...当然代码千千万万,我使用了一个简单快捷方法 1.敏感操作加了一个密码,不输入密码不能操作数据(被逼无奈) 2.限制ip登陆,不是白名单ip,无权限访问服务器后台程序 3.登陆后台加一个口令,无口令用户强制退出

32720
您找到你想要的搜索结果了吗?
是的
没有找到

记录 git 一个很奇怪错误,以及最近心态调整

git 一个很奇怪错误 ACMOI_Journey on  master [⇡] via ?...这只是我被安排三个并行任务中一个。本来想每天学学 PAT ,今天白天就没得空学,有点失望。我明天(11号)早七点起床把今天没学 PAT 补上,上午十一点前学不完 10 号课我是狗。艹。...有时候(比如刚才)确实心情陷入烦躁,诸多因素混合在一起: 学习计划没有如期进行,心里着急 很神奇 bug ,比如 git 那个 由于机器性能引起问题,我束手无策 值得一提是,除了我自己,没人知道我烦躁...这都没什么,别被破事影响了咱美好生活。 一款经典游戏《魔兽争霸:冰封王座》最后几关战役里,随着游戏难度提升我们英雄单位阿尔塞斯等级却在降低,这是对难度双重提升。...期待我对自己定位越来越清晰,不越界彰显自己有多“能”、不妄自菲薄、不放弃梦想,一定要挺过接下来一年荒诞研究生工作。

83340

MySQL我可以讲一个小时

一行数据被多个事务依次修改过后,在每个事务修改完后,Mysql会保留修改前数据undo回滚日志,并且用两个隐藏字段trx_id和roll_pointer把这些undo日志串联起来形成一个历史记录版本链...中包含了磁盘部分数据页一个映射,作为访问数据库一个缓冲,从数据库读取一个数据,就会先从这个 buffer 中获取,如果 buffer 中没有,就从这个磁盘中获取,读取完再放到这个 buffer 缓冲中...这个时间是由参数 wait_timeout 控制,默认值是 8 小时。第二步:查询缓存。MySQL 拿到一个查询请求后,会先到查询缓存看看,之前是不是执行过这条语句。...每个数据页上存放是完整记录,而在非数据页索引页中,存放仅仅是键值及指向数据页偏移量,而不是一个完整记录。如果定义了主键,InnoDB会自动使用主键来创建聚集索引。...整个图片,歇歇眼,文章大多不换行,排版基本都是一块,接近九千字,口速快的话,一个小时差不多可以讲完,这篇博文主要是针对面试口述,备战面试。啊,又要面试啦,太难了。

42330

MySQL我可以讲一个小时

一行数据被多个事务依次修改过后,在每个事务修改完后,Mysql会保留修改前数据undo回滚日志,并且用两个隐藏字段trx_id和roll_pointer把这些undo日志串联起来形成一个历史记录版本链...中包含了磁盘部分数据页一个映射,作为访问数据库一个缓冲,从数据库读取一个数据,就会先从这个 buffer 中获取,如果 buffer 中没有,就从这个磁盘中获取,读取完再放到这个 buffer 缓冲中...这个时间是由参数 wait_timeout 控制,默认值是 8 小时。第二步:查询缓存。MySQL 拿到一个查询请求后,会先到查询缓存看看,之前是不是执行过这条语句。...每个数据页上存放是完整记录,而在非数据页索引页中,存放仅仅是键值及指向数据页偏移量,而不是一个完整记录。如果定义了主键,InnoDB会自动使用主键来创建聚集索引。...整个图片,歇歇眼,文章大多不换行,排版基本都是一块,接近九千字,口速快的话,一个小时差不多可以讲完,这篇博文主要是针对面试口述,备战面试。啊,又要面试啦,太难了。

44020

R记录 - 最近在学习写一个R包

最近在学习写一个R包,本文对学习过程做一个简单整理。 因为课题需要,最近需要实现一个数据可视化功能。因为ggplot2提供了扩展接口,所以就想着基于ggplot2实现这个功能。...开始还比较顺利,通过ggproto创建了一些新Geom类。在拓展一些新功能时候发现调用另一个函数总是失败,我猜想可能是和environment有关。...一般来说,当你需要通过R实现一个功能并想要分享给别人时,R包是一个不错选择。对于像我一样新手来说,从简单功能(比如R包只包含几个简单函数)开始应该是比较合适。...我这次学习参照了一些在线文档,回过头来才发现这些文档都是出自Hadley Wickham(以及他合作者)之手。在此列出这些文档,以供参考。...比如第一节讲变量,提到R里面变量引用采用了copy-on-modify策略,也就是说只有当引用变量对值修改时才会进行一份拷贝。

21610

一个小时学会MySQL数据库

并且其内容会在 MySQL 重新启动时丢失 Merge 将一定数量 MyISAM 表联合而成一个整体,在超大规模数据存储时很有用\ Archive 非常适合存储大量独立,作为历史记录数据。...为了方便快捷使用MySQL我已经准备好了一个绿化了MySQL,解压后就可以直接使用,不需要任何配置。...表 table:数据是保存在表内,保存在一个表内数据,应该具有相同数据格式 行:行用于记录数据 记录:行内数据 列:列用于规定数据格式 字段:数据某个列 ? SQL:用来管理数据语言。...将处理好结果看作是一个集合,按照记录出现顺序,索引从0开始。 limit 起始位置, 获取条数 省略第一个参数,表示从索引0开始。...limit 获取条数 h. distinct, all 选项 distinct 去除重复记录 默认为 all, 全部记录 /* UNION */ -----------------

3.8K80

一个小时学会MySQL数据库

三大范式 第一范式(1NF) 所谓第一范式(1NF)是指在关系模型中,对列添加一个规范要求,所有的列都应该是原子性,即数据库表每一列都是不可分割原子数据项,而不能是集合,数组,记录等非原子数据项...并且其内容会在 MySQL 重新启动时丢失 Merge 将一定数量 MyISAM 表联合而成一个整体,在超大规模数据存储时很有用\ Archive 非常适合存储大量独立,作为历史记录数据。...BlackHole 黑洞引擎,写入任何数据都会消失,一般用于记录 binlog 做复制中继EXAMPLE 存储引擎是一个不做任何事情存根引擎。...表 table:数据是保存在表内,保存在一个表内数据,应该具有相同数据格式 行:行用于记录数据 记录:行内数据 列:列用于规定数据格式 字段:数据某个列 ? SQL:用来管理数据语言。...●输入m获取文章目录 来自:博客园,点击“阅读原文”可直接查看 作者:张果 扩展阅读 ---- 详述一次大量删除导致MySQL慢查过程 不用Oracle?

1.7K30

一个小时学会MySQL数据库

将处理好结果看作是一个集合,按照记录出现顺序,索引从0开始。 limit 起始位置, 获取条数 省略第一个参数,表示从索引0开始。...LIMIT 接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数,第一个参数指定第一个返回记录偏移量,第二个参数指定返回记录最大数目。...[],[type]表示他区别于关键字,但是mysql却是 `,也就是按键1左边那个符号 7 mssql支持getdate()方法获取当前时间日期,但是mysql里面可以分日期类型和时间类型,获取当前日期是...,但是mysql却是 `,也就是按键1左边那个符号 7 mssql支持getdate()方法获取当前时间日期,但是mysql里面可以分日期类型和时间类型,获取当前日期是cur_date(),当前完整时间是...如果插入一个即有合法元素又有非法元素记录MySQL 将会保留合法元素,除去非法元素。   一个 SET 类型最多可以包含 64 项元素。

3.7K20

一个小时学会MySQL数据库

并且其内容会在 MySQL 重新启动时丢失 Merge 将一定数量 MyISAM 表联合而成一个整体,在超大规模数据存储时很有用\ Archive 非常适合存储大量独立,作为历史记录数据。...为了方便快捷使用MySQL我已经准备好了一个绿化了MySQL,解压后就可以直接使用,不需要任何配置。...表 table:数据是保存在表内,保存在一个表内数据,应该具有相同数据格式 行:行用于记录数据 记录:行内数据 列:列用于规定数据格式 字段:数据某个列 ? SQL:用来管理数据语言。...将处理好结果看作是一个集合,按照记录出现顺序,索引从0开始。 limit 起始位置, 获取条数 省略第一个参数,表示从索引0开始。...limit 获取条数 h. distinct, all 选项 distinct 去除重复记录 默认为 all, 全部记录 /* UNION */ -----------------

3.1K30

MySQL中如何随机获取一条记录

随机获取一条记录是在数据库查询中常见需求,特别在需要展示随机内容或者随机推荐场景下。在 MySQL 中,有多种方法可以实现随机获取一条记录,每种方法都有其适用情况和性能特点。...方法一:使用 ORDER BY RAND() 这是最常见随机获取一条记录方法之一: SELECT * FROM testdb.test_tb1 ORDER BY RAND() LIMIT 1; 虽然简单直接...testdb.test_tb1)) AS id) AS t2 WHERE t1.id >= t2.id ORDER BY t1.id LIMIT 1; JOIN 和 RAND() 函数可以通过JOIN一个随机生成...ID来获取记录,这种方法比直接使用 ORDER BY RAND() 效率更高。...合理选择适合情况随机获取记录方法,可以有效提高数据库查询效率。 通过以上方法和推荐,可以更好地在 MySQL 数据库中实现随机获取一条记录功能,满足不同场景下需求。

24410

MYSQL获取得最后一条记录语句

方法1:select max(id) from tablename 方法2:select last_insert_id(); 在MySQL中,使用auto_increment类型id字段作为表主键,...但是在具体生成id时候,我们操作顺序一般是:先在主表中插入记录,然后获得自动生成id,以它为基础插入从表记录。这里面有个困 难,就是插入主表记录后,如何获得它对应id。...下面通过实验说明:   1、在连接1中向A表插入一条记录,A表包含一个auto_increment类型字段。   2、在连接2中向A表再插入一条记录。   ...结果是相同。       ...注:使用select last_insert_id()时要注意,当一次插入多条记录时,只是获得第一次插入id值,务必注意!

3.9K30

最近不好面试题记录

面试是一种对自己知识漏洞查漏补缺。 记录一下自己面试中表现不佳问题 1:如果在保证3个接口全部返回成功后,执行相应函数?...同时执行p1和p2,并在它们都完成后执行then: Promise.all([p1, p2]).then(function (results) { console.log(results); // 获得一个.../json) 3.请求中带有自定义头部 其他情况都为简单请求 option请求出现情况有两种 1:获取后台服务器支持HTTP通信方式 2:对跨域请求进行preflight request (预检请求...) 预检请求首先需要向另外一个域名资源发送一个Http Options请求头,以检查实际发送请求是否是安全,options请求是浏览器自发起preflight request(预检请求) preflight...如果有多个函数声明,则是由最后一个函数声明覆盖之前所有的声明。 5:如何在nodejs中使用多线程

1.3K10

随机记录如何获取之 ORACLE MYSQL SQL SERVER POSTGRESQL

随机记录获取这样需求可能会经常有,例如审核,抽查,采样,等需求,当然还有抽奖程序这样需求。 每种数据库获取随机记录方法也不尽相同,下面就来盘点一下各种数据库在取随机数方法和可能存在问题。...1 MYSQL 一般情况下MYSQL 随机记录获取都是通过 rand() 函数来做,具体方法 select * from dd_batch_info order by rand() limit...说完了 MYSQL ,继续来看看 ORACLE 我们还是要取随机记录,怎么办, select * from ext_log where rownum <=3 order by dbms_random.value...,每次生产一个随机记录 1.1秒 而 不采用这样方法直接使用最上面的方法,则需要2.2秒,以上测试时在100万数据行中进行测试。...最后,来点鸡汤,最近听了一个关于特斯拉发展经历一个音频节目,给我印象是,任何新创业都是经历了很多不确定性,可能大家一致看好东西,项目,在发展过程中,失败了,或成功了,可能事后总结出很多失败和成功原因

1.9K10

LeetCode MySQL 1369. 获取最近第二次活动(over窗口函数)

名为 username 用户在 startDate 到 endDate 日内有一次活动 写一条SQL查询展示每一位用户 最近第二次 活动(倒数第二次) 如果用户仅有一次活动,返回该活动 一个用户不能同时进行超过一项活动...| 2020-02-11 | 2020-02-18 | +------------+--------------+-------------+-------------+ Alice 最近第二次活动是从...2020-02-24 到 2020-02-28 旅行, 在此之前 2020-02-21 到 2020-02-23 她进行了舞蹈 Bob 只有一条记录,我们就取这条记录 来源:力扣(LeetCode...解题 先选出只有一次活动的人记录 select * from UserActivity group by username having count(*)=1 {"headers": ["username...# Write your MySQL query statement below select username, activity, startDate, endDate from ( select

60420

JS offsetParent属性:获取最近上级定位元素

在js中,offsetParent 属性表示最近上级定位元素。...要获取相对父级元素位置,可以先判断 offsetParent 属性是否指向父元素,如果是,则直接使用 offsetLeft 和 offsetTop 属性获取元素相对于父元素距离;否则分别获得当前元素和父元素距离窗口坐标...//获取指定元素距离父元素左上角偏移坐标//参数:e表示获取位置元素//返回值:返回对象直接量,其中属性x表示x轴偏移距离,属性y表示y轴偏移距离function getP (e) { if...; var y = o.y - p.y; } return { //返回当前元素距离父元素坐标 "x" : x, "y" : y },}下面调用该扩展函数获取指定元素相对父元素偏移坐标...var box = document.getElementById("box");var o = getP (box); //调用扩展函数获取元素对应父元素偏移坐标console.log(o.x);

7.6K40
领券