自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 收藏
  • 关注

原创 WEB攻防- Oracle基本注入

与MySQL不同的是,在MySQL中查询语句可以直接是:select 1,2,但是在Oracle中就必须跟一个表名,但是如查询日期是没有表的,就可以使用dual这个表,如下:select sysdate from dual,对于rownum来说它是oracle系统顺序分配为从查询返回的行的编号,返回的第一行分配的是1,第二行是2,依此类推,这个伪字段可以用于限制查询返回的总行数。select * from user_tab_columns 查询出当前用户的字段。它是不支持用>号的,只能是=1或者<n。

2024-09-23 14:27:45 858

原创 Promise的使用

Promise是异步编程的一种解决方案,在ES6中被统一规范,其实是一个构造函数。

2024-08-15 16:52:46 703

原创 Vue3快速上手

点我sum+1

2024-08-12 14:53:48 947

原创 MSSQL注入前置知识

Microsoft SQL server也叫SQL server / MSSQL,由微软推出的关系型数据库,默认端口1433常见搭配C# / .net + IIS+mssql。

2024-07-24 16:21:48 987

原创 WEB攻防-通用漏洞-SQL 读写注入-MYSQL&MSSQL&PostgreSQL

高权限注入指的是攻击者通过SQL注入漏洞,利用具有高级权限的数据库账户(如MYSQL的root用户、MSSQL的sa用户、PostgreSQL的dba用户)执行恶意SQL语句。这些高级权限账户能够访问和修改数据库中的所有数据,甚至执行操作系统级别的命令。

2024-07-23 17:15:19 704

原创 WEB攻防-通用漏洞-SQL注入-MYSQL-union一般注入

id=-1' union select 1, 2,group_concat(column_name) from information_schema.columns where table_schema=database() and table_name='users'#id=1' and 1=1%23,(%23代表#),其中and 1=1为真,所以返回结果相同。id=1' and 1=2%23,由于and 1=2为假,根据条件判断sql执行后是null的,所以返回未查到数据。

2024-07-22 16:16:39 1011

原创 WEB攻防-通用漏洞-SQL注入-ACCESS一般注入与偏移注入

同样的使用union select来做,不同的是不需要知道列名,而是通过偏移爆出数据,但前提是查询的表必须比当前查询到的列数小,如该案例在上文中查询到22列,则如果要查询admin表的列数必须比当前查询的22列的列数少,因为要把查询到表塞进当前查询到列中,不理解往下看例子。union select 1,2,3,4,5,6,7,8,9,10,11,admin.* from admin --回显错误。在偏移6位之后回显正常,则知道admin有6列 ,而3和15是回显位,这里选择使用15回显。

2024-07-11 14:56:11 936

原创 WEB攻防-通用漏洞SQL注入- 基本原理

SQL注入是指攻击者通过在Web表单输入或URL参数中插入(或“注入”)恶意的SQL代码片段,这些代码片段被后端数据库系统错误地当作SQL语句的一部分执行,从而实现对数据库的非法查询、修改、删除等操作。这种攻击方式违背了“数据与代码分离”的基本原则,使得用户输入的数据被当作代码执行,进而引发安全漏洞。

2024-07-11 09:54:25 259

原创 SpringBoot复习

使用@PropertySource加载配置文件案例:1.在resource目录创建一个自定义配置文件test.propertiestest.id=102.自定义配置类MyProperties@Data@Configuration //声明为自定义配置类@PropertySource("classpath:test.properties") //指定配置文件位置@EnableConfigurationProperties(MyProperties.class) //开启对应配置类的属性注入功能。

2024-06-20 20:58:33 1596 3

原创 WEB攻防-Python-PYC 反编译&CTF 与 CMS-SSTI 模版注入

SSTI,即服务器端模板注入(Server-Side Template Injection),是一种注入攻击,漏洞成因就是服务端接收了用户的恶意输入以后,未经任何处理就将其作为 Web 应用模板内容的一部分,模板引擎在进行目标编译渲染的过程中,没有严格控制对用户的输入,使用了危险的模板,导致执行了用户插入的可以破坏模板的语句,因而可能导致了敏感信息泄露、代码执行、GetShell 等问题。

2024-06-05 19:41:23 1208

原创 WEB攻防- Javascript项目特性- Node.js框架安全-识别审计-验证绕过

从代码中可以看出 ,上传图片功能是通过js验证的,限制了大小和格式,我们可以通过浏览器禁用js代码来绕过,需要注意如果网站是纯js开发,直接禁用可能会导致网站打不开等问题。这时候可以用网站下载器可以去下载到源码,然后在进行禁用来绕过验证,但这个案例没能下载到源码,也不能直接禁用js,但是上传视频没有验证。Node.js CVE-2017-14849 漏洞产生的原因主要涉及Node.js 8.5.0版本中的一个特定逻辑错误,特别是在处理目录路径的normalize操作时。源代码简短,引入多个js文件。

2024-06-04 13:17:55 1001

原创 WEB攻防-JAVAWEB项目常见漏洞

1.JavaWeb常见安全及代码逻辑2.目录遍历&身份验证&逻辑&JWT3.访问控制&安全组件&越权&三方组件本篇主要了解以上问题在javaweb中的呈现,第一个重点理解URL与javaweb代码框架的对应方式,java在没有代码的情况下是很难渗透的,下面的内容也是针对白盒的第二个重点是JWT身份验证/攻击。

2024-05-31 15:59:54 1023

原创 WEB攻防-PHP特性-piwigoCMS审计实例

注意在rate_picture方法中对rate的值使用了in_array方法来判断传进来的值是否在$conf['rate_items']中,并且没有加上第三个参数true,也就是说传进来的值不做类型判断,并且会强转来完成in_array的判断。找到$conf['rate_items']在config_default.inc.php定义,根据in_array可以知道rate只要前面数字在$conf['rate_items'],后面可以写任何字符,如1,select,都是可以满足条件的。上传一张图片测试一下。

2024-04-27 17:45:06 376 1

原创 WEB攻防-PHP特性-metinfoCMS审计实例

可以看到会返回一个默认路径。可以看到代码中 if(substr(str_replace($_M['url']['site'], '', $dir),0,4) == 'http' && strpos($dir, './') === false)这个条件用于检测一个路径。源码中, $dir = str_replace(array('../','./'), '', $_GET['dir']);下面又if($_M['form']['pageset']),这里又直接执行else赋值给$img。

2024-04-26 20:53:26 1624 2

原创 WEB攻防-PHP特性-函数缺陷对比

这通常用于处理以特定前缀开头的数字字符串,如十六进制(以 "0x" 或 "0X" 开头)或八进制(以 "0" 开头),如果字符串不符合这些模式,它会被尝试解析为十进制数。注意:如果字符串不是一个有效的八进制或十六进制数(即,如果它包含除了 0-7 之外的字符对于八进制,或者除了 0-9 和 a-f(不区分大小写)之外的字符对于十六进制),那么。运算符比较两个字符串时,如果字符串以“0e”开头,后面跟着一系列数字,PHP 会将这些字符串解释为科学记数法表示的浮点数,并进行数值比较而不是字符串比较。

2024-04-26 12:37:17 891 1

原创 WEB攻防-.NET特性常见漏洞

C#编译成DLL或EXE文件:C#编写的代码在编译时会生成DLL或EXE文件,这些文件包含MSIL代码。.NET提供运行时环境:.NET框架的CLR提供运行时环境,负责将MSIL代码编译成机器码并执行。DLL文件是.NET程序集:在.NET中,DLL文件是程序集的一种形式,它包含可由多个应用程序共享的代码。因此,C#、.NET和DLL文件之间的关系是:C#编写的代码编译成包含MSIL代码的DLL或EXE文件,这些文件在.NET框架的CLR运行时环境中执行。

2024-04-25 13:11:49 1268 1

原创 WEB攻防-IIS中间件PUT漏洞

它扩展了HTTP 1.1,在GET、POST、HEAD等几个HTTP标准方法以外添加了一些新的方法,如PUT,使应用程序可对Web Server直接读写,并支持写文件锁定(Locking)及解锁(Unlock),还可以支持文件的版本控制。可以像在操作本地文件夹一样操作服务器上的文件夹,该扩展也存在缺陷,利用PUT方法可直接向服务器上传恶意文件,控制服务器。如果移动成功,源资源通常会被删除,而内容则出现在新的 URI 下。使用桂林老兵工具上传一句话木马 ,直接上传asp会根据特性被解析,无法上传。

2024-04-24 11:34:14 611

原创 WEB攻防-ASP中间件IIS文件上传解析安全漏洞

通过抓包给文件加上1.asp;.的前缀,使他保存的时候可以被执行。当加上前缀上传成功后,这时候就触发了IIS6.0默认不解析。号后面的内容,可以看到文件被当作asp解析了。IIS6.0默认不解析。如果不修改前缀上传就是正常访问图片。写一个木马文件,并改为jpg后缀。文件夹下的文件当成asp解析。我们用菜刀就可以链接成功了。解析,相当于分号截断。

2024-04-23 23:21:23 280

原创 WEB攻防-ASP中间件IIS 短文件名探针安全漏洞

IIS短文件名探针安全漏洞是一个与IIS(Internet Information Services)服务相关的安全问题。该漏洞主要是由于HTTP请求中使用了旧DOS 8.3名称约定(SFN)的代字符(〜)波浪号,这使得远程攻击者有可能在Web根目录下得到文件和文件夹名称,即使这些名称本不应该被访问。Windows 支持以 8.3 格式生成与 MS-DOS 兼容的(短)文件名,以允许基于 MS-DOS 或 16 位 Windows的程序访问这些文件。利用工具:iis_shortname_Scan.py。

2024-04-23 21:39:40 374 3

原创 WEB攻防-ASP安全-ASP后门植入连接

创建一个文本文件,输入一句话木马b,然后另存为ANSI编码。使用winhex打开刚创建的文本文件,将光标定位到首位,选择编辑-->粘贴0字节,添加2个字节。提交后文本被过滤了,所以菜刀无法连接,需要使用其他方法绕过过滤。将添加的两个字节改为FFFE, 保存再打开该文件,就完成了转码。会被执行解析,所以当进行访问时,会直接以asp的形式进行执行。根据asp被执行的特性,就可以使用菜刀执行连接了。┼攠數畣整爠煥敵瑳∨慡≡┩戾。配置启用父路径和主页指向。

2024-04-22 21:09:49 653 2

原创 WEB攻防-ASP安全-MDB下载

当Web站点提供文件下载功能时,如果没有对下载请求进行充分的验证和过滤,或者服务器配置不当,就可能产生文件下载漏洞。攻击者可以利用这个漏洞,通过修改请求参数或尝试猜测或遍历服务器上的文件路径,从而绕过正常的访问控制,下载到不应该被访问到的文件,包括数据库文件(如MDB文件)。打开后台目录192.168.10.133/Admin/Admin_Index.asp报错问题是常规配置错误,需要在属性-->主目录-->配置-->选项下勾选启动父路径。选择网站-->默认网站-->右键-->打开。

2024-04-22 15:08:24 1177 1

原创 微信小程序全局配置

tabBar 是移动端应用常见的页面效果,用于实现多页面的快速切换。小程序中通常将其分为: 底部 tabBar 顶部 tabBar 注意: tabBar中只能配置最少 2 个、最多 5 个 tab 页签 当渲染顶部 tabBar 时,不显示 icon,只显示文本。

2024-04-16 17:13:59 1649 4

原创 WXSS模板样式

rpx ( responsive pixel )是微信小程序独有的,用来解决屏适配的尺寸单位。使用 WXSS 提供的 @import 语法,可以导入外联的样式表。

2024-04-16 14:40:06 700

原创 WXML模板语法-条件与列表渲染

在小程序中,使用wx:if="{{condition}}"来判断是否需要渲染该代码也可以用wx:elif和wx:else来添加else判断。

2024-04-13 16:15:30 1228

原创 WXML模板语法-事件绑定

事件是渲染层到逻辑层的通讯方式。通过事件可以将用户在渲染层产生的行为,反馈到逻辑层进行业务的处理。如点击组件反馈给逻辑层,逻辑层针对该事件进行业务处理tapbindtap或bind:tap手指触摸后马上离开,类似于HTML中的click事件inputbindinput或bind:input文本框的输入事件changebindchange或状态改变时触发当事件回调触发的时候,会收到一个事件对象eventtypeString事件类型timeStamp。

2024-04-13 14:56:35 700

原创 微信小程序开发遇到的奇奇怪怪的问题

开发者工具新建项目默认开启全局Skyline渲染引擎,因为Skyline不支持原生导航栏,所以就没显示原生导航栏了。如果想用回原生导航栏,可以把app.json里面的 "renderer": "skyline", 去掉后再试试。如果还是不行,再看下是否有配置 navigationStyle:'custom' ,如有可以删掉后再试试。

2024-04-11 13:39:50 573 1

原创 WXML模板语法-数据绑定

Page({data : {//字符串类型数据info : "这是一条data信息",//数组类型的数据})

2024-04-11 13:39:36 535

原创 微信小程序入门

WXML(WeiXin Markup Language)是小程序框架设计的一套标签语言,用来构建小程序页面的结构,其作用类似于网页开发中的 HTML。

2024-03-31 21:10:33 813

原创 springboot请求与响应(常用注解)

它可以作用在类或者方法上,当作用在类上时,表示该类中的所有方法都将映射到指定的URL路径下。@GetMapping和@PostMapping注解是@RequestMapping注解的特例,分别用于处理HTTP的GET请求和POST请求。这个注解主要应用在控制器(Controller)类的方法参数上,它指示一个方法参数应该被绑定到请求体的内容。这个注解在处理需要读取 Cookie 信息的场景时非常有用,比如验证用户的会话状态、获取用户的偏好设置等。这个注解主要用于将请求中的参数绑定到控制器方法的参数上。

2024-03-30 21:57:42 832 1

原创 IOC & DI 专题

三层架构是一种常见的软件架构模式,它将应用程序划分为请求处理、响应数据层、业务逻辑层和数据访问层。每层之间通过接口进行通信,实现了高内聚、低耦合的设计原则。在传统的开发中,通常会将三层架构的代码都写着一个方法里而为了让类、接口、方法的复杂度更低,可读性更强,扩展性更好,也更利用后期的维护,我们应该尽可能让一个类或一个方法,就只做一件事情,只管一块功能。对上面代码进行拆分,可以得到下面三个类虽然这样使代码的复用性,便于维护,利于拓展,还需要考虑一个软件的设计原则,那就是高内聚, 低耦合问题。

2024-03-30 16:23:46 999

原创 Mybatis动态SQL

随着用户输入或外部条件变化而变化的SQL语句,就称为动态SQL上面SQL语句如果使用中条件查询中实际上是有问题的 ,如果缺参,是查询不出为们想要的数据的,如果我们传入userList("张",null,null,null)查询出来是空的而使用动态SQL就可以解决这个问题。

2024-03-27 17:30:12 505

原创 MyBatis-XML映射文件(SQL)

通过XML映射文件来配置SQL语句。

2024-03-27 16:42:34 313

原创 MyBatis基础操作-查询

mapper接口测试但是发现有三个值为null,这是和Mybatis的数据封装有关系。

2024-03-27 15:55:00 382

原创 MyBatis基础操作-更新

mapper接口添加更新@Update注解和方法。

2024-03-27 14:10:44 136

原创 MyBatis基础操作-新增

在一些场景中,需要获取数据库数据到主键,但在默认情况下是不会返回主键值的,想要插入后获取主键值可以添加@Option注解,keyProperty = "id"表示生成的主键值封装到实体对象的id属性中,useGeneratedKeys = true代表获取返回到主键值。注意:insert方法传入一个实体对象,#{}中要和实体类的属性名一致才能获取到属性值。mapper接口中添加插入@Insert注解。

2024-03-27 13:58:04 187

原创 Mybatis基础操作-删除

SQL语句:delete from emp where id = 12编写mapper接口,使用@Delete注解进行删除操作编写测试类,返回影响的数据行配置MyBatis的日志,查看预编译的SQL语句,输出到控制台在application.properties添加编译测试,可以看到预编译sql语句,?代表#{}占位符,发送给数据库时Parameters的参数会替换掉?

2024-03-27 12:45:08 329

原创 MyBatis基础操作-环境准备

在File->settings->Build,Execution,Deployment-->Compiler-->中更改Target bytecode version版本。LocalDate和LocalDateTime报错,是因为idea配置了低版本,但语法需要更高版本的。创建springboot工程,并在application.properties引入数据库连接信息。在File-->Project Structure中更改Language level 版本。准备Mapper接口Emapper。

2024-03-26 22:19:36 235

原创 MyBatis入门-lombok工具包

lombok是一个实用的java类库,能通过注解的形式自动生成构造器/Getter/Setter/equals/hashcode/toString等方法,并可以自动生成日志变量、简化java开发,提高效率提供了更综合的生成代码功能(@Getter+@Setter+@EqualsAndHashcode+@toString)

2024-03-26 16:40:47 165

原创 MyBatis入门-数据库连接池

在maven的conf文件夹自带的settings.xml文件下添加镜像地址,或者新建一个settings文件在IDEA中配置指向该文件,以下采用新家settings.xml方法。功能:获取连接 Connection get Connection() throws SQLException;pom.xml中添加maven依赖,需要倒入druid-spring-boot-starter依赖才会生效。常见产品:C3P0;Druid(阿里开源,常用);Hikari(默认自带,常用)

2024-03-26 15:41:54 429

原创 MyBatis入门

MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。

2024-03-24 20:43:15 404

ASP后门植入连接环境

菜刀来源:掌控安全,aspcms来源:0x00实验室,winhex来源:脚本之家 自行判断有没有毒,最好全部都虚拟机跑

2024-04-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除