自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java安全基础-反射机制

反射是一种想象你在餐厅点餐,服务员递给你一本菜单。传统方式是根据菜单上的菜品直接点单,但反射就像你拿到菜单后,不仅能看到菜品名称,还能知道每道菜的原料、烹饪方法,甚至可以要求厨师按照你的方式调整口味。Java 反射机制赋予程序在运行时动态解析类结构的能力,让代码具备了类似 "透视" 的魔法。

2025-04-02 15:36:22 902

原创 WEB攻防-Java安全&SPEL表达式&SSTI模版注入&XXE&JDBC&MyBatis注入

靶场搭建。

2025-03-27 17:59:18 1065

原创 WEB攻防- PHP反序列化&属性权限特征&原生类 TIPS&字符串逃逸&CVE 绕过漏洞

创建异常对象(产生异常返回xss代码) -> 传入序列化后的异常对象 -> echo 反序列化得到异常对象 -> 对象不能转字符串(异常返回xss代码) -> echo触发toString将返回的xss代码输出被浏览器渲染。原生类(Native class)是指在编程语言的核心库或标准库中提供的类,这些类是语言本身提供的,而不是由用户自定义的类。PHP原生类使用场景:在代码中没有看到魔术方法的情况下使用的,如果对方环境没有开启相关模块功能,那么是没用的。影响版本:PHP 5<5.6.25;

2025-03-21 18:18:37 875

原创 WEB攻防-PHP反序列化-字符串逃逸

1.PHP在反序列化时,语法是以;作为字段的分隔,以} 作为结尾,在结束符之后的任何内容不会影响反序列化的后的结果classpeoplepublic$namelili;s:2:"20";2.根据长度判断内容s:4:"lils:3:"age";s:2:"20";其中lil是name的值3.其中字符串必须以双引号包裹,不能不写或以单引号包裹;注意。

2025-03-19 18:00:34 976

原创 WEB攻防-PHP反序列化&POP链构造&魔术方法流程&漏洞触发条件&属性修改

是将对象转换为可存储/传输格式(字符串/字节流)的过程,则是将序列化后的数据还原为对象的过程。这种机制常见于:pickle模块序列化serialize():对象转换为数组或字符串等格式反序列化unserialize():将数组或字符串等格式转换成对象在 PHP 中,serialize()函数仅对对象属性进行序列化,而不处理对象方法。它把对象属性转为字符串存入序列化结果,方便对象在文件存储、网络传输或不同请求间传递。

2025-02-11 13:33:46 1037 1

原创 WEB攻防-RCE代码&命令执行&过滤绕过&异或无字符&无回显方案&黑白盒挖掘

RCE,全称 Remote Code Execution,也就是远程代码执行。简单来说,它是一种非常危险的安全漏洞。正常情况下,我们访问一个网站或者使用某个应用程序,只能按照开发者设定好的功能来操作。但要是存在 RCE 漏洞,攻击者就能打破这种限制,在目标服务器上执行他们自己编写的代码。

2025-02-09 20:11:35 787

原创 WEB攻防-文件下载&文件读取&文件删除&目录遍历&目录穿越

1. 白盒审计流程:功能点抓包-代码文件的特定函数-寻变量控制-构造测试2. 黑盒流程:查看网站是否有文件下载的功能在文件下载中一般会遇到两种情况:常规下载URL:http://www.xiaodi8.com/upload/123.pdf在常规下载中,如过下载一个代码文件,比如1.php是不行的,因为.php结尾会被执行,不会被下载也看不到源码。而在高版本中00截断也是不存在的可能存在安全URL:http://www.xiaodi8.com/xx.xx?下载的文件以参数值去发送解析下载。

2025-02-08 17:17:43 1276

原创 WEB攻防-通用漏洞_文件包含_LFI_RFI_伪协议编码算法_代码审计

文件包含是软件开发的一种代码复用的常见手段,通过包含某个代码段文件,来引用其内部函数。比如,实现过滤功能,每个需要过滤的地方,都进行一次过滤的编写;这时候可以通过把过滤代码独立写在一个文件,然后每个需要过滤的地方,只需进行一次文件包含调用过滤函数就可以了;include在包含过程如果出现错误,会跑出警告,但继续执行require在出现错误,则直接报错并退出程序java.io.File、java.io.FileReader等。

2025-02-05 18:47:02 793

原创 WEB攻防-通用漏洞_XML_XXE_无回显_DTD实体_伪协议_代码审计

XXE漏洞全称XML ExternalEntity Injection,即xml外部实体注入漏洞,XXE漏洞发生在应用程序解析XML输入时,没有禁止外部实体的加载,导致可加载恶意外部文件,造成文件读取(获取文件内容)、命令执行、内网端口扫描、攻击内网网站等危害。1. 抓包获取得到Content-Type或数据类型为xml时,直接尝试进行xml语言payload的测试;2. 不管获取的Content-Type类型或数据传输类型是否是xml,均可尝试修改数据包为xml的payload后提交测试xxe;

2025-02-03 17:37:25 785

原创 WEB攻防-通用漏洞_CSRF_SSRF_代码审计_同源策略_加载函数

至此,$articleurl 的值为我们最后的payload: file://C:/Windows/System32/drivers/etc/hosts ,直至此时,$article 的值为读取到的本地任意文件的内容,再往下看 get_filter_html()函数,这里过滤掉html标签,不影响我们的payload。发现其中有一个正则过滤: preg_match_all('/<a ([^>]*)>([^\/a>].*)<\/a>/i', $html, $out);action=add。

2025-02-01 17:35:38 929

原创 第39天:WEB攻防-通用漏洞_CSRF_SSRF_协议玩法_内网探针_漏洞利用

CSRF全称:Cross-site request forgery,即,跨站请求伪造,也被称为 “One Click Attack” 或 “Session Riding”,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用。举个生活中的例子:就是某个人点了个奇怪的链接,自己什么也没输入,但自己的qq号或其他的号就被盗了。即该攻击可以在受害者不知情的情况下以受害者名义伪造请求,执行恶意操作,具有很大的危害性。

2025-01-31 16:55:43 1055

原创 WEB攻防-通用漏洞_XSS跨站_绕过修复_http_only_CSP_标签符号

alert(1)

2025-01-17 13:51:06 1555

原创 WEB攻防-通用漏洞_XSS跨站_权限维持_捆绑钓鱼_浏览器漏洞

构造代码: 把代码放在自己网站上,比如,我的博客上(或者本地网站上)的test.html,只要对方访问192.168.199.1:8081/web/test.html,在beef就可以看到对方上线,② 模仿flash下载官方地址(https://www.flash.cn/ )做出本地页面:http://127.0.0.1:8081/ (构造一个相似域名的网址,更逼真)

2025-01-14 15:12:03 1010

原创 WEB攻防-通用漏洞_XSS跨站_MXSS_UXSS_FlashXSS_PDFXSS

所以导致了变异,利用这个特性,从而绕过DOMPurify库,或者在第三方的可信机制认可的情况下预览时,对原网页内容进行提取和处理的过程中,将原本无害的XSS Payload进行了转码操作,于是导致了Payload 变异而产生了XSS,具体可以看下面的参考文章。很多网站有文件上传功能,把带有跨站代码的PDF进行上传上去,然后得到文件的下载地址(必须是直连地址),把地址发给别人访问,如果这个平台没有做PDFXSS的漏洞进行过滤,当别人打开这个链接,这个PDF就会弹窗,这样就可以做成一个钓鱼地址。

2025-01-14 14:25:01 1353

原创 WEB 攻防-通用漏-XSS 跨站脚本攻击-反射型/存储型/DOM&BEEF-XSS

XSS攻击,全称为跨站脚本攻击,是指攻击者通过在网页中插入恶意脚本代码,当用户浏览该网页时,恶意脚本会被执行,从而达到攻击目的的一种安全漏洞。这些恶意脚本可以窃取用户的敏感信息,如Cookie、会话令牌等,或者诱导用户执行不安全的操作,如点击恶意链接、下载恶意软件等。

2025-01-12 17:57:10 1239

原创 WEB攻防-通用漏洞_文件上传_黑白盒审计流程

可以发现上面抓取的数据包,即没有文件的名字,也没有文件的后缀名格式。从这段代码中发现它的文件重命名后缀是通过原有文件拼接上去的,只做了前端限制,还是会接收文件的绝对地址,所以此处是有漏洞的。多次测试图像上传,发现对原来的文件进行覆盖,重新上传后,刚刚获取的http://127.0.0.1:8100/uploadfile/member/3/45x45.jpeg失效。尝试访问http://127.0.0.1:8100/uploadfile/member/1/45x45.php,结果返回404。

2025-01-08 16:37:04 884

原创 Nginx 解析漏洞复现

漏洞原理该漏洞与Nginx、php版本无关,属于用户配置不当造成的解析漏洞。该配置项的作用是如果访问的.php文件不存在,则采用上层路径,例如访问,一般情况下.php文件是不存在的就会将/test.png解析。这个配置在php.ini 中可以修改,默认是开启的配置项默认为空,该文件规定了什么后缀名当做php代码执行,这个配置在php-fpm的配置文件中:通常在nginx.conf的配置文件或者include包含的其他配置文件下有以下信息上述代可以理解为:Nginx解析到.php。

2025-01-06 20:09:18 652

原创 Nginx 文件名逻辑漏洞(CVE-2013-4547)

CGI:是一种协议,定义了web服务器传递的数据格式。FastCGI:优化版的CGI程序PHP-CGI:PHP解释器,能够对PHP文件进行解析并返回相应的解析结果PHP-FPM:FastCGI进程管理程序当Nginx得到一个用户请求时,首先对url进行解析,进行正则匹配,如果匹配到以.php后缀结尾的文件名,会将请求的PHP文件交给PHP-CGI去解析。

2025-01-05 19:19:07 1070

原创 Apache HTTPD 多后缀解析漏洞

Apache HTTPD 支持一个文件拥有多个后缀,并为不同后缀执行不同的指令。以上就是Apache多后缀的特性。如果运维人员给.php那么,在有多个后缀的情况下,只要一个文件含有.php后缀的文件即将被识别成PHP文件,没必要是最后一个后缀。利用这个特性,将会造成一个可以绕过上传白名单的解析漏洞。

2025-01-05 17:13:52 774

原创 Apache HTTPD 换行解析漏洞(CVE-2017-15715)

如果是白名单可能不行(在白名单里面才可以上传jpj,png,gif 等),但是如果没有考虑以最后一个点为后缀,通过1.jpg.php%0a的形式也可能能够绕过。前三行的内容意思是将所有以“.php”为后缀的文件内容当作PHP代码进行解析,但是却使用了“$”进行文件匹配,这就导致了漏洞的产生。该漏洞属于用户配置不当所产生的,看一下配置文件信息,输入命令“cat /etc/apache2/conf-available/docker-php.conf”,如图所示。老版本可以通过hex修改,修改完,文件正常上传。

2025-01-05 10:16:15 1494

原创 WEB攻防-通用漏洞-文件上传-二次渲染-代码变异

接上篇。

2025-01-03 16:37:09 1071

原创 WEB攻防-通用漏洞-文件上传-js验证-MIME验证-user.ini-语言特征

文件上传漏洞是指攻击者上传了一个可执行文件(如木马、病毒、恶意脚本、WebShell等)到服务器执行,并最终获得网站控制权限的高危漏洞。

2024-12-29 16:24:47 853

原创 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 995 1

原创 Promise的使用

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

2024-08-15 16:52:46 757

原创 Vue3快速上手

点我sum+1

2024-08-12 14:53:48 1006

原创 MSSQL注入前置知识

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

2024-07-24 16:21:48 1103

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

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

2024-07-23 17:15:19 781

原创 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 1051

原创 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 1112

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

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

2024-07-11 09:54:25 332

原创 SpringBoot复习

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

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

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

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

2024-06-05 19:41:23 1376

原创 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 1114

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

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

2024-05-31 15:59:54 1402

原创 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 424 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 1709 2

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

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

2024-04-26 12:37:17 951 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 1536 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 746

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

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

2024-04-23 23:21:23 332

ASP后门植入连接环境

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

2024-04-23

空空如也

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

TA关注的人

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