Wechall刷题(三)Crypto - Transposition I//The Beginning//hi

本文记录了解决Wechall-Training中的Crypto-TranspositionI挑战的过程,涉及置换密码的原理及应用,同时分享了远程登录服务器进行Linux操作的经验。

Crypto - Transposition I

首先此题的解决方案为:Wechall - Training: Crypto - Transposition I

此题目中涉及到的工具为:Transposition Cipher Solver

收获

  • 对置换密码的了解,大致过程为:加密:先分组(最后不足补齐);分别按组进行置换(置换矩阵)。解密使用逆置换矩阵即可

问题:

  • 密钥的选取?以及确定密钥之后如何确定置换矩阵?这个过程自动化(代码)实现的可能性?
  • 分组长度一定是密文长度的因子嗷!但不一定是明文长度的因子

The Beginning

这个题目简直耗费我太多时间,最大的原因在于:无知。话不多说,阐述解题经验吧

解决思路:

  • 这是一道“远程登录服务器,在远程服务器上进行简单的linux文件操作”的题目(由于对SSH的不了解,我以为这是对SSH的不同级别的攻击,或者是破解服务器端不同权限密码,想多了。。)

  • 按照题目给出的线索,“enable logfile Email”貌似不用管,我认为是可以及时通过邮件通知自己在服务器端的状态;“SET your SSH account”就是设置自己的SSH密码,也是登录远程服务器的私钥,输入两次;下边的答案是写出所有的level对应的solution,并用逗号分隔即可

  • 首先一分钟之内在linux终端下输入

    ssh -p 19198 leeham@warchall.net
  • 可以使用pwd(print working directory )命令查看当前工作路径;

  • ls -a: 查看当前路径下的所有文件;可以找到WELCOME.txt,使用 vim WELCOME.txt打开文件,阅读题目提示;提示所有的答案会在“/home/level”或“/home/user/yournick/level”中

  • cd /home/level:进入第一个提示目录;然后ls -a查看所有的文件,看到有0,1,2,3没有4,5;那么在这个目录下分别进入0,1,2,3想办法找到对应的solution。cd /home/user/leeham/level进入第二个提示目录;然后la -a看到有4,5,6但是我们只需要4,5哦,小心上瘾的去破解6哟

  • 首先进入0目录:vim README.txt即可找到答案;level 0: bitwarrior

  • 进入1目录:vim README.txt没有答案,说到“follow the black cursor”;进入/home/level/1/blur/pill/hats可以看到black gray white,想必提示的意思应该是在gray吧,进入gray,再继续读取目录即可得到答案;level 1: LameStartup

  • 进入2目录:”bash_history”这个东西提示了各个文件夹里边都存放了什么内容(建议了解Bash_Hiostory);其实根据这个内容,我们就可以知道答案在.porb/.solution中,那么直接去找就可以了;level 2: HiddenIsConfig

  • 进入3目录:直接阅读bash_history就可以了;level 3: RepeatingHistory

  • 进入4目录:阅读README.txt就可以了(可能还有一些其他问题,但是由于我的文件在服务器那边已经修改,所以无法全部还原);可以得到答案level 4: AndIknowchown

  • 进入5目录:通过README了解到需要先将/home/user/leeham/level这个目录设置权限,仅对自己可读写,使用到chmod命令;五分钟之后阅读solution.txt即可得到答案(感觉出题人很叼啊)level 5: OhRightThePerms

  • 最终答案:bitwarrior,LameStartup,HiddenIsConfig,RepeatingHistory,AndIknowchown,OhRightThePerms

此题中涉及到的命令:

收获:

  • 图解SSH,很清楚
  • SSH与telnet和R命令集的区别:telnet 明文传输,明文密码和数据;R命令 登陆和执行命令病等处系统的操作整合在一起;SSH 加密协议,密码加密传送,执行命令数据加密
  • 隐藏文件的读取
  • bash_history的功能

hi

解题思路:使用python计算(17591026060782+2)*17591026060781/2;(我当时用的java,而且复用的别人大整数加法的代码,但是跑了大半天都没有跑出来,后来才知道python不限位数orz….无知是罪)

收获:

  • 学python!学python!学python!

  • 关于java代码中得到的收获不在这里赘述,另移篇幅

`ln -s /usr/share/crypto-policies/DEFAULT/gnutls.txt /etc/crypto-policies/back-ends/gnutls.config` 是一个用于创建符号链接(软链接)的命令。下面详细解释其作用、使用场景、可能出现的问及解决办法。 ### 命令作用 此命令的主要作用是创建一个符号链接,将 `/usr/share/crypto-policies/DEFAULT/gnutls.txt` 文件链接到 `/etc/crypto-policies/back-ends/gnutls.config`。符号链接类似于 Windows 系统中的快捷方式,它指向原始文件,而非复制文件内容。当访问链接文件时,实际上是在访问原始文件。 ### 使用场景 - **集中管理配置**:在系统中,可能存在多个服务需要使用相同的加密策略配置文件。通过创建符号链接,可以将这些服务指向同一个原始配置文件,方便集中管理和更新配置。例如,不同的应用程序可能都依赖于 `/usr/share/crypto-policies/DEFAULT/gnutls.txt` 中的加密策略,通过创建符号链接,它们可以统一使用该配置。 - **保持兼容性**:某些服务可能期望在特定路径下找到配置文件,但实际的配置文件存储在其他位置。通过创建符号链接,可以让服务在期望的路径下找到配置文件,从而保持兼容性。例如,某些旧版本的服务可能默认从 `/etc/crypto-policies/back-ends/gnutls.config` 读取配置,而实际的配置文件存储在 `/usr/share/crypto-policies/DEFAULT/gnutls.txt` 中,通过创建符号链接可以解决这个问。 ### 可能出现的问及解决办法 - **原始文件不存在**:如果 `/usr/share/crypto-policies/DEFAULT/gnutls.txt` 文件不存在,创建符号链接时会失败。解决办法是确保原始文件存在,可以使用 `ls /usr/share/crypto-policies/DEFAULT/gnutls.txt` 命令检查文件是否存在。如果文件不存在,需要查找正确的文件路径或重新安装相关的加密策略包。 - **目标路径已存在文件**:如果 `/etc/crypto-policies/back-ends/gnutls.config` 已经存在,创建符号链接时会失败。解决办法是先备份或删除目标路径下的文件,再创建符号链接。可以使用 `mv /etc/crypto-policies/back-ends/gnutls.config /etc/crypto-policies/back-ends/gnutls.config.bak` 命令备份文件,然后再执行创建符号链接的命令。 - **权限问**:如果没有足够的权限在 `/etc/crypto-policies/back-ends/` 目录下创建符号链接,会导致创建失败。解决办法是使用 `sudo` 命令以管理员权限执行命令,例如 `sudo ln -s /usr/share/crypto-policies/DEFAULT/gnutls.txt /etc/crypto-policies/back-ends/gnutls.config`。 ### 命令示例 ```bash # 检查原始文件是否存在 ls /usr/share/crypto-policies/DEFAULT/gnutls.txt # 备份目标文件(如果存在) mv /etc/crypto-policies/back-ends/gnutls.config /etc/crypto-policies/back-ends/gnutls.config.bak # 创建符号链接 sudo ln -s /usr/share/crypto-policies/DEFAULT/gnutls.txt /etc/crypto-policies/back-ends/gnutls.config ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值