Skip to content

Instantly share code, notes, and snippets.

View ts0818's full-sized avatar

ts0818 ts0818

View GitHub Profile
@ts0818
ts0818 / mail_header_injection.php
Created November 5, 2015 08:44
PEAR::Mail_RFC822から抜き出したメールアドレスの正規表現による判定
<?php
function isValidInetAddress($data, $strict = false){
// 次の行は、表示改行されていますが実際は一行です
$regex = $strict ? ' /^([.0-9a-z_+-]+)@(([0-9a-z-]+\.)+[0-9a-z]{2,})$/i ' :
' /^([*+!.&#$|\'\\%\/0-9a-z^_`{ }=?~:-]+])@(([0-9a-z-]+\.)+[0-9a-z]{2,})$/i ';
if(preg_match($regex, trim($data),$matches)){
return array($matches[1], $matches[2]);
}else{
return false;
}
@ts0818
ts0818 / null_byte_attack_02.php
Created November 5, 2015 07:48
パーフェクトPHP nullバイト攻撃対応方法
<?php
/**
* 文字列中のnullバイトを削除する関数
* 引数が配列の場合は、配列の要素に対して再帰的に処理を行う
*/
function delete_null_byte($value){
if (is_string($value) === true) {
$value = str_replace("\0", "", $value);
} elseif (is_array($value) === true) {
$value = array_map('delete_null_byte', $value);