pengetahuan ini diberikan berdasarkan referensi dari http://phrack.org/issues.html?issue=67&id=13#article pada daemon2 yang dikompile dg proteksi SSP : | ..P.. | ..P.. | ..P.. | ..P.. | ..C.. | ..C.. | ..C.. | ..C.. | P - 1 byte of buffer C - 1 byte of canary keterangan: 1 byte umumnya terdiri dari 256 kemungkinan metode 1 (tidak efektif). pada mesin 32 bit : teknik bruteforce dengan kemungkinan 2^32 = 4 milyar lebih kemungkinan nilai canary dengan rata tingkat keberhasilan setelah 2 milyar kali uji coba. pada mesin 64 bit: teknik bruteforce dengan kemungkinan 2^64 kemungkinan nilai canary metode 2 (lebih efektif pada program 2 yang melakukan fork tapi tidak diikuti oleh execve). byte for byte (tidak efektif pada program dengan fork yang diikuti oleh execve) karena pada saat execve nilai canary berubah. teknik ini hanya efektif pada daemon2 dengan forking tanpa diikutin execve, tingkat keberhasilan teknik ini sekitar 512 kali uji coba. teknik ini dilakukan dengan melakukan overwrite 1 byte canary selanjutnya kita liat apa daemon crash, jika daemon tetap berjalan atau response lebih lama berarti nilai canarynya bener. metode 3. metode ini bisa dilakukan kurang lebih sama seperti teknik di atas, yang membedakan hanya di pengecekan response dari daemon yg sedang dibrute jika response dari daemon adl sesuai yg kita harapkan berarti 1 byte telah teroverwite dg nilai yg tepat. kemungkinanya menjadi 4*256 = 1024 kemungkinan First byte: | ..P.. | ..P.. | ..P.. | ..P.. | ..X.. | ..C.. | ..C.. | ..C.. | Second byte: | ..P.. | ..P.. | ..P.. | ..P.. | ..X.. | ..Y.. | ..C.. | ..C.. | Third byte: | ..P.. | ..P.. | ..P.. | ..P.. | ..X.. | ..Y.. | ..Z.. | ..C.. | Fourth byte: | ..P.. | ..P.. | ..P.. | ..P.. | ..X.. | ..Y.. | ..Z.. | ..A.. |