一、 Signin
通過觀察附件得到附件為一個文本 全由01組成
根據以往的經驗來是這個應該是是通過PIL庫將01轉換為像素點來構造二維碼
from PIL import Image
MAX = 500
pic = Image.new("RGB", (MAX, MAX))
str="1111...1111" #檔案太大所以省略了檔案內容"
i = 0
for y in range(0, MAX):
for x in range(0, MAX):
if str[i] == '1':
pic.putpixel([x, y], (0, 0, 0))
else:
pic.putpixel([x, y], (255, 255, 255))
i = i + 1
pic.show()
pic.save("flag.png")
構造出這么一個二維碼
這個二維碼是不完整的缺少一個定位角但是無傷大雅有這么一個神奇的網站https://demo.dynamsoft.com/barcode-reader/
缺少一個定位角掃描對他來說都不是事(可惜了是個在線工具建議大家還是學一下咋補定位角)

掃描出來的結果就是這段就是flagflag{5E57527B60}
二、 日志分析
解壓后得到一個access.log,用notepad++打開,嘗試搜索password查看其中sql陳述句發現規律,看得出來他是嘗試列舉進行暴力破解密碼

一共十個字母,經過分析發現,狀態碼200后面的數字,跟前面的select陳述句有關系
675代表True,678代表False,所以可以看出,經過篩選后的ASCII碼有十個相對應的字母,加上flag{}提交即可
三、 ICS-Modbus的秘密
解壓后得到modbus的秘密.pcap用Wireshark打開根據提示直接找最長的modbus,flag就在里

四、 Decode
文本給了三組nec,常見題型,直接寫腳本
from Crypto.Util.number import GCD, inverse, long_to_bytes
n1 = 15228664629164509105936278301396170708905691970126305196584505186788860519598413718493859625462561931380632032431490419378905593909771649295663481782473029836321132574188559245931660756414915507930357509270674460219615256962333464689419869130366867401404262606367700782040693275068101244535880649261286041921882470460606034302142183971677715439862839410834231609821777031530457674591868138859358815039755085358568037032478394036448363183057305077227769673701227083943898736796552550712057417053897722979700329662099072959306298177351997084389916443815546425080826441671985030755256185725913397986385179516049927425591
n2 = 28182418532443955655250943929828439725377604572088962537896240628709829618999901367131159759359513146864646169253348651905865895468151210748207509325666501438590382812326109260537618829438786609626137074778638549998280533912080708785604673270460635181275360847313985764185991865570533815651261638439461846512012164531330949433517277559149828806588070421852157781670188281908625986974579194819272643409859915715455134433970119584552350648013116998668938513347083566970423327936691885137812528912263666957628197241313496232397910546498542303925205356813548741679943691886217742767778075067797422624969714343428365022749
n3 = 18355811159408154065817199279776805621878757240392366715869421799780946779485225342662736231980532326015283372375030686507311099745671828649419794838611580909610100636296701054995302819692794479292794716441442731393027118795245239019609474743841061251498233337758043553376098591254587406941205804917663153256036922860462415387926973551020540123742773938055950168965005226319984869124543783579240130888344231027912143592472823564266887957101575622993773291455143915263715932280728961208233983782906070719786115187115449430196335973764600533097718947377609348244073036523422892353195107093782201003551217830556519184839
e1 = 65537
e2 = 27751
e3 = 65537
c1 = 5368342382489380107251269030258282008067103595899117880173297169710980852124379736420135829984131832023988667774795223808420069001078159756328642298736759964890517323144475742861501409284299556459601222657540302786301791897975932176538612601162552795835603779910738886150925504885639254302406755008796950704938463132687940418772021406619622090999564746948113296328739593309200238996686945891130656599419832796482095787039339269564880847130379179831744694000940207887150388411084465949903406848727641093033681144598595895383689139227400553234701993087147186292040330589331703587405822925483701667354935313494938769206
c2 = 21521672635651854919517759696514027081496995002884626306313384597771682621826437868933822942195279941318573525337109548152966094293276717095298929811895186384560362917891928656637913236676702009205642367801075592458101830488916914437754803979953027152373619293870115731171449223105986403604973873007338969000153480949617700626516389419935352576014084068271819009465242491467427642787306345049280205827574043586767133396458785487959251540831856187380154825027964867977651727983254127239427622549059938701125498520279503972702883327594442747467858234391945790597844344295786118320620376681461727686876948563884520137741
c3 = 13940747781246179701167820858098775936269078279837839169409057305686612176371099274767269714494905207551971162649902129137425806839867713157472497469542260664882313041602553845621113546259276402534229231780532278276697961222319054833980226978574905974878218905613341365260453461080117407529132948986104191917111000811731784483944945364091757083949827612260904757837644538366763161154611658652020868326985526984718638276184626634240096213703958275241215175054246685206226179114590838833694648062135027841593419815101363262701960507235056752424778384286627997500871204804629047307688466887868894491042058198480775705486
p1 = GCD(n1, n2)
q1 = n1 // p1
phi1 = (p1 - 1) * (q1 - 1)
d1 = inverse(e1, phi1)
str1 = long_to_bytes(pow(c1, d1, n1))
p2 = GCD(n1, n2)
q2 = n2 // p2
phi2 = (p2 - 1) * (q2 - 1)
d2 = inverse(e2, phi2)
str2 = long_to_bytes(pow(c2, d2, n2))
p3 = GCD(n2, n3)
q3 = n3 // p3
phi3 = (p3 - 1) * (q3 - 1)
d3 = inverse(e3, phi3)
str3 = long_to_bytes(pow(c3, d3, n3))
print(str1.split(b'is :')[1] + str2.split(b'is :')[1] + str3.split(b'is :')[1])
得到flagflag{G00d_w4y_tO_cR4ck_RS4}
五、 my Tempalate
用御劍直接掃

發現有個www.zip然后直接下載代碼審計發現把session洗掉,然后訪問admin.php,GET傳參,覆寫掉
f
i
l
e
,
在
利
用
d
a
t
a
偽
協
議
給
file, 在利用data偽協議給
file,在利用data偽協議給content,于是構造payload:/admin.php?file=data:text/plain,<?php echo(`ls`)?>在根下有flag.php,cat一下,得到flag
六、 Mastof of VM
用xshll連接到ssh發現有個flag檔案

但是無法下載我試著去其他目錄尋找在根目錄找到了這個flag.txt檔案里面就是flag
PS:高職組的小菜雞第一次參與這種ctf賽第一次寫wp寫的不好多多見諒
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/374592.html
標籤:其他
上一篇:WinXP虛擬系統的安裝與優化
下一篇:OSSIM專案研究記錄(十二)
