freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

有趣的Hack-A-Sat黑掉卫星挑战赛——寻找恒星2(spacebook)
2023-09-08 22:24:20

国家太空安全是国家安全在空间领域的表现。随着太空技术在政治、经济、军事、文化等各个领域的应用不断增加,太空已经成为国家赖以生存与发展的命脉之一,凝聚着巨大的国家利益,太空安全的重要性日益凸显[1]。而在信息化时代,太空安全与信息安全紧密地结合在一起。

2020年9月4日,美国白宫发布了首份针对太空网络空间安全的指令——《航天政策第5号令》,其为美国首个关于卫星和相关系统网络安全的综合性政策,标志着美国对太空网络安全的重视程度达到新的高度。在此背景下,美国自2020年起,连续两年举办太空信息安全大赛“黑掉卫星(Hack-A-Sat)”,在《Hack-A-Sat太空信息安全挑战赛深度解析》一书中有详细介绍,本文介绍了Hack-A-Sat黑掉卫星挑战赛的寻找恒星2(spacebook)这道赛题的解题过程。

题目介绍

Hah, yeah we're going to do the hard part anyways! Glue all previous parts together by identifying these stars based on the provided catalog. Match the provided boresight refence vectors to the catalog refence vectors and tell us our attitude.

Note: The catalog format is unit vector (X,Y,Z) in a celestial reference frame and the magnitude (relative brightness).

主办方会给参赛者提供一组星跟踪器采集的视轴参考向量及一个恒星星表文件,需要参赛者找出所给的这组视轴参数向量对应于星表中的哪些恒星。给出的资料有:

(1)一个名为test.txt的星表文件,如下所示:

-0.39583099355293055, 0.6692758836646708, -0.6287985496864428, 549.9232096852126

-0.8912108978962917, 0.4303739957331406, -0.1432527810116657, 549.8906388660128

0.8730250724147718, -0.06053415121223649, -0.4839037502150574, 549.8281992010124

0.5766685364817782, -0.5737126653589886, -0.5816417940955148, 549.8203413924854

0.8191971072535494, 0.551135150756946, -0.15863840981154367, 549.79198969258

-0.2320191629542476, 0.970938780363461, 0.058694061099272984, 549.6522476158632

0.7723882312921294, -0.5936410706624491, 0.2258466280114831, 549.6493433115664

-0.021909452062874646, 0.8066279251360686, -0.5906533385167525, 549.6084453807888

-0.8069799480109646, 0.5741518044652129, -0.1383223370882696, 549.442974460083

0.301 0984563136024, -0.055717385034129624, 0.9519639135022526, 549.3888588185571

......(2500行)

一行记录表示一颗恒星的相关信息,一共2500行记录,每行记录包含4个实数值,分别表示天球参考系中指向某颗恒星的单位向量的X、Y、Z坐标值及其星等值。

(2)给出了一个链接地址,使用nc连接到题目给的链接,主办方会给出星跟踪器采集到的一组恒星的视轴参考向量(同样是单位向量)及其星等值,并提示参赛者输入以逗号分隔(Comma Delimited)的恒星索引号,如下所示:

0.035 368, -0.058379, 0.997668, 547.760123

-0.144629, -0.022389, 0.989233, 528.025938

-0.002316, 0.138258, 0.990394, 521.169578

0.125 532, 0.056219, 0.990495, 505.191381

-0.079841, 0.099571, 0.991822, 144.315759

0.121 710, 0.098140, 0.987702, 144.312263

-0.031208, -0.120816, 0.992184, 143.113849

0.133 831, -0.078498, 0.987890, 141.683541

-0.037156, -0.108394, 0.993413, 135.191914

0.088 317, 0.073993, 0.993340, 133.262711

-0.004563, -0.102131, 0.994761, 132.474245

0.083 323, 0.042916, 0.995598, 132.472222

0.077 675, 0.111580, 0.990715, 130.693843

0.135 888, -0.092686, 0.986379, 128.918977

-0.157975, -0.055097, 0.985905, 125.374960

0.036 331, 0.073013, 0.996669, 125.316658

-0.166874, -0.028219, 0.985574, 123.343301

-0.074863, 0.100607, 0.992106, 113.451411

-0.040146, -0.123775, 0.991498, 112.245561

-0.033133, 0.123094, 0.991842, 110.490947

-0.054205, -0.081821, 0.995172, 104.244132

-0.021976, -0.088077, 0.995871, 70.820201

0.114 232, -0.083900, 0.989905, 56.002567


Index Guesses (Comma Delimited):

1,2

More stars please, try again! (5 required)

Index Guesses (Comma Delimited):

Timeout, Bye

尝试输入2个数据(如“1,2”)进行测试,题目会提示参赛者至少需要提交5个恒星索引号。另外,如果30s未完成解答,题目会显示“Timeout, Bye”并退出。但是再次连接服务器,给出的数据与上一次连接时的数据相同,可以多次作答。

编译及测试

本挑战题的代码位于spacebook目录下,查看generator、challenge、solver目录下的Dockerfile,发现其中使用的是python:3.7-slim,为了加快题目的编译进度,首先在spacebook目录下新建一个文件sources.list,内容如下:

deb https://mirrors.aliyun.com/debian/ bullseye main non-free contrib

deb-src https://mirrors.aliyun.com/debian/ bullseye main non-free contrib

deb https://mirrors.aliyun.com/debian-security/ bullseye-security main

deb-src https://mirrors.aliyun.com/debian-security/ bullseye-security main

deb https://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib

deb-src https://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib

deb https://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib

deb-src https://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib

将sources.list复制到generator、challenge、solver目录下同,修改generator、challenge、solver目录下的Dockerfile,在所有的“FROM python:3.7-slim AS python_env”语句下方添加:

ADD sources.list /etc/apt/sources.list

在所有pip命令后添加指定源:

-i https://pypi.tuna.tsinghua.edu.cn/simple

打开终端,进入spacebook所在目录,执行命

# CTF # 网络安全技术 # 太空网络安全 # 太空安全
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录