[Toddler's Bottle]

Posted chrysanthemum

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Toddler's Bottle]相关的知识,希望对你有一定的参考价值。

fd

Pwn:

技术图片

Reason:

当fd为0的时候代表标准输入,也就是控制台,然后就可以实现buf=="LETMEWIN " 编辑了一下fd.c-->命名为1.c用来测试,gcc编译指令“gcc 1.c -o 1”

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char buf[32];
int main(int argc, char* argv[], char* envp[]){
	if(argc<2)
	{
		printf("pass argv[1] a number
");
		return 0;
	}
	printf("%s %s
",argv[0],argv[1]);
	int fd = atoi( argv[1] ) - 0x1234;
	printf("fd:%d
",fd);
	int len = 0;
	len = read(fd, buf, 32);
	if(!strcmp("LETMEWIN
", buf)){
		printf("good job :)
");
		system("/bin/cat flag");
		exit(0);
	}
	printf("learn about Linux file IO
");
	return 0;
}

本来是想直接传0x1234但是atoi后为0,看来atoi函数不支持十六进制

技术图片

 

以上是关于[Toddler's Bottle]的主要内容,如果未能解决你的问题,请参考以下文章

pwnable.krToddler‘s Bottle-[fd]

pwnable.krToddler‘s Bottle-[collision]

bottle.py中的SimpleTemplate

pwnable.krToddler‘s Bottle-[passcode]

pwnable.krToddler‘s Bottle-[random]

最近学python和bottle框架,用sqlite3,网页中文显示乱码,咋办捏?