在臺中科技大學學生系統快速登記工讀時數
最近有用到學校工讀生的時數登記系統登錄自己的工讀時數,今天要用的網站在 eportal 登入後的學生管理系統>外部連結 - 其他服務>工讀金申請 這個網站,點進去是長這樣的...


啊這個網站沒有 https 所以瀏覽器跳出警告了,想當然我的工讀時數用明文傳輸絕對不會怎樣,就按繼續吧!
選擇課指組的工讀作業>工讀紀錄表每日登錄作業

接著會跳出這個規則要你讀,這幾項都蠻重要的,尤其是那個必須以小時為單位的規則,登記的時候一定要湊成整點或多一點。要是登記開始和結束時間只有間隔 59 分鐘,系統會當成你沒做。讀懂規則後點選下面的工讀金申請按鈕。

這就是這個工讀金登入系統的本體了,我們要根據實際狀況把工作的開始和結束時間輸入進對應的日期,操作起來非常「直覺」,就是用下拉選單選開始和結束時間,但設計系統的人看起來是把可選項用小時(7點~22 點)和一小時的 60 個數字用卡式積生成,一小時就產生了 60 個選項,我都在下午工讀我的滾輪怕不是要壞掉,這太可怕了。於是我默默打開了 burp suite ,我合理推斷都用表格這樣生成的話大概只是一直重複把當天的工讀時間和結束時間塞在 post 傳給後端, payload 格式絕對不會很複雜……。

正式操作
用 burp suite 打開 proxy 瀏覽器到輸入時數的系統開啟 intercept 攔截請求,我先隨便編輯某一欄並儲存變更。

攔截到的 POST 請求有很多條的 StartTime 和 EndTime ,推測後面的 AX 的數字就是幾號的日期,一開始從 Func 到 ApplyType 基本上可以不用動,原本長什麼樣子就維持原狀,也不用抄我的,每個人的應該會有些微的不同,對我們來說比較重要的是 WorkYM 這個欄位,這是要輸入的時數所在的年和月份,每個月都不一樣,要把輸入 113 年 12 月的工讀時數就要寫 11312,依此類推。

一天可以輸入兩個時段,分別紀錄開始和結束時間和一筆文字註記,每個參數用 & 隔開,假設我在這個月 3 號早上 9 點 10 分~ 10 點和下午 3 點~4 點工讀,那 3 號的欄位就要這樣寫:
&StartTimeA3=0910&EndTimeA3=1000
&StartTimeB3=1500&EndTimeB3=1600&Comment3=