【pwnable.kr】cmd1】的更多相关文章

最近的pwnable都是linux操作系统层面的. ssh cmd1@pwnable.kr -p2222 (pw:guest) 首先还是下载源代码: #include <stdio.h> #include <string.h> int filter(char* cmd){ int r=0; r += strstr(cmd, "flag")!=0; r += strstr(cmd, "sh")!=0; r += strstr(cmd, &quo…
这道题是上一个cmd1的升级版 ssh cmd2@pwnable.kr -p2222 (pw:mommy now I get what PATH environmentis for :)) 登录之后,还是审计一下源代码: #include <stdio.h> #include <string.h> int filter(char* cmd){ ; r += strstr(cmd, ; r += strstr(cmd, ; r += strstr(cmd, ; r += strstr…
一道写shellcode的题目, #include <stdio.h> #include <string.h> #include <stdlib.h> #include <sys/mman.h> #include <seccomp.h> #include <sys/prctl.h> #include <fcntl.h> #include <unistd.h> #define LENGTH 128 void sa…
Download : http://pwnable.kr/bin/login Running at : nc pwnable.kr 9003 先看看ida里面的逻辑. 比较重要的信息时input变量再bss段上,并且没有PIE保护,这样一来就有了一个已知的地址(这很重要 需要输入的是信息的base64编码,而input变量中存储的是输入信息base解码后的内容. 继续跟踪auth函数,发现了一个溢出. 变量v4放在ebp-8的位置,而最多会复制a1长(a1<=0xC),因此会覆盖了EBP. 尝试…
pwnable.kr第二关第一题: ========================================= Download : http://pwnable.kr/bin/bfDownload : http://pwnable.kr/bin/bf_libc.so Running at : nc pwnable.kr 9001 ========================================== 一人饮酒醉的僵尸?? 这次题目也更偏向于PWN了吧...(?)也没有源代…
pwnable.kr 第一阶段的最后一题! 这道题目就是堆溢出的经典利用题目,不过是把堆块的分配与释放操作用C++重新写了一遍,可参考<C和C++安全编码一书>//不是广告 #include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct tagOBJ{ struct tagOBJ* fd; struct tagOBJ* bk; ]; }OBJ; void shell(){ s…
pwnable的新一题,和堆分配相关. http://pwnable.kr/bin/memcpy.c ssh memcpy@pwnable.kr -p2222 (pw:guest) 我觉得主要考察的是堆块分配问题. 推荐<C和C++安全编码> 首先通过阅读源代码,看一下题目大意. // compiled with : gcc -o memcpy memcpy.c -m32 -lm #include <stdio.h> #include <string.h> #inclu…
pwnable新的一题. download: http://pwnable.kr/bin/codemap.exe ssh codemap@pwnable.kr -p2222 (pw:guest) 这道题虽然是在pwnable下,但是是一道逆向题... //前web狗膜一发二进制大佬 根据提示,需要查看 0x403E65 运行时,寄存器 EAX,EBX 的内容. 先不考虑运行的内容,先看程序.首先这个程序没有加壳,直接可以用ida查看内容. 然后可以看到程序的框架,在main函数中,默默按下F5.…
目测是比较接近pwnable的一道题.考察了uaf(use after free的内容),我觉得说白了就是指针没有初始化的问题. ssh uaf@pwnable.kr -p2222 (pw:guest) 先看一下代码 #include <fcntl.h> #include <iostream> #include <cstring> #include <cstdlib> #include <unistd.h> using namespace std…
这道题是一道一遍一遍满足程序需求的题. 网上其他的题解都是用了C语言或者python语言的本地调用,我想联系一下pwntools的远程调用就写了下面的脚本, 执行效果可以通过1~4的检测,到最后socket的检测死活连不上了,怀疑是有防火墙,对进出端口的端口号做了限制,把脚本丢到服务器上执行就可以成功了. 那和之前的别人的题解 有啥区别... 权当练习使用pwntools,而且pwntools的文档真心不错. 最后一部分第五个检测不太好用,先扔脚本当个备份吧... from pwn import…