1. 程式人生 > >BugkuCTF: 眼見非實(ISCCCTF)

BugkuCTF: 眼見非實(ISCCCTF)

拿到檔案發現沒有副檔名:

linux下file命令輸出:

Zip archive data, at least v2.0 to extract

是個zip壓縮檔案,在解壓一波後打開出現個word:

對這個word檔案進行file命令:

Zip archive data, at least v1.0 to extract

看來zip對檔案的壓縮是以v+數字代表的層數
解壓後發現customXml資料夾,搜尋一波,沒有思路,至此,我就不會了

之後看了一波攻略,輸入命令:

grep 'flag' -r 眼見非實

快速搜尋在目錄下面的含有關鍵字的檔案:

                       grep -r 目錄名

 

找到答案:

                 

 

 

CustomXMLPart儲存資料

假設兩種情形:

1、當有一些資料要使用,但不想讓使用者直接看到,常規的方式是放在一個表裡,然後隱藏

2、當資料來自伺服器、遠端伺服器,但文件要帶到一個離線環境中使用

此時可以考慮在工作簿中建立一個CustomXMLPart,要建立它非常簡單,可以使用CustomXMLParts介面的Add方法建立CustomXMLPart,CustomXMLPart介面和CustomXMLParts介面定義在 using Microsoft.Office.Core; 名稱空間下,其中CustomXMLPart的定義如下:

 public interface _CustomXMLParts : _IMsoDispObj, IEnumerable
 {         
          dynamic Application { get; }
          int Count { get; }
          int Creator { get; }
          dynamic Parent { get; }
          CustomXMLPart this[object Index] { get; }
          CustomXMLPart Add(string XML = "", object SchemaCollection = Type.Missing);
          //Add方法的一個重要引數是接收一個XML文字
          IEnumerator GetEnumerator();
          CustomXMLPart SelectByID(string Id);
          CustomXMLParts SelectByNamespace(string NamespaceURI);
 }

經過一些函式操作可以將excel轉化為xml檔案:

錶轉化為xml檔案,存在customXml資料夾下