网络安全
文章平均质量分 81
小莫神和他的的
这个作者很懒,什么都没留下…
展开
-
PE文件注入
PE文件注入首先开始窝们不得不提一下PEPE 的意思就是 Portable Executable(可移植的执行体)。它是 Win32环境自身所带的执行体文件格式。它的一些特性继承自 Unix的 Coff (common object file format)文件格式。“portable executable”(可移植的执行体)意味着此文件格式是跨win32平台的 : 即使Windows运行在非Intel的CPU上,任何win32平台的PE装载器都能识别和使用该文件格式。当然,移植到不同的CPU上PE执原创 2020-07-14 14:29:27 · 800 阅读 · 0 评论 -
MSSQL渗透备忘录
MSSQL原创 2022-07-07 20:53:59 · 1004 阅读 · 0 评论 -
SSRF
服务器端请求伪造**(也称为SSRF)是一个web**安全漏洞,它允许攻击者诱导服务器端应用程序向一个意想不到的位置发出请求。在典型的SSRF攻击中,攻击者可以让服务器连接到内部服务。在其他情况下,还能让服务器连接到任意外部系统。只要是能够发起网络请求的地方就可能有SSRF漏洞,例如:请求某个接口网站的数据,如获取文本内容、图片、软件等在线识图分享,订阅小实验可以去Server-side request forgery (SSRF)看一下还是蛮全的。可以使用的协议里大部分都是php的,除掉这一部分剩下的常见原创 2022-07-01 23:02:56 · 672 阅读 · 0 评论 -
傀儡进程注入
傀儡进程注入这个注入之所以叫傀儡进程注入是因为其做法是先创建一个A进程,然后将其内存替换成要执行的代码,而从外部来看就是最初创建的A进程。从我的视角来看跟PE文件注入还蛮像的,不同点在于PE文件注入是将代码注入进去后修改EntryPoint引导至注入的代码,而傀儡进程注入则更加简单暴力一些😋,把所有内存替换了。多亏了之前的一些PE基础因此没有特别费劲PE文件头格式解析本章详细讲解m0n0ph1的源码创建傀儡进程根据一开始所说,我们需要创建一个进程printf("Creating process原创 2022-05-08 22:37:42 · 1042 阅读 · 0 评论 -
远程线程注入
远程线程注入远程线程注入是最基础的一种注入方式,因为其调用了CreateRemoteThread()函数而得名。但是因为其是最基础的注入方式,调用了windows API而特征明显,所以非常容易被检测出来。这次的实验对象是notepad.exe#include <Windows.h>#include <stdio.h>#include <TlHelp32.h>#include <iostream>using namespace std;BOO原创 2022-05-04 21:23:52 · 671 阅读 · 0 评论 -
宽字节注入
宽字节注入宽字节注入基础GBK占用两字节,ASCII占用一字节,PHP中编码为GBK,函数执行添加的是ASCII编码,MySQL默认的字符集是GBK等宽字节字符集在数据库中使用了宽字符集(GBK,GB2312等),除了英文都是一个字符占两字节;MySQL在使用GBK编码的时候,会认为两个字符为一个汉字(ascii>128才能达到汉字范围);在PHP中使用addslashes函数的时候,会对单引号%27进行转义,在前边加一个反斜杠”\”,变成%5c%27;可以在前边添加%df,形成%df%原创 2020-10-22 17:21:22 · 247 阅读 · 0 评论 -
[千峰安全篇9]Public Key Infrastructure
Public Key Infrastructure1、PKI概述名称:Public Key Infrastructure 公钥基础设施作用:通过加密技术和数字签名保证信息的安全组成:公钥机密技术、数字证书、CA、RA2、信息安全三要素机密性完整性身份验证/操作的不可否认性3、哪些IT领域用到PKI1)SSL/HTTPS2)IPsecVPN3)部分远程访问VPN4、公钥加密技术作用:实现对信息加密、数字签名等安全保障加密算法:对称加密算法对称加密算法的特点是算法公开、原创 2020-10-16 17:09:42 · 627 阅读 · 1 评论 -
GET基于报错的注入
GET基于报错的注入报错注入形式上是两个嵌套的查询,即select…(select…),里面的select被称为子查询,他的执行顺序也是先执行子查询,再执行外面的select,双注入主要涉及到了几个SQL函数:rand()随机函数,返回0~1之间的某个值floor(a) 取整函数,返回小于等于a,且值最接近a的一个整数count()聚合函数也称作计数函数,返回查询对象的总数SQL COUNT(*) 函数定义和用法COUNT(*) 函数返回在给定的选择中被选的行数。语法SE原创 2020-10-15 21:56:30 · 422 阅读 · 0 评论 -
不再显示错误的盲注
不再显示错误的盲注意外的收获我在对lesson1重新测试单双引号闭合的时候发现了一个有趣的问题。lesson1的sql源码是SELECT * FROM users WHERE id='$id' LIMIT 0,1但是我惊讶的发现我单纯用双引号也能正确的查询原来如此下面用这样的table来进行实例讲解.idname0admin01admin1因为SQL在遇到这种情况是会自动转换为int类型比较,如果该字段是int的话。select * from `us原创 2020-10-13 22:00:31 · 482 阅读 · 0 评论 -
报错基于GET的注入
报错基于GET的注入GET-Error basedlesson1 Single quotes-String判断是数字型还是字符型这一点还是很好判断的,在有报错提示下的话。这里的例子基于sqli-labs的lesson1和lesson2。?id=1'得到报错You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right synta原创 2020-09-28 11:10:56 · 277 阅读 · 0 评论 -
MySQL数据库注入基础
MySQL数据库注入基础语言分类:解释型语言和编译型语言。解释型语言是一种在运行时由一个运行时组件解释语言代码并执行其中包含的指令的语言。在解释型语言中,如果程序与用户进行交互,用户就可以构造特殊的输入来拼接到程序中执行,从而让程序依据用户输入执行可能存在恶意行为的代码。MySQL 5.0以上版本默认定义了information_schema数据库,用来存储数据库元信息。其中具有表schemata(数据库名)、tables(表名)、columns(列名或者字段名)。我先在数据库中创建了一个名为sm原创 2020-09-27 16:27:51 · 180 阅读 · 0 评论 -
urldecode二次解析
urldecode二次解析一进入到页面,除了一段失恋文学也没有啥了。所以用开发者模式看一下网页源码。发现可疑代码。<?php if(preg_match("dlnuctfer",$_GET[ctf])) { echo("you can't pass."); exit();}原创 2020-09-27 13:16:23 · 583 阅读 · 0 评论