2017年7月19日 星期三

「淺談WAF在AWS的架構」小聚筆記

新知:
  1. OWASP top10 => https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project
  2. CVE & NVD
  3. PCI DSS
  4. DVWA => 資安測試
需研究:
  1. aws vpc
  2. aws alb
  3. aws cloudfront cooperate with waf
        總結來說aws的waf以業界的waf廠商來看還不是這麼完善,像log只能追到三小時前,不然只能自己寫script去定時抓,或是per web ACL只能支援10條....etc,不過夾帶著aws可以跟其他service一起管理的優勢,以及之後aws一定會更完善waf的架構,市佔率一定也會穩定提升的吧。

        講者建議白皮書必讀,六月剛發行的。

2017年7月16日 星期日

介紹php array_map

        有時候需要對array做一點另外的處理,譬如為每一個value做另外的處理:

$nameAry = ['Hong', 'Peiwen'];

$helloNameAry = array();
foreach ($nameAry as $name) {
    $helloNameAry[] = 'hello, ' . $name;
}

var_dump($helloNameAry);

        幫每一個name都加上一個hello,結果會是:


        但這樣一來可讀性很低,而且需要多新增一個$helloNameAry的參數去存result。

        這時候array_map就能派上用場了:

function addHello($name)
{
    return 'hello, ' . $name;
}

$nameAry = ['Hong', 'Peiwen'];

$nameAry = array_map('addHello', $nameAry);

var_dump($nameAry);

       這裏array_map會遍歷所有array的value去跑callback function,這裡的callback function指的是addHello,這樣寫的話,不僅重新parse array value的function可以複用,而且寫起來也比較優雅。

       如果不想另外另一個function的話,也可以直接寫在array_map的parameter裡面:

$nameAry = ['Hong', 'Peiwen'];

$nameAry = array_map(function ($v) {
    return 'hello, ' . $v;
}, $nameAry);

var_dump($nameAry);

        $v就是遍歷$nameAry裏的value,結果都會是:



參考資料:

http://php.net/manual/en/function.array-map.php