[XCTF/网络安全] Python之Django模块+curl 攻防世界 Cat 解题详析

题目描述:抓住那只猫

姿势

ping:127.0.0.1

ping通:

ping:127.0.0.1 | ls,命令执行失败。

结合下图,猜测环境对字符进行过滤:

字典

抓包加入字典判断猜测:


具体方法参考:
[网络安全]BurpSuite爆破实战解题详析之BUUCTF Brute 1

[网络安全]DVWA之Brute Force攻击姿势及解题详析合集

常用字典如下:

length 
+
handler
like
select 
sleep
database
delete
having
or
as
-~
BENCHMARK
limit
left
select
insert
sys.schema_auto_increment_columns
join
right
#
&
&&
\
handler
-- -
--
--+
INFORMATION
--
;
!
%
+
xor
<>
(
>
<
)
.
^
=
AND
BY
CAST
COLUMN
COUNT
CREATE
END
case
'1'='1
when
admin'
"
length 
+
length
REVERSE

ascii
select 
database
left
right
'
union
||
oorr
/
//
//*
*/*
/**/
anandd
GROUP
HAVING
IF
INTO
JOIN
LEAVE
LEFT
LEVEL
sleep
LIKE
NAMES
NEXT
NULL
OF
ON
|
infromation_schema
user
OR
ORDER
ORD
SCHEMA
SELECT
SET
TABLE
THEN
UPDATE
USER
USING
VALUE
VALUES
WHEN
WHERE
ADD
AND
prepare
set
update
delete
drop
inset
CAST
COLUMN
CONCAT
GROUP_CONCAT
group_concat
CREATE
DATABASE
DATABASES
alter
DELETE
DROP
floor
rand()
information_schema.tables
TABLE_SCHEMA
%df
concat_ws()
concat
LIMIT
ORD
ON
extractvalue
order 
CAST()
by
ORDER
OUTFILE
RENAME
REPLACE
SCHEMA
SELECT
SET
updatexml
SHOW
SQL
TABLE
THEN
TRUE
instr
benchmark
format
bin
substring
ord

UPDATE
VALUES
VARCHAR
VERSION
WHEN
WHERE
/*
`
  
,
users
%0a
%0b
mid
for
BEFORE
REGEXP
RLIKE
in
sys schemma
SEPARATOR
XOR
CURSOR
FLOOR
sys.schema_table_statistics_with_buffer
INFILE
count
%0c
from
%0d
%a0
=
@
else

结果如下:

复制网址并打开

页面底部显示如下:

这是python的Django模块,其数据库database文件存在于opt/api下的setting.py文件中

查找settings文件

Payload:/opt/api/settings.py

无回显。又由下图可知,环境并未对@进行过滤

curl参数上传

在PHP中使用CURL进行文件上传时,@符号加上文件路径表示读取该文件内容并将其作为请求参数上传

当使用文件路径作为参数时,若文件路径指定有误或不存在,则无法正确读取文件内容。

使用@+文件路径时,CURL将自动读取该文件内容并将其作为请求参数。即使输入的文件路径有错或不存在,CURL仍然可以正常上传。

Payload:@/opt/api/settings.py

无回显,可能是因为/opt/api/是整个API项目的根目录,而/opt/api/api/是API应用程序的特定子目录,用于存放与API功能相关的文件。

Payload:@/opt/api/api/settings.py,同时查找database

路径为opt/api/database.sqlite3

如若没成功发现setting.py的绝对路径,可直接在%20页面查找api/databse:

读取database文件

构造Payload:@/opt/api/database.sqlite3

搜索关键词:

也可使用浏览器自带查找功能:

flag为:WHCTF{yoooo_Such_A_G00D_@}

相关推荐
黑客KKKing3 小时前
网络安全:信息安全
网络·安全·web安全·网络安全
黑客K-ing3 小时前
信息收集在网络安全中的重要性在网络安全领域,渗透测试
安全·web安全
fillwang5 小时前
Python实现Excel行列转换
开发语言·python·excel
奇偶变不变6 小时前
30分钟学会css
人工智能·python·tensorflow
西猫雷婶7 小时前
python学opencv|读取图像(二十五)使用cv2.putText()绘制文字进阶-垂直镜像文字
开发语言·python·opencv
西猫雷婶7 小时前
python学opencv|读取图像(二十四)使用cv2.putText()绘制文字进阶-倾斜文字
开发语言·python·opencv
德迅云安全杨德俊9 小时前
保护网站日常安全,网站监测能提供哪方面的帮助
网络·安全·web安全
B站计算机毕业设计超人9 小时前
计算机毕业设计Python动漫推荐系统 漫画推荐系统 动漫视频推荐系统 机器学习 bilibili动漫爬虫 数据可视化 数据分析 大数据毕业设计
大数据·python·深度学习·机器学习·网络爬虫·课程设计·推荐算法
常家壮10 小时前
Python:交互式物质三态知识讲解小工具
开发语言·python·dubbo·物理·有趣·物质三态
Tiandaren10 小时前
医学图像分析工具01:FreeSurfer || Recon -all 全流程MRI皮质表面重建
c++·图像处理·python·深度学习·数据挖掘·数据分析·健康医疗