- 博客(23)
- 收藏
- 关注
原创 命令执行漏洞
Web应用程序的某些功能需要调用一些可以执行系统命令的函数,如果函数或者函数的参数能被用户控制,同时没有对用户的输入做严格的过滤,就能将恶意命令通过命令连接符拼接到正常的命令中,从而随意地执行系统命令,实现getshell。PHP 函数Java 对应方式Python 对应方式ASP 对应方式(经典 ASP)ASP.NET 对应方式system()Runtime.exec() + 输出流读取exec()Runtime.exec() + 输出流读取。
2025-07-28 16:11:39
856
原创 文件包含漏洞
当服务器开启allow_url_include选项时可以通过某些特性函数如:include() , require() , include_once() , require_once() 利用url去动态地包含文件,若未对文件进行来源审查,就会导致任意文件读取或者任意命令执行。分类:(1)本地文件包含服务器的php配置中,allow_url_include启用(on)(2)远程文件包含服务器的php配置中,allow_url_fopen和allow_url_include启用(on)
2025-07-22 19:43:00
1033
原创 安装cobalt_Strike_4.7
1、使用root管理员用户,将cobalt_Strike_4.7.7z压缩包放到kali中的/root目录下。查看是不是网络的问题,如果是网络的问题,就在/etc/resolv.conf文件中修改DNS。2、因为后缀是7z的压缩包,要先安装p7zip-full工具。将生成的木马文件进行压缩。3、安装好p7zip-full工具,就进行解压。Cobalt strike工具里面就会有记录。选中artifact木马文件进行压缩。最后生成了安装包.exe的文件。遇到权限问题,要进行提权。双击运行安装包.exe。
2025-07-21 16:35:34
341
原创 XSS跨站脚本攻击
学习XSS攻击需要学习者具备有html基础知识和JavaScript基础知识,这里就不再详细讲述,没有基础的同学可以去补一下再来学习XSS会轻松很多!下面我们在用到html和javascript知识时会挑重点看一下。JavaScript 与 Java 没有任何关系,它们只是名字相似而已。JavaScript 的代码嵌入在 HTML 里,直接在客户端的浏览器上执行,属于前端语言。大多数的 XSS 代码都是使用 JavaScript 语言编写的,JavaScript 能做到什么效果,XSS 的威力就有多大。所有
2025-07-16 16:52:52
591
原创 SQLi-labs靶场第29-65关练习
当某字符的大小为一个字节时,称其字符为窄字节当某字符的大小为两个字节时,称其字符为宽字节。所有英文默认占一个字节,汉字占两个字节。
2025-07-10 20:46:12
1038
原创 SQLi-labs靶场第21-25关练习
第二十一关和二十关很像,唯一不一样就是cookie哪里不是账户名而是一串字符。可以看出来是base64编码,并且知道闭合方式是单引号加小括号 ')这关首先要知道正确的账号和密码,可以去前些关拿到账号和密码。
2025-07-05 17:05:03
717
原创 Proxy SwitchyOmega MV3扩展安装教程
下载插件,并在浏览器提示下选择保留点击浏览器右上角 ⋮ > 扩展程序 > 点击 管理扩展程序。
2025-07-02 14:47:52
655
原创 SQLi-labs靶场第1-10关练习
定义:SQL注入就是指Web应用程序对用户输入数据的合法性没有判断,前端传入后端的参数是攻击者可控的,并且参数带入数据库查询,攻击者可以通过构造不同的SQL语句来实现对数据库的任意操作。union查询注入是最基础的注入。在SQL中, UNION 操作符用于合并两个或多个 SELECT 语句的结果。union 查询注入利用 UNION 关键字可以追加一条或者多条额外的 SELECT 查询,并将结果追加到原始查询中。
2025-07-01 20:28:54
588
原创 sql注入之window环境SQLi-labs靶场搭建
SQLi-labs是由印度程序员开发,专门用于练习SQL注入的靶场,其中包含各种注入姿势,并适用于GET和POST等场景。主要包含:基础错误注入、报错注入、盲注、MySQL读写文件、更新查询注入、插入查询注入、Header头部注入、二次注入、绕过WAF、绕过addslashes函数、绕过mysql_real_escape_string函数、堆叠注入。二、Windows搭建SQLi-labs靶场。
2025-06-30 16:37:12
486
原创 C++面向对象--3.函数提高
函数名可以相同,提高复用性同一个作用域下函数名称相同函数参数类型不同,或者个数不同,或者顺序不同函数的返回值不可以做为函数重载的条件。
2025-06-25 15:52:13
213
原创 C++面向对象--1.内存分区模型
C++程序在执行时,将内存大方向分为4个区域内存四区意义:不同区域存放的数据,赋予不同的生命周期,给我们更大的灵活编程。
2025-06-24 19:28:05
272
原创 C++基础入门--8.结构体
struct 结构体名 { 结构体成员列表 };struct 结构体名 变量名struct 结构体名 变量名 = { 成员1值,成员2值...}定义结构体时顺便创建变量示例:8.3 结构体数组将自定义的结构体放入到数组中方便维护struct 结构体名 数组名[ 元素个数 ] = { { },{ }, ... { } }
2025-06-24 15:29:35
116
原创 C++ 基础入门--2.数据类型
C++规定在创建一个变量或者常量时,必须要指定出相应的数据类型,否则无法给变量分配内存。2.单引号内只能有一个字符,不可以是字符串。数据类型存在的意义:给变量分配合适的内存空间,不造成资源浪费。1.在显示字符型变量时,用单引号将字符括起来,不要用双引号。现阶段我们常用的转义字符有:\n \\ \t。: char 变量名[ ] = "字符串值"sizeof (数据类型 / 变量)不能显示出来的ASCII字符。2.双精度小数double。字符型变量用于显示单个字符。布尔数据类型代表真或假的值。
2025-06-19 19:32:02
262
原创 C++ 基础入门--1.C++初识
编写一个C++程序共分为4步:创建项目创建文件编写代码运行程序右键源文件,选择添加→新建项作用:在代码中加一些说明和解释,方便自己或其他程序员阅读代码两种格式1.单行注释: // 描述信息 通常放在一行代码的上方,或者一条语句的末尾,对该行代码说明2.多行注释:/* 描述信息 */ 通常放在一段代码的上方,对该段代码做整体说明提示:编译器在编译代码时,会忽略注释的内容作用:给一段指定的内存空间起名,方便操作这段内存语法:数据类型 变量名 = 初始值;示例:int a = 1
2025-06-19 15:51:18
282
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人