CSRF漏洞
什么是CSRF CSRF(Cross-site request forgery)跨站请求伪造,也被称为“one click attack”或者session riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用。CSRF通过伪装来自受信任用户的请求来利用受信任的网站。与XSS攻击相比,CSRF攻击往往不大流行(因此对其进行防范的资源也相当稀少)和难以防范,所以被认为比XSS更具危险性。 下图是一次完整的CSRF攻击示意图。用户登录并访问了一正常网站,登录成功后,网站返回用户的身份标识Cookie给用户。当用户访问到恶意网站时,恶意网站强制用户去向正常网站发送恶意请求。由于用户此时拥有正常网站的Cookie,所以就相当于攻击者盗用了用户身份,去访问了正常(目标)网站。 一次完整的CSRF攻击,需要受害用户需要完成两个步骤: 1.登录正常网站,并在本地生成Cookie。 2.在不退出正常网站的情况下,访问恶意网站。 CSRF 背景与介绍 CSRF(Cross Site Request...
XXE漏洞
DTD: //EMPTY关键字表示元素是个空元素 <!ELEMENT root ANY> //ANY关键字表示元素中可以出现任何内容,也可以为空 //下面这个声明表示root中可以有文本,也可以是空 <!ELEMENT root (#PCDATA)> //()表示一个分组,其中是放的允许在元素出现的内容,#PCDATA表示文本 <!ELEMENT root (child)> //child是子元素的名称,这个声明表示root中必须且只能有一个child元素 <!ELEMENT root (child1,child2)> //以逗号分隔,表示子元素依次出现 <!ELEMENT root (child1|child2)> //竖线与"OR"的意思相近,表示root元素中只能出现child1或child2 <!ELEMENT root (child?)> //root中child子元素可以出现一次,也可以不出现 <!ELEMENT root...
mysql-handler
mysql查询语句-handler Mysql HANDLER语句 HANDLER语法 12345678910HANDLER tbl_name OPEN [ [AS] alias]HANDLER tbl_name READ index_name { = | <= | >= | < | > } (value1,value2,...) [ WHERE where_condition ] [LIMIT ... ]HANDLER tbl_name READ index_name { FIRST | NEXT | PREV | LAST } [ WHERE where_condition ] [LIMIT ... ]HANDLER tbl_name READ { FIRST | NEXT } [ WHERE where_condition ] [LIMIT ... ]HANDLER tbl_name CLOSE 通过HANDLER tbl_name...
mysql预处理语句prepare
concat()字符串连接 CONCAT()函数用于将多个字符串连接成一个字符串 CONCAT(str1,str2,…) 返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。或许有一个或多个参数。 如果所有参数均为非二进制字符串,则结果为非二进制字符串。 如果自变量中含有任一二进制字符串,则结果为一个二进制字符串。一个数字参数被转化为与之相等的二进制字符串格式;若要避免这种情况,可使用显式类型 cast。SELECT CONCAT(CAST(int_col AS CHAR), char_col) 123456MariaDB [test]> select concat("AB","C");+------------------+| concat("AB","C") |+------------------+| ABC |+------------------+ CONCAT_WS(separator,str1,str2,…)...
python沙箱逃逸
https://www.jianshu.com/p/a77c50dfebcb 12345678910111213#!/usr/bin/env python# encoding: utf-8cnt=0for item in [].__class__.__base__.__subclasses__(): try: if 'os' in item.__init__.__globals__: print cnt,item cnt+=1 except: print "error",cnt,item cnt+=1 ...
php_PDO_prepare安全性
Are PDO prepared statements sufficient to prevent SQL injection? addslashes() Versus mysql_real_escape_string() SQL injection that gets around mysql_real_escape_string() GBK内码查询 宽字节注入 上文中提到了这种类型的攻击对于任何字符编码都是可能的,只要这个编码集中有一个以0x5c结尾的有效多字节字符,并且0x27是单字节字符': 例如gbk中0xbf5c是一个有效的多字节字符,而0x27是一个有效的单字符',而utf-8不符合这样的要求。符合要求的编码集有:big5, cp932, gb2312, gbk and...
安洵杯2019
...
ichunqiu2020
...
恶意mysql服务器
DDCTF中出现过,其他比赛已经记不清了,主要是分析利用mysql中Load data infile这个命令交互过程的一部分 Load data infile LOAD DATA INFILE语句以非常高的效率从文本文件中读取行并插入到表中。导入的文件名必须以字符串格式给定,一般我们常用的语句是这样的: 1load data infile "/etc/passwd" into table test FIELDS TERMINATED BY '\n'; mysql server会读取服务端的/etc/passwd然后将数据按照’\n’分割插入表中,但现在这个语句同样要求你有FILE权限,以及非local加载的语句也受到secure_file_priv的限制 123mysql> load data infile "/etc/passwd" into table test FIELDS TERMINATED BY '\n';ERROR 1290 (HY000): The MySQL server...
js_Script_src
定义和用法 src 属性规定外部脚本文件的 URL。 如果您希望在网站中的多个页面上运行相同的 JavaScript,就应该创建外部 JavaScript 文件,而不是重复编写相同的脚本。把脚本文件以 .js 扩展名进行保存,然后在 标签中使用 src 属性引用它。 注意:外部脚本文件不能包含 标签。 注意:正确地引用您写入脚本的外部脚本文件。 语法 1<script src="URL"> 注意 一旦<script>标签使用了src属性,它就作为一个引用外部文件而非编辑页面内部的脚本的元素。也就是说,使用src表明该元素适用于引用一个外部 Javascript 文件,且不是为了在页面中插入一段 Javascript 脚本。 这表明,不应当也无必要(而且无用)在使用了src属性的标签中再插入代码。这会引起不可预知的结果,并且,至少在大多数浏览器中,这没有实际效果。假如向本文实例添加下列代码: 123<script src="demo_script_src.js"> ...


