Skip to content

Zeroplex 生活隨筆

軟體開發、伺服器和生活瑣事

小 縮小字型大小。 中 重設字型大小。 大 放大字型大小。

分類: 未分類

XSS Filter on CodeIgniter

Posted on 2012 年 6 月 13 日2021 年 3 月 12 日 By 日落 在〈XSS Filter on CodeIgniter〉中有 2 則留言

過去防止 XSS 攻擊都是透過 htmlspecialchars() 將「<」、「>」等符號編碼,但若是前端有使用 CKEditor 之類工具,文章中的樣式也會全部被洗掉。

最近用 CodeIgniter Input class 提供的 XSS filter 時,無意間發現 filter 不是將所有特殊符號過濾掉,而是經過 parser 以後才決定哪些標籤和屬性需要刪除。

一般常見用來測試 XSS 的字串:

<script>alert(123)</script>

輸出:

[removed]alert(123)[removed]

若是將 javascript 嵌在屬性當中,CodeIgniter 會將標籤留下、屬性刪除:

<a href="#" onclick="alert(123)">test</a>

輸出:

<a >test</a>
Tags:CodeIgniter, PHP, 資訊安全

取消 Ubuntu 上 MySQL 的開機自動啟動

Posted on 2012 年 6 月 8 日2021 年 3 月 12 日 By 日落 在〈取消 Ubuntu 上 MySQL 的開機自動啟動〉中有 2 則留言

由於小筆電跑很慢、記憶體也不多,想說 Apache 和 MySQL 都取消開機自動啟動,有需要在手動執行,便把 /etc/init.d 底下二個 script 砍刪除:

$ cd /etc/init.d/
$ rm apache2 mysql

重新啟動後,Apache 沒有啟動,但是 MySQL 卻活的好好的!

執行 /etc/init.d/mysql stop 後才注意到提示訊息,MySQL 必須使用 service 來控制啟動與停止:

Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service mysql start

Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the start(8) utility, e.g. start mysql
mysql start/running, process 2035

service 似乎只能控制啟動或是停止服務,並沒有辦法修改開機啟動設定,問了男人以後看到「see also」有個 update-rc.d,男人說是用來設定不同 run-level 底下服務是否啟動。

印象中 Ubuntu 沒有 run-level 這東西吧,不過試試也無妨:

$ update-rc.d mysql disable 2 3 4 5    # /etc/init.d/mysql missing LSB information
$ update-rc.d -f mysql remove   # Nothing special

重新開機,還是看到 MySQL 在對我微笑 ……

找了 chkconfig、sysv-rc-conf 來看到底是自己代賽還是哪裡出錯,不過確實看到 MySQL 在 run-level 2 3 4 5 下都是關著的,開機仍舊會自動啟動。

Linux 上 everything is a file,不會用工具至少還可以改設定檔內容,用 find 和 grep 把 /etc 底下所有和 mysql  有關的檔案都掃了一遍,發現 /etc/init (不是 init.d) 下還有個 mysql.conf,而且把這個設定檔砍掉以後 service 就無法辨識服務。

開啟 /etc/init/mysql.conf,前面有幾行,註解掉以後開機就不會自動啟動 MySQL 了:

start on (net-device-up
          and local-filesystems
          and runlevel [2345])
stop on runlevel [016]

Ref:
Disable autostart from mysql
http://ubuntu.5.n6.nabble.com/Disable-autostart-from-mysql-td1537743.html

ps. 太久沒寫文章,手感都沒了 QQ

Tags:Linux, Ubuntu

gitignore @ github

Posted on 2012 年 5 月 26 日2021 年 3 月 12 日 By 日落 在〈gitignore @ github〉中有 2 則留言

用 CodeIgniter 當 framework 時,搞不清楚 .gitignore 要怎麼寫比較好。

後來才知道 Github 上面有個 gitignore 專案,已經整理了不少預設設定檔供參考,從 C/C++、Java、Objective-C 到常用的程式架構如 Android、CodeIgniter、CakePHP、Wordpress 等,直接複製貼上就可以用了,非常方便。

github/gitignore
https://github.com/github/gitignore

Tags:Git, 程式設計

日蝕

Posted on 2012 年 5 月 22 日2021 年 3 月 12 日 By 日落 在〈日蝕〉中尚無留言

前幾天有日蝕,但因天候不佳,感冒體力差,索性睡覺睡到自然醒。

沒拍到照片也沒關係,網路上可以看到不少大大的作品。不過 …. NASA 的照片還真是與眾不同啊! XD



Tags:生活雜記

在 Ubuntu 手動安裝 Qt SDK

Posted on 2012 年 4 月 28 日2021 年 3 月 12 日 By 日落 在〈在 Ubuntu 手動安裝 Qt SDK〉中尚無留言

以前一向都是從套件庫直接安裝 Qt SDK:

aptitude install qt-sdk

今天 checkout 別人的 project 出來編譯時,發現套件庫中的 Qt lib 版本有點舊 (好像是 4.6 吧),乾脆直接去 Qt 官網抓檔安裝來裝。

裝好後無意間發現 OpenGL 的範例程式編譯時都會出錯,弄了半天原來是從套件庫安裝時會自動把 OpenGL lib 裝上去,但是官網的安裝檔不會處理相依性問題。所以要自己手動補:

aptitude install libgl1-mesa-dev libglu1-mesa-dev libglut3-dev 
Tags:Qt, Ubuntu

文章分頁

上一頁 1 ... 124 125 126 ... 318 下一頁

其他

關於我  (About me)

  文章 RSS Feed

  留言 RSS Feed

Apache AWS Bash C/C++ Docker FreeBSD GCP Git Google Java JavaScript Laravel Linux Microsoft MSSQL MySQL Nginx PHP PHPUnit PostgreSQL Python Qt Ubuntu Unix Vim Web Windows WordPress XD 作業系統 分享 好站推薦 專題 攝影 新奇搞笑 新聞 旅遊 生活雜記 程式設計 網路架站 網頁設計 資訊學習 資訊安全 遊戲 音樂


創用 CC 授權條款
本著作係採用創用 CC 姓名標示-相同方式分享 4.0 國際 授權條款授權.