第十八届全国大学生信息安全竞赛WP
zeroshell
zeroshell_1:
打开流量包,找到可疑的ip
找到之后选中筛选ip.dst == 61.139.2.100
找到流量,跟踪进去,在refer发现可疑的base64
赛博厨子解密
zeroshell_2:
直接咕噜咕噜找cve
poc直接打!
zeroshell_3:
直接Netstat找就行了
这里复现环境已经变化了,已经连接不上了
ip是202.115.89.102:8080
zeroshell_4:
在浏览所有文件的时候发现一个奇奇怪怪的配置文件,环境是阿帕奇,但是出现一个.nginx的配置文件,还是在/tmp里,就很怪,cat一看是elf,丢到微步确认是木马
zeroshell_5
IDA直接打开,看一下字符串,找到个ip
就是他了
WinFT
WinFT_1
这里
这个文件一直在自启,currports一直在报
查一下地址就找到了
WinFT_2
隐藏的计划任务,直接去system32去找,base64就是flag
sc05_1
如图
rand0m
IDA打开一下,shift+f12日常看一眼字符串
嗯,SUS ...
pwn学习笔记
Linux系统调用表
系统调用号
函数名
入口点
源码
0
read
sys_read
fs/read_write.c
1
write
sys_write
fs/read_write.c
2
open
sys_open
fs/open.c
3
close
sys_close
fs/open.c
4
stat
sys_newstat
fs/stat.c
5
fstat
sys_newfstat
fs/stat.c
6
lstat
sys_newlstat
fs/stat.c
7
poll
sys_poll
fs/select.c
8
lseek
sys_lseek
fs/read_write.c
9
mmap
sys_mmap
arch/x86/kernel/sys_x86_64.c
10
mprotect
sys_mprotect
mm/mprotect.c
11
munmap
sys_munmap
mm/mmap.c
12
brk
sys_brk
mm/mmap.c
13
rt_sigaction
sys_rt_sig ...
“华为杯”第三届中国研究生网络安全创新大赛WP
Web
very_easyphp
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162<?phphighlight_file(__FILE__);error_reporting(0);$data = parse_url($_SERVER['REQUEST_URI']);$han = basename($data['query']);$a = $_GET['a'];$b = $_GET['b'];if (!preg_match('/[a-z0-9_]/i', $han)) { if (is_string($a) && is_numeric($b)) { if ($a != $b && md5($a) == md5($b)) { ...
2024春秋杯网络安全联赛夏季赛复现
比赛那几天忙了做各种各样的课设,加上ciscn刚打完不太想动,所以就纯看看题了(为自己菜找借口)现在缓过来了,就做一下复现吧。
Reserve
Snake
打开软件发现是pygame
12345678910111213141516171819PS C:\Users\Derrick Li\Desktop> python pyinstxtractor.py snake.exe[+] Processing snake.exe[+] Pyinstaller version: 2.1+[+] Python version: 3.8[+] Length of package: 12997948 bytes[+] Found 121 files in CArchive[+] Beginning extraction...please standby[+] Possible entry point: pyiboot01_bootstrap.pyc[+] Possible entry point: pyi_rth_pkgres.pyc[+] Possible entry point: pyi_r ...
Reserve_1
在学习pwn的过程中难免会遇到形形色色的有关逆向的问题,且二进制与逆向互通性相对来说比较高,也可以说逆向是二进制的铺垫,因此,在此栏专门记录自己学习逆向的过程,争取两天一更(但愿自己不会成为鸽子)。
汇编
指令
功能
命令
功能
命令
加法
add
与
and
减法
sub
或
or
乘法
mul/imul
非
not
除法
div/idiv
异或
xor
比较大小
cmp
测试
test
调用
call
返回
ret
系统调用
sysenter/syscall
中断返回
iret
系统调用返回
sysexit/sysret
压栈
push
寄存器批量入栈
pushad
出栈
pop
寄存器批量出栈
popad
普通赋值
mov
单字节赋值
movsb
双字节赋值
movsw
四字节赋值
movsd
取地址
lea
跳转类型的指令
功能
命令
功能
命令
等于转移
JE/JZ
不等于时转移
JNE/JNZ
有进位时转移
JC
无进位时转移
JNC
不溢出时转移
JNO
奇偶性为奇数时转移
...
H&NCTF 2024 Pwn WP
pwn附件下载
close
main反编译出来的伪代码有一个close(1),接下来就直接给shell了
main:
123close(1);system("/bin/sh");return 0;
close(1) 关闭标准输出
close(2) 关闭标准错误输出
exec命令的介绍
1,通过文件描述符打开或关闭文件。
2,将文件重定向到标准输入,及将标准输出重定向到文件。
3,exec命令重新设置了I/O重定向,要恢复为原来的I/O指向,还得需要使用exec命令显示指定。
exec用法:
&n :代表描述符代表的文件。
< :代表以什么形式使用描述符。
exec 8<&2 :描述符8以读取方式打开标准错误对应的文件。
exec &>log:把标准输入错误打开文件log。
exec 8<&- :关闭描述符8。
exp:
12exec >&0cat flag
ez_pwn
这套题和ciscn_2019_es_2高度相似
具体可以参考先知社区的一篇写的非常好的介绍栈迁移的文章
exp:
123 ...
Reserve中常见的加密算法
在做逆向的时候,我们难免会遇到各种各样的加密算法
这次来介绍几种常见的加密算法
RC4
RC4加密算法简介
RC4是一种对称的加密算法,所谓的对称加密算法是指加密和解密使用相同密钥的加密算法,数据发送方利用密钥将明文经过特殊加密算法处理后,使其变成复杂的加密密文发送出去,接收方收到密文后,若想解读原文,则需要使用加密用过的密钥以及相同的加密算法对明文进行解密,才能使其恢复成可读的明文。
RC4算法简单,运行速度快,而且密钥长度是可变的,可变范围为1-256字节(8-2048比特),生成的密钥流的长度和铭文的长度是对应的。在现在技术支持的前提下,当密钥长度为128比特是,用暴力法搜索密钥可能已经不太可行,所以能够预见RC4的密钥范围仍然能够在今后相当长的时间里低于暴力搜索哟密钥的攻击。实际上,现在也没有找到对于128bit密钥长度的RC4加密算法的有效的攻击方法。
RC4主要包括了初始化算法(KSA)和加密算法两大部分。
加密(解密)原理
RC4由伪随机数生成器和异或运算组成。RC4的密钥长度可变,范围是[1,255]。RC4一个字节一个字节地加解密。给定一个密钥,伪随机数生成器接受密钥 ...
Shellcode
shellcode的定义
shellcode是一段用于利用软件漏洞而执行的代码,shellcode为16进制的机器码,因为经常让攻击者获得shell而得名。shellcode常常使用机器语言编写。可在暂存器eip溢出后,塞入一段可让CPU执行的shellcode机器码,让电脑可以执行攻击者的任意指令。
常用指令
得到jmp_esp地址
ROPgadget --binary 文件名 --only “jmp”
123456789Gadgets information============================================================0x080483ab : jmp 0x80483900x080484f2 : jmp 0x80484700x08048611 : jmp 0x80486200x0804855d : jmp dword ptr [ecx + 0x804a040]0x08048550 : jmp dword ptr [ecx + 0x804a060]0x0804876f : jmp dword ptr [ecx]0x08048 ...
BUUCTF PWN3
ciscn_2019_n_3
老规矩
123ubuntu@vm:~/桌面/新建文件夹$ checksec --file=ciscnRELRO STACK CANARY NX PIE RPATH RUNPATH Symbols FORTIFY Fortified Fortifiable FILEPartial RELRO Canary found NX enabled No PIE No RPATH No RUNPATH 90 Symbols No 0 2 ciscn
main
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152int __cdecl main(int argc, const char **argv, const char **envp){ int v3; // eax float ...
BUUCTF PWN2
[第五空间2019 决赛]PWN5
检测文件的保护机制
123ubuntu@vm:~/桌面$ checksec --file=pwnRELRO STACK CANARY NX PIE RPATH RUNPATH Symbols FORTIFY Fortified Fortifiable FILEPartial RELRO Canary found NX enabled No PIE No RPATH No RUNPATH No Symbols No 0 2 pwn
可以发现存在NX保护和Canary保护,关于Canary保护可详见
ctf-wiki
开启 Canary 保护的 stack 结构大概如下:
123456789101112131415 High Address | | +-----------------+ | args | ...