草庐IT

CTFHub | .DS_Store

尼泊罗河伯 2023-09-29 原文

0x00 前言

        CTFHub 专注网络安全、信息安全、白帽子技术的在线学习,实训平台。提供优质的赛事及学习服务,拥有完善的题目环境及配套 writeup ,降低 CTF 学习入门门槛,快速帮助选手成长,跟随主流比赛潮流。

        

        

0x01 题目描述

.DS_Store:

        .DS_Store 是 Mac OS 保存文件夹的自定义属性的隐藏文件。通过.DS_Store可以知道这个目录里面所有文件的清单。

网页显示内容

        

        

0x02 解题过程

        根据前面几题的经验,方法一致,在浏览器访问 . DS_Store 查看隐藏文件。发现浏览器下载了一个文件使用记事本查看发现一串后缀为 .txt 的可疑文件,使用 curl 命令检查一下这个可疑文件发现网页显示此题 flag 。

        

尝试浏览器访问.DS_Store,看看浏览器回显状态,没想到直接下载了隐藏文件

         

记事本查看隐藏文件显示内容,上面显示了一串乱码和下面的未知数字

         

使用py给这串未知数字简单处理一下空格符

a = '1 a 2 3 7 d f b 2 f 2 3 d 2 1 0 2 d 7 6 c 7 c 4 a 9 e 0 d 8 3 a . t x tnoteustr'
a.replace(' ' , '')

        

使用curl命令查看这串未知数字的网页显示是什么,看到显示404网页

         

发现没有把noteustr去掉,这是注释的意思,后缀应该为.txt,重新查看发现此题flag

解释说明:

        1a237dfb2f23d2102d76c7c4a9e0d83a.txt  noteustr  flag here 

        1a237dfb2f23d2102d76c7c4a9e0d83a.txt  注  释      flag 在这 

        因为记事本排列将 flag here 在后面,导致我忽略了 flag here 这个重要提示,且最主要的是 noteustr 表示注释的意思。

        

        

0x03 .DS_Store说明

        DS_Store 全称 Desktop Services Store(桌面服务存储),是 Mac OS 保存文件夹的自定义属性的隐藏文件。通过.DS_Store可以知道这个目录里面所有文件的清单。

        

.DS_Store的禁用与启用:

1.禁用 .DS_Store,重启生效

defaults write com.apple.desktopservices DSDontWriteNetworkStores -bool TRUE

2.启用 .DS_Store

defaults delete com.apple.desktopservices DSDontWriteNetworkStores

        

        

0x04 参考文献

[1].goyohol. 关于“.DS_Store”文件[EB/OL]. [2022-10-06]. https://www.jianshu.com/p/73a0bf8f2e1e.

        

        

0x05 总结

文章内容为学习记录的笔记,由于作者水平有限,文中若有错误与不足欢迎留言,便于及时更正。

有关CTFHub | .DS_Store的更多相关文章

  1. ruby-on-rails - 基于用户表单的动态 Active Record Store 访问器? - 2

    ActiveRecordStore允许您在单个单元格内序列化参数。即classUser现在所有访问器都在用户表的“选项”列中序列化。u=User.newu.option2='someoption'u.option2#=>'someoption'这对我的应用程序非常有用,因为我必须每天创建许多表单,其中90%的表单是相同的(用户名、爱好、兴趣等),然后10%是无模式的(random_option_here,another_random_option_in_another_form)。我也永远不需要按无模式选项进行排序。我所做的是为90%的始终相同的表单字段创建了1个表,然后我有另一个表包

  2. 基于51单片机、DS1302时钟模块的电子闹钟设计 - 2

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录一、设计原理1.DS1302介绍2.闹钟音乐播放原理二、程序设计1.DS1302.h2.ds1302.c3.music.h4.main.c三、电路图四、运行结果1.proteus仿真2.开发板实验五、总结六、附件提示:以下是本篇文章正文内容,下面案例可供参考一、设计原理1.DS1302介绍DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.0V~5.5V。该芯片采用普通32.768kHz晶振,DS1302工作时功耗很

  3. ruby-on-rails - Sprockets::CircularDependencyError in Store#index - 2

    我正在遵循手册《使用Rails进行敏捷Web开发》第4版,但我在rails3.1中遇到了sprocketcss的问题。代码css是:http://media.pragprog.com/titles/rails4/code/rails31/depot_e/app/assets/stylesheets/application.css.scss如果我修改app/assets/stylesheets/aplication.css.scss的css代码,我会遇到下一个错误:Sprockets::CircularDependencyErrorinStore#indexShowing/home/ub

  4. ruby-on-rails - Rails + 延迟作业 : Where is the correct place to store custom job classes? - 2

    我是delayed_job的新手,我开始编写自己的“自定义作业”。每个自定义作业基本上只是一个常规的ruby​​类,但我不确定这些自定义作业类通常存储在项目目录结构中的何处。我在考虑lib,但此时lib似乎是一个垃圾抽屉:/(不过也许没关系)谢谢!! 最佳答案 常见的方法是在app文件夹下创建jobs文件夹。但您唯一应该关心的是它们是您的文件,因此请以您觉得最适合自己的方式进行。 关于ruby-on-rails-Rails+延迟作业:Whereisthecorrectplacetosto

  5. javascript - 未捕获的 TypeError : (0 , _store.configureStore) 不是函数 - 2

    这个问题在这里已经有了答案:WhenshouldIusecurlybracesforES6import?(11个答案)关闭6年前。商店.jsimport{createStore,applyMiddleware}from'redux';importcreateLoggerfrom'redux-logger';importrootReducerfrom'./reducers/index';constlogger=createLogger();constcreateStoreWithMiddleware=applyMiddleware(logger)(createStore);exportd

  6. javascript - React-Redux/Jest 不变违规 : Could not find "store" - 2

    我设置了一个简单的测试文件,几乎与create-react-app使用的文件相同:App.test.jsimportReactfrom'react';importReactDOMfrom'react-dom';import{App}from'./App';it('renderswithoutcrashing',()=>{constdiv=document.createElement('div');ReactDOM.render(,div);});当我运行yarntest我不断收到此错误消息:InvariantViolation:Couldnotfind"store"ineitherth

  7. javascript - 从 Ext.data.Store 访问 http 状态码 - 2

    我有一个httpAPI(令人震惊的新技术)对设置不同响应状态的不同错误使用react。问题是——在将Ext.data.Store与一些XMLHttpRequest内部代理一起使用时,处理这种状态的最佳方法是什么?据我了解,“加载”事件不会直接传递状态,“异常”也是如此,最后一个实际上在收到4**状态时甚至不会触发。因此,正如我从代码中看到的那样,xhr实例隐藏在Ext.data.store中,因此问题也可以表述为“处理低级xhr对象的最佳extjs实践是什么”。 最佳答案 Ext.data.Store上没有异常事件。相反,是Ext.

  8. javascript - 使用 flowtype 和 flow-typed 输入 redux store - 2

    我正在尝试totypethereduxstore像这样:consts:Store=createStore(todoApp)但我明白了identifierStore...Couldnotresolvename流量错误知道如何解决这个问题吗?我正在使用这个流类型的声明://flow-typedsignature:ba132c96664f1a05288f3eb2272a3c35//flow-typedversion:c4bbd91cfc/redux_v3.x.x/flow_>=v0.33.xdeclaremodule'redux'{/*S=StateA=Action*/declaretype

  9. javascript - 作为 Vue 插件的一部分将 Mutations 添加到 Vuex store - 2

    我正在创建一个小型Vue插件,允许用户从任何组件中添加“页面通知”。我已经成功地实现了类似的东西:this.$notifications.add("一条消息");而且有效!但是我必须注册我的插件所需的突变和操作,作为为我的应用程序设置其余商店的文件的一部分:exportdefaultnewVuex.Store({...})有没有办法从我的插件中向我的商店添加操作和变更?目前看起来像这样:importvuexfrom'./../store';constMyPlugin={install(Vue,options){//4.addaninstancemethodVue.prototype.$

  10. javascript - ember-data - store.find ('model' ) 总是查询服务器 - 2

    详细信息:ember-data-1.0.0.beta.3和默认的RESTAdapter我可能误解了store.find()方法的工作原理,但是,据我了解,如果我要查询的记录已经存在于商店:varIndexRoute=Em.Route.extend({model:function(){returnthis.store.find('link');},});来自DS.Store.find()的emberjs.com文档:Thefindmethodwillalwaysreturnapromisethatwillberesolvedwiththerecord.Iftherecordwasalre

随机推荐