首页 > 其他分享 >ctf知识积累

ctf知识积累

时间:2024-04-22 22:22:05浏览次数:27  
标签:积累 index 缓存 http url 知识 vim ctf php

  1. (1)url解码:

python解码函数:

from urllib.parse import unquote(quote:编码)

url_code=""

url_code1=unquote(url_code)

print(url_code1)

Edge 浏览器URL解码:开发人员工具输入:decodeURIComponent(‘’)

(2)Unicode解码:

from urllib.parse import unquote_plus

encoded_text=''

decoded_text = unquote_plus(encoded_text, encoding='utf-8')

print(decoded_text)

(3)utf-7解码:

a=b''

b=a.decode('utf7')

print(b)

  1. PHP函数:

isset() 函数用于检测变量是否已设置并且非 NULL。

3、PHP在处理哈希字符串时,会利用”!=”或”==”来对哈希值进行比较,它把每一个以”0E”开头的哈希值都解释为0,所以如果两个不同的密码经过哈希以后,其哈希值都是以”0E”开头的,那么PHP将会认为他们相同,都是0。

s878926199a-------md5=0e545993274517709034328855841020

s155964671a-------md5=0e342768416822451524974117254469

s214587387a-------md5=0e848240448830537924465865611904

QLTHNDT-----------md5=0e405967825401955372549139051580

QNKCDZO------------md5=0e830400451993494058024219903391

EEIZDOI---------------md5=0e782601363539291779881938479162

  1. get和POST

get:http://……/?a=1或curl -v -X (请求参数) http://.........

post:cmd----curl -X POST -d "b=2" http://........

  1. robots是搜索引擎爬虫协议,规定网页哪些东西可以被爬取和哪些内容不能被爬取,通过域名/robots.txt 就可以访问到文件。
  2. \x35\x35\x2c,它使用了十六进制转义序列来表示ASCII码,其中\x后跟着两个十六进制数字表示一个字符的ASCII码。\x35 对应的字符为: “5”, \x2c 对应的字符为: “,”

a = [55,56,54,79,115,69,114,116,107,49,50]

c = ""

for i in a:

b = chr(i)

c = c + b

print(c)

该代码使用列表a中的整数值作为ASCII码,然后将其转换为相应的字符,并将每个字符添加到字符串c中。最后,打印字符串c。

6.HTTP重定向:服务器无法处理浏览器发送过来的请求(request),服务器告诉浏览器跳转到可以处理请求的url上,如果是重定向会发现url改变了并且回退键亮了,这时通过网络抓包可以发现重定向之前的url,然后可以通过cmd----curl http://..........使其不会跳转,curl -L 则是会跟随跳转。

7. phpinfo函数可以显示出PHP 所有相关信息。是排查配置php是是否出错或漏配置模块的主要方式之一!通过http://...../phpinfo.php查看。

8、当开发人员在线上环境中对源代码进行了备份操作,并且将备份文件放在了 web 目录下,就会引起网站源码泄露。一般是格式是www.zip,访问后会得到一个压缩文件。

9. 当开发人员在线上环境中使用 vim 编辑器,在使用过程中会留下 vim 编辑器缓存,当vim异常退出时,缓存会一直留在服务器上,引起网站源码泄露。

10. vim缓存;

vim 交换文件名

在使用vim时会创建临时缓存文件,关闭vim时缓存文件则会被删除,当vim异常退出后,因为未处理缓存文件,导致可以通过缓存文件恢复原始文件内容

以 index.php 为例:第一次产生的交换文件名为 .index.php.swp

再次意外退出后,将会产生名为 .index.php.swo 的交换文件

第三次产生的交换文件则为 .index.php.swn

如果在Windows系统下运行,你可以通过运行curl命令(curl http://challenge-afe6297565b860e2.sandbox.ctfhub.com:10800/.index.php.swp)来进行查看。或者访问http://...../.index.php.swp下载文件查看。

如果在Linux系统下运行,我们可以先通过vim -r .index.php.swp来将源文件恢复。然后我们即可查看到flag。

11、.DS_Store 是 Mac OS 保存文件夹的自定义属性的隐藏文件。通过.DS_Store可以知道这个目录里面所有文件的清单。

12.Windows系统添加管理员账户cmd命令:net user admin 123456 /add

Net localgroup administrators admin /add

13.

JPG FF D8 FF
PNG 89 50 4E 47
BMP 42 4D
GIF 47 49 46 38 39 61
ZIP 50 4B 03 04
RAR 52 61 72 21
AVI 41 56 49 20

14. zsteg可以检测PNG和BMP图片里的隐写数据。

1.查看lsb数据

zsteg xxx.bmp

zsteg xxx.png

zsteg -a (文件名) #查看各个通道的lsb

2.检测zlib

#-b的位数是从1开始的

zsteg zlib.bmp -b 1 -o xy -v

3.提取该通道图片

zsteg -e b8,a,lsb,xy 文件.png -> out.png

4、

标签:积累,index,缓存,http,url,知识,vim,ctf,php
From: https://www.cnblogs.com/ugnfc/p/18151706

相关文章

  • 2024DASCTF
    DASCTFprese一眼控制了平坦化,可以用d810梭一下跟进一下main_crypto这个函数主要是两部分,第一部分是生成一个256大小的数组,通过输入的长度和遍历生成的一个数组第二部分就是主要的加密过程,那些杂七杂八的值完全可以不用看,其实就是一个找索引的题,然后猜一下输入的长度当时......
  • [ctfhub] git 泄漏
    题目描述当前大量开发人员使用git进行版本控制,对站点自动部署。如果配置不当,可能会将.git文件夹直接部署到线上环境。这就引起了git泄露漏洞。请尝试使用BugScanTeam的GitHack完成本题实验环境这里使用的是Ubuntu22.04.4LTS的环境sudoaptinstallgitsudoaptinstallp......
  • CTFshow-Web入门模块-命令执行
    CTFshow-Web入门模块-命令执行by故人叹、web29考察点:php命令执行、正则匹配绕过题目源码:error_reporting(0);if(isset($_GET['c'])){$c=$_GET['c'];if(!preg_match("/flag/i",$c)){eval($c);}}else{highlight_file(__FILE__);......
  • re-vctf2024-vm
    vctf2024-vm一.vctf2024vm题的题解,一直没有整理,是赛后看大佬wp才知道是upx魔改+rc4的。。二.解题思路1.去upx魔改:VCTF2024ezvm(虚拟机逆向初探)_vctfvm-CSDN博客[原创]UPX源码学习和简单修改-加壳脱壳-看雪-安全社区|安全招聘|kanxue.com加壳流程:(博客总结)a.写入文件的......
  • 系统架构基础知识入门指南-下
    接上篇文章,这篇文章聊聊技术同学如何由点及面的了解并掌握系统架构知识。 大家可以先回想一下,我们入职一家新公司做技术工作,一般都是如何开展工作的。首先,我们需要了解团队和项目的技术规范和迭代发布上线流程。其次,还要了解自己所在岗位负责哪些业务,对应的沟通合作对象是谁......
  • C语言——函数基本知识
    什么是函数函数的定义函数就是程序中独立的功能。(简单来说就是把代码打包成整体,起个名字,方便以后使用)函数的使用定义函数的格式格式:返回值类型函数名(形参1,形参2,...){ 函数体; return返回值;}例子:intmax(intnum1,intnum2){ inta; if(num1>num2)......
  • 机器学习教程 一-不懂这些线性代数知识 别说你是搞机器学习的
    机器学习教程一-不懂这些线性代数知识别说你是搞机器学习的 原文:http://www.shareditor.com/blogshow/?blogId=1数学是计算机技术的基础,线性代数是机器学习和深度学习的基础,了解数据知识最好的方法我觉得是理解概念,数学不只是上学时用来考试的,也是工作中必不可少的......
  • palurctf_Palu
    Paluctf_Palubamuwe@bamuwe:~/palu$checksecPalu[*]'/home/bamuwe/palu/Palu'Arch:amd64-64-littleRELRO:NoRELROStack:CanaryfoundNX:NXenabledPIE:NoPIE(0x400000)Canaryfound,soweshouldtr......
  • 入门 Redis 基础知识
    目录1.Redis简介与特点1.1.Redis是什么?1.2.为什么选择Redis?2.Redis数据结构与基本操作2.1.字符串(Strings)2.2.列表(Lists)2.3.集合(Sets)2.4.哈希表(Hashes)2.5.有序集合(SortedSets)2.6.基本操作示例3.Redis安装与配置3.1.安装Redis3.2.配置Redis 1.Redi......
  • [转帖]MySQL知识体系的三驾马车
    https://plantegg.github.io/2019/05/26/MySQL%E7%9F%A5%E8%AF%86%E4%BD%93%E7%B3%BB%E7%9A%84%E4%B8%89%E9%A9%BE%E9%A9%AC%E8%BD%A6/ MySQL知识体系的三驾马车在我看来要掌握好MySQL的话要理解好这三个东西:索引(B+树)日志(WAL)事务(可见性)索引决定了查询的性能,也是用......