| 2019-05-19 nodeJS 中的 fs module 介紹 前言在學習任何一個語言一定都會遇到檔案讀寫,在 nodeJS 中的檔案讀寫幾乎都能透過 fs 這個 module 來完成。 而且在 fs API 中有這麼一段話 All file system operations have synchronous and asynchronous forms. 對於開發者來說實在是非常棒,不像有些 module 同步與異步是分開成兩個不同的 module。 常用操作讀取文件以下要注意第二個參數要指定編碼,否則印出來會是 raw data 的 ...
| 2019-05-19 實作 facebook OAuth2 登入機制 前言前幾週看到 developer-roadmap 中的後端能力技能樹,看到了 OAuth2 這個聽過多次但是沒有實際實作過的驗證機制。於是開啟了自己實作的想法。 完整的做法放在 oAuth-fb-tutorial 中,以下紀錄了如何配置以及申請 token。 setup 首先,先在 facebook for developers 註冊應用程式 在此專案目錄下建立 .env, 並且將你的資料填入 1234facebook_client_id=facebook_secre ...
| 2019-05-07 telegram-bot API 懶人包 前言這幾天接觸了 telegram API,用來串一些間單的程式並且將結果發送給自己,一開始用的是 node-telegram-bot-api ,但昨天發現裡頭有些 event 設計似乎不是這麼直覺。 ...
| 2019-03-29 了解nodeJS中的this “This” in nodeJS以下討論 nodeJS 中的 this,與 javascript 中的 this 不同,請不要搞混了。 function 外的 thisfunction 外的 this 指向 module.exports 1console.log('outside: ', this) // {} 12module.exports.bar = 3console.log('outside: ', this) // outside: { bar: 3 } 切記 ...
| 2019-03-25 了解javesvript中的var 記錄幾個月前幫助同學遇到的一個問題,同時了解背後的原理。 12345for (var i = 0; i 5; i++) { setTimeout(() => { console.log(i) }, 0)} output: 5 5 5 5 5 很多人會認為 output 應該為 0 1 2 3 4 要記得 callback function 會被丟到 callback queue 等到 thread 有空才去執行,所以一共有 5 個 callback function ...
| 2019-03-19 如何在Linux上掛載外接硬碟 前言最近在練習 quota 用來配置每一個使用者的目錄用量, quota 是以分割區為單位,發現自己連硬碟掛載都不太熟悉,可以是平常都用遠端機器的緣故,較少掛載經驗,此篇文章記錄一下掛載過程。 接上硬碟無論是實體硬碟,虛擬硬碟,接上後第一步應該確認是否成功讀取 ls /dev/sd* 分割確認讀取之後,先用 fdisk 確認硬碟是否正確fdisk -l /dev/sdb 使用 fdisk 分割硬碟fdisk /dev/sdb 進入 fdisk 程式後,使用 m 來查看指令,並 ...
| 2019-03-10 如何在 macOS 上自行安裝 openJDK 在執行 ghidra 的時候,跳出一條錯誤訊息 JDK 11+ could not be found and must be manually chosen! 但是去 oracle java 的網站上只有看到第八版的 JDK 於是找到了 openJDK,以下紀錄如何使用 openJDK 替換目前的 jave 環境 請至 jdk.java.net 下載 JDK11 下載完檔案名稱為 openjdk-11.0.2_osx-x64_bin.tar.gz (可以替換成自己下載的版本) ...
| 2019-03-09 Line台灣總部參訪心得 TL;DR前天與台科大資訊安全社的同學們一起參訪台灣 Line 總部,這篇文章簡單記錄心得。 正文 台灣 Line 總部位於台北市內湖區的辦公大樓內,接待我們的是一位資訊安全的工程師 David。David 讓我們先搭電梯去辦公大樓內的 10 樓等待,途中剛好在 4 樓門就打開了,映入眼簾的是簡約的 Line 字樣,秀在辦公室的毛玻璃上面。當時以為聽錯了,其實是要到 4 樓。後來發現原來 4 ~ 10 樓通通都是 Line 的總部,差別在於不同部門而已。 除了介紹 Line ...
| 2019-03-06 在ubuntu上將nginx升級至http/2 前言架設 web server 時,把基本設定(virtual host)設定完之外,最麻煩的一件事情就是設定憑證。因為憑證有期限,除了申請憑證外還要排程去定期更新,否則自己忘記憑證到期的話,某一天網站就無法被正常存取了 現在 cloudflare 有提供免費 SSL 服務,只需要按幾個按鍵就搞定了。但 SSL 畢竟是 server side 的事情,給 cloudflare 幫你做,還要開啟 CDN ,如果只是靜態網頁的話沒問題。需要用 reverse proxy 的話,C ...
| 2019-03-02 buffer overflow搭配ret2libc之攻擊手法介紹 前言buffer overflow 以下簡稱為 BOF。 BOF 是一個常見的攻擊手法,透過 BOF 可以達成各種不同的目的,像是: ret2text ret2shellcode ret2syscall ret2libc 本文將透過 2018-EOF 的 pwn3 來說明 ret2libc 的攻擊手法 分析題目(題目給了一個 ELF 檔案 以及 libc.so.6) 拿到題目第一步,先丟到 IDA 中逆向 --> 同時查看 ELF 檔案的保護狀態 --> 這兩個線 ...