---恢复内容开始---

1、滴答滴

摩斯密码,http://tool.bugku.com/mosi/

2、聪明的小羊

从提示猜是栅栏密码,http://tool.bugku.com/jiemi/

3、ok

看格式是ook

https://tool.bugku.com/brainfuck/

4、这不是摩斯密码

看格式很像是brainfuck

试了下https://tool.bugku.com/brainfuck/ 解决

5、easy crypto

稍稍变化了一下的摩斯,还是用

http://tool.bugku.com/mosi/

但不知道为啥我提交的flag总是说不对。。

6、简单加密

最后的AA有点像是base64的==,又看了下A和=的整数只差了4,所以猜测是先base64,后凯撒

s=密文

ss = ''.join([char(ord(i)-4) for i in s])

r = base64.b64decode(ss)

7、散乱的密文

从提示看显然是置换密码

http://tool.bugku.com/jiemi/

8、+[]-

显然brainfuck

https://tool.bugku.com/brainfuck/

9、.!?

显然ook

https://tool.bugku.com/brainfuck/

10、一段base64

 from base64 import b64decode
import re
def conv(s,pattern,base):
t = re.findall(pattern,s)
t = [chr(int(i,base)) for i in t]
return ''.join(t) with open('1.txt','r') as f:
s = f.read()
s = b64decode(s).decode()
print(s[:100])
s = conv(s,r'\\(\d+)',8)
print(s[:100])
s = conv(s,r'\\x([0-9a-fA-F]+)',16)
print(s[:100])
s = conv(s,r'\\u([0-9a-fA-F]+)',16)
print(s[:100])
s = s[20:-1]
s = eval('['+s+']')
s = [chr(i) for i in s]
s = ''.join(s)
print(s[:100])
s = conv(s,r'&#x([0-9a-fA-F]+);',16)
print(s[:100])
s = conv(s,r'&#([0-9a-fA-F]+)',10)
print(s[:100])
s = s.replace('%7B',chr(0x7B))
s = s.replace('%7D',chr(0x7D))
print(s)

11、奇怪的密码

最前面两个字母是g和n。g和f相差一,n和l相差2.所以猜测是不是第一个-1,第二个字母-2.。。。这样子解密。

写个脚本试验下。

 s = 'gndk€rlqhmtkwwp}z'
ss = ''
c = 1
for i in s:
ss += chr(ord(i)-c)
print(ss)

输出为flag₧lei_ci_jiami

中间的₧是一个非ascii字符。手动整理成flag{lei_ci_jiami}提交就可以了。

话说在非ascii字符这里折腾了好久,以为是编码方面的问题,没想到直接去掉再加上大括号提交居然是对的。

12、凯撒大帝的奖励

根据提示应该是凯撒密码

丢到http://tool.bugku.com/jiemi/里,列出所有组合

MSW{byly_Cm_sIol_lYqUlx_yhdIs_Cn_Wuymul_il_wuff_bcg_pCwnIl_cm_u_Yrwyffyhn_guh_cz_sio_quhn_ni_ayn_bcm_chzilguncihm_sio_wuh_dich_om}
NTX{czmz_Dn_tJpm_mZrVmy_zieJt_Do_Xvznvm_jm_xvgg_cdh_qDxoJm_dn_v_Zsxzggzio_hvi_da_tjp_rvio_oj_bzo_cdn_diajmhvodjin_tjp_xvi_ejdi_pn}
OUY{dana_Eo_uKqn_nAsWnz_ajfKu_Ep_Ywaown_kn_ywhh_dei_rEypKn_eo_w_Atyahhajp_iwj_eb_ukq_swjp_pk_cap_deo_ejbkniwpekjo_ukq_ywj_fkej_qo}
PVZ{ebob_Fp_vLro_oBtXoa_bkgLv_Fq_Zxbpxo_lo_zxii_efj_sFzqLo_fp_x_Buzbiibkq_jxk_fc_vlr_txkq_ql_dbq_efp_fkclojxqflkp_vlr_zxk_glfk_rp}
QWA{fcpc_Gq_wMsp_pCuYpb_clhMw_Gr_Aycqyp_mp_ayjj_fgk_tGarMp_gq_y_Cvacjjclr_kyl_gd_wms_uylr_rm_ecr_fgq_gldmpkyrgmlq_wms_ayl_hmgl_sq}
RXB{gdqd_Hr_xNtq_qDvZqc_dmiNx_Hs_Bzdrzq_nq_bzkk_ghl_uHbsNq_hr_z_Dwbdkkdms_lzm_he_xnt_vzms_sn_fds_ghr_hmenqlzshnmr_xnt_bzm_inhm_tr}
SYC{here_Is_yOur_rEwArd_enjOy_It_Caesar_or_call_him_vIctOr_is_a_Excellent_man_if_you_want_to_get_his_informations_you_can_join_us}
TZD{ifsf_Jt_zPvs_sFxBse_fokPz_Ju_Dbftbs_ps_dbmm_ijn_wJduPs_jt_b_Fydfmmfou_nbo_jg_zpv_xbou_up_hfu_ijt_jogpsnbujpot_zpv_dbo_kpjo_vt}
UAE{jgtg_Ku_aQwt_tGyCtf_gplQa_Kv_Ecguct_qt_ecnn_jko_xKevQt_ku_c_Gzegnngpv_ocp_kh_aqw_ycpv_vq_igv_jku_kphqtocvkqpu_aqw_ecp_lqkp_wu}
VBF{khuh_Lv_bRxu_uHzDug_hqmRb_Lw_Fdhvdu_ru_fdoo_klp_yLfwRu_lv_d_Hafhoohqw_pdq_li_brx_zdqw_wr_jhw_klv_lqirupdwlrqv_brx_fdq_mrlq_xv}
WCG{livi_Mw_cSyv_vIaEvh_irnSc_Mx_Geiwev_sv_gepp_lmq_zMgxSv_mw_e_Ibgippirx_qer_mj_csy_aerx_xs_kix_lmw_mrjsvqexmsrw_csy_ger_nsmr_yw}
XDH{mjwj_Nx_dTzw_wJbFwi_jsoTd_Ny_Hfjxfw_tw_hfqq_mnr_aNhyTw_nx_f_Jchjqqjsy_rfs_nk_dtz_bfsy_yt_ljy_mnx_nsktwrfyntsx_dtz_hfs_otns_zx}
YEI{nkxk_Oy_eUax_xKcGxj_ktpUe_Oz_Igkygx_ux_igrr_nos_bOizUx_oy_g_Kdikrrktz_sgt_ol_eua_cgtz_zu_mkz_noy_otluxsgzouty_eua_igt_puot_ay}
ZFJ{olyl_Pz_fVby_yLdHyk_luqVf_Pa_Jhlzhy_vy_jhss_opt_cPjaVy_pz_h_Lejlsslua_thu_pm_fvb_dhua_av_nla_opz_pumvythapvuz_fvb_jhu_qvpu_bz}
AGK{pmzm_Qa_gWcz_zMeIzl_mvrWg_Qb_Kimaiz_wz_kitt_pqu_dQkbWz_qa_i_Mfkmttmvb_uiv_qn_gwc_eivb_bw_omb_pqa_qvnwzuibqwva_gwc_kiv_rwqv_ca}
BHL{qnan_Rb_hXda_aNfJam_nwsXh_Rc_Ljnbja_xa_ljuu_qrv_eRlcXa_rb_j_Nglnuunwc_vjw_ro_hxd_fjwc_cx_pnc_qrb_rwoxavjcrxwb_hxd_ljw_sxrw_db}
CIM{robo_Sc_iYeb_bOgKbn_oxtYi_Sd_Mkockb_yb_mkvv_rsw_fSmdYb_sc_k_Ohmovvoxd_wkx_sp_iye_gkxd_dy_qod_rsc_sxpybwkdsyxc_iye_mkx_tysx_ec}
DJN{spcp_Td_jZfc_cPhLco_pyuZj_Te_Nlpdlc_zc_nlww_stx_gTneZc_td_l_Pinpwwpye_xly_tq_jzf_hlye_ez_rpe_std_tyqzcxletzyd_jzf_nly_uzty_fd}
EKO{tqdq_Ue_kAgd_dQiMdp_qzvAk_Uf_Omqemd_ad_omxx_tuy_hUofAd_ue_m_Qjoqxxqzf_ymz_ur_kag_imzf_fa_sqf_tue_uzradymfuaze_kag_omz_vauz_ge}
FLP{urer_Vf_lBhe_eRjNeq_rawBl_Vg_Pnrfne_be_pnyy_uvz_iVpgBe_vf_n_Rkpryyrag_zna_vs_lbh_jnag_gb_trg_uvf_vasbezngvbaf_lbh_pna_wbva_hf}
GMQ{vsfs_Wg_mCif_fSkOfr_sbxCm_Wh_Qosgof_cf_qozz_vwa_jWqhCf_wg_o_Slqszzsbh_aob_wt_mci_kobh_hc_ush_vwg_wbtcfaohwcbg_mci_qob_xcwb_ig}
HNR{wtgt_Xh_nDjg_gTlPgs_tcyDn_Xi_Rpthpg_dg_rpaa_wxb_kXriDg_xh_p_Tmrtaatci_bpc_xu_ndj_lpci_id_vti_wxh_xcudgbpixdch_ndj_rpc_ydxc_jh}
IOS{xuhu_Yi_oEkh_hUmQht_udzEo_Yj_Squiqh_eh_sqbb_xyc_lYsjEh_yi_q_Unsubbudj_cqd_yv_oek_mqdj_je_wuj_xyi_ydvehcqjyedi_oek_sqd_zeyd_ki}
JPT{yviv_Zj_pFli_iVnRiu_veaFp_Zk_Trvjri_fi_trcc_yzd_mZtkFi_zj_r_Votvccvek_dre_zw_pfl_nrek_kf_xvk_yzj_zewfidrkzfej_pfl_tre_afze_lj}
KQU{zwjw_Ak_qGmj_jWoSjv_wfbGq_Al_Uswksj_gj_usdd_zae_nAulGj_ak_s_Wpuwddwfl_esf_ax_qgm_osfl_lg_ywl_zak_afxgjeslagfk_qgm_usf_bgaf_mk}
LRV{axkx_Bl_rHnk_kXpTkw_xgcHr_Bm_Vtxltk_hk_vtee_abf_oBvmHk_bl_t_Xqvxeexgm_ftg_by_rhn_ptgm_mh_zxm_abl_bgyhkftmbhgl_rhn_vtg_chbg_nl}
然后肉眼搜索,发现有一行居然有意义,提交了下就是对的。

13、进制转换

打开题目一看,最喜欢这种题目了。最怕的是没思路,只要有思路写脚本就好了。

s = 'd87 x65 x6c x63 o157 d109 o145 b100000 d116 b1101111 o40 x6b b1100101 b1101100 o141 d105 x62 d101 b1101001 d46 o40 d71 x69 d118 x65 x20 b1111001 o157 b1110101 d32 o141 d32 d102 o154 x61 x67 b100000 o141 d115 b100000 b1100001 d32 x67 o151 x66 d116 b101110 b100000 d32 d102 d108 d97 o147 d123 x31 b1100101 b110100 d98 d102 b111000 d49 b1100001 d54 b110011 x39 o64 o144 o145 d53 x61 b1100010 b1100011 o60 d48 o65 b1100001 x63 b110110 d101 o63 b111001 d97 d51 o70 d55 b1100010 d125 x20 b101110 x20 b1001000 d97 d118 o145 x20 d97 o40 d103 d111 d111 x64 d32 o164 b1101001 x6d o145 x7e'
s = s.split(' ')
for i in range(len(s)):
if s[i][0]=='d':
s[i] = int(s[i][1:],10)
elif s[i][0]=='x':
s[i] = int(s[i][1:],16)
elif s[i][0]=='o':
s[i] = int(s[i][1:],8)
elif s[i][0]=='b':
s[i] = int(s[i][1:],2)
s = ''.join([chr(i) for i in s])
print(s)

14、告诉你个秘密

 s = '636A56355279427363446C4A49454A7154534230526D684356445A31614342354E326C4B4946467A5769426961453067'
t = []
while len(s)>0:
n = s[:2]
s = s[2:]
t.append(int(n,16))
s = [chr(i) for i in t]
s = ''.join(s)
print(s)
import base64
t = base64.b64decode(s).decode()
print(t)

得到r5yG lp9I BjM tFhBT6uh y7iJ QsZ bhM

然后我就不会了。。

所以。。百度。哇,原来还有键盘密码这种东东

顺便还了解了下猪圈密码。。。

这个脑洞真的大。。

拿r5yG来说,低头看键盘,这5个字符所在的按键是不是包着字母t,所以着五个字母解密出来就是t。。

15、这不是md5

一看这个形式,首先肯定是16进制,然后有很多6和3,估计就是ascii了。

 s = '666c61677b616537333538376261353662616566357d'
t = ''
while len(s)>0:
t += chr(int(s[:2],16))
s = s[2:]
print(t)

bugku 密码学一些题的wp的更多相关文章

  1. Bugku 杂项 签到题

    签到题 加微信公众号会发现

  2. hectf2020部分简单题题解wp

    HECTF 我真是又菜又没时间肝题..又又又只水了波简单题... Reverse 1.Hello_Re file查一波 32bit,拖进IDA中 老规矩shift+F12 查看字符串: 跳转 F5查看 ...

  3. bugku ctf 逆向题

    1.逆向入门 2.Easy_vb 直接找出来. 3.easy_re 4.游戏过关 摁着嗯着就出来了... 5.Timer{阿里ctf} apk文件,不会搞. 6.逆向入门 发现是base64,直接转图 ...

  4. BUGKU web刷题记录

    web1 直接F12查看源码,得到flag. web2 直接输入验证码答案,长度被限制,修改可输入长度,提交后得到flag. web3 $what=$_GET['what']; echo $what; ...

  5. 2019"深思杯"山东省大学生网络安全技能大赛部分wp

    签到 载入OD查看字符串 上下左右 这道题出来的时候真的是一点思路都没有,一直以为是什么编码来着,看了大佬们的 wp 原来是画图 拿大佬的脚本: from PIL import Image im = ...

  6. MRCTF 2020 WP

    MRCTF 2020 WP 引言 周末趁上课之余,做了一下北邮的CTF,这里记录一下做出来的几题的WP ez_bypass 知识点:MD5强类型比较,is_numeric()函数绕过 题目源码: I ...

  7. 【wp】2020XCTF_逆向

    前几天的XCTF最后一场终于打完了,三场比赛下来对逆向部分的大概感觉是从第一场的啥都不会做(一道lua+一道apk)到后来的终于能有参与度,至少后两场的题目都是pc逆向,虽然特殊架构但好歹能做(tcl ...

  8. CTF:从0到1 -> zero2one

    本篇blog首发0xffff论坛(CTF:从0到1->zero2one - 0xFFFF),中间有各位大佬补充,搬到了个人博客CTF:从0到1 -> zero2one | c10udlnk ...

  9. CHIMA网络安全攻防大赛经验分享

    比赛模式 第一轮:20分钟基础知识赛(50道题) 安全运维,法律法规,linux操作系统等 第二轮:50分钟CTF夺旗(5道题) 题目涵盖 密码学 运用多种工具,如ASCII对照,古典密码,凯撒密码, ...

随机推荐

  1. 201671010142 2017-2 《java第九章学习感悟》

    一,数组(可以存储基本数据类型)是用来存现对象的一种容器,但是数组的长度固定,不适合在对象数量未知的情况下使用. 集合(只能存储对象,对象类型可以不一样)的长度可变,可在多数情况下使用. 二.几种重要 ...

  2. Nexus3.x安装及配置

    若排版紊乱可查看我的个人博客原文地址 搭建maven私服主要是为了方便在一个团队中使用maven中央仓库没有的jar包,这些非中央仓库的jar包可能是自己团队开发的公共依赖jar包,可能是第三方私有的 ...

  3. centos7初上手2-安装tomcat服务

    上一篇文章说完安装mysql数据库,这篇文章来学习一下tomcat安装 1.先做准备工作,安装jdk,先看服务器上有没有安装相关java文件 下载好1.8版本的安装包,用xftp传到服务器上(根据个人 ...

  4. 基于react的MQ管理系统遇到的问题以及解决办法

    跟一般的管理系统差不多 一.需求 1.新增申请和修改的弹窗里面的部门跟应用组改成下拉框,并调取后台接口获取到相应的值.1.1相应的代码 // 获取部门 getDepartment = () => ...

  5. [转]sqlldr 导入乱码,Oracle客户端字符集问题

    1,查Oracle数据库创建时候的字符集:oracle服务器端执行 SQL> select name, value$ from sys.props$ where name like 'NLS%' ...

  6. mongo的runCommand与集合操作函数的关系

    除了特殊注释外,本文的测试结果均基于 spring-data-mongodb:1.10.6.RELEASE(spring-boot-starter:1.5.6.RELEASE),MongoDB 3.0 ...

  7. RPC 知识科普一下

    RPC概念及分类 RPC全称为Remote Procedure Call,翻译过来为“远程过程调用”.目前,主流的平台中都支持各种远程调用技术,以满足分布式系统架构中不同的系统之间的远程通信和相互调用 ...

  8. 信息技术手册可视化进度报告 基于jieba的关键字提取技术

    在这一篇博客之前,我已经将word文件中的内容通过爬虫的方式整理到数据库中了,但是为了前台展示的需要,还必须提取出关键字,用于检索. 我用的是jieba分词,GitHub地址:https://gith ...

  9. 自学python之路(day3)

    基础数据类型---字符串str 1.字符串的索引和切片 索引即下标,就是字符串组成的元素从第一个开始,初始索引为0以此类推. a = 'ABCDEFGH' print(a[0]) print(a[1] ...

  10. C++标准库之迭代器

    迭代器大致可分为: 输入迭代器,InputIterator 输出迭代器,OutputIterator 前行迭代器,ForwardIterator 双向迭代器,BidirectinalIterator ...