Security Study/Web

์ทจ์•ฝ์  ์ ๊ฒ€ํ•˜๋‹ค๊ฐ€ ์‹ ๊ธฐ๋ฐฉ๊ธฐํ•œ ๊ฒƒ์„ ๋ณด์•˜๋‹ค.!!!!

๐“›๐“พ๐“ฌ๐“ฎ๐“ฝ๐“ฎ_๐“ข๐“ฝ๐“ฎ๐“ต๐“ต๐“ช 2023. 10. 9.
728x90
๋ฐ˜์‘ํ˜•

ํ•ด๋‹น ๋ธ”๋กœ๊ทธ๋Š” ํ•ดํ‚น ๋ฐ ๋ณด์•ˆ ๋ธ”๋กœ๊ทธ๋กœ ๊ณต๋ถ€ ๋ฐ ์—ฐ๊ตฌ์šฉ์œผ๋กœ ์ž‘์„ฑ๋˜์–ด์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜์˜ ๋‚ด์šฉ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ดํ‚น ์‹œ๋„ ๋ฐ ์‹ค์ œ ๊ณต๊ฒฉ์„ ์‹œ๋„ํ•˜์—ฌ ์ผ์–ด๋‚˜๋Š” ๋ชจ๋“  ์ฑ…์ž„์€ ๋ณธ์ธ(๋”ฐ๋ผํ•œ์ž)์—๊ฒŒ ์žˆ์Œ์„ ์•Œ๋ ค๋“œ๋ฆฌ๋ฉฐ, ๊ธ€์“ด์ด๋Š” ์•„๋ฌด๋Ÿฐ ์ฑ…์ž„์„ ์ง€์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ผญ ๊ณต๋ถ€ ๋ฐ ์—ฐ๊ตฌ์šฉ์œผ๋กœ๋งŒ ์‚ฌ์šฉํ•˜์—ฌ ์ฃผ์‹œ๊ธธ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

์—…๋ฌด๋ฅผ ํ•˜๋ฉด์„œ ์ด๊ฒƒ์ €๊ฒƒ ๋งŽ์ดํ•˜๋‹ค๋ณด๋‹ˆ ์ด๋ฒˆ์— ์กฐ๊ธˆ ์‹ ๊ธฐํ•˜๊ณ  ์žฌ๋ฐŒ๋Š” ๊ฒƒ์„ ์•Œ์•˜๋‹ค. ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์€ ์•Œ์ˆ˜๋„์žˆ๋Š”๋ฐ ๊ฐœ์ธ์ ์œผ๋กœ๋Š” ๋‚˜๋ฆ„ ํฅ๋ฏธ๋กœ์›Œ์„œ ๋ธ”๋กœ๊ทธ๋กœ ์ž‘์„ฑํ•ด๋ณธ๋‹ค.

 

๋ญ ๋Œ€๋‹จํ•œ๊ฑด ์•„๋‹ˆ์ง€๋งŒ html์‚ฌ์šฉํ• ๋•Œ python์„ ์‚ฌ์šฉํ•  ์ˆ˜์žˆ๋„๋ก ํ•˜๋Š” pyscript์ด๋‹ค.

https://pyscript.net/

 

Pyscript.net

Run Python code in your HTML.

pyscript.net

๊ธฐ๋ณธ์ ์œผ๋กœ php, asp, jsp ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด์„œ ์ฒ˜๋ฆฌ๋ฅผ ๋งŽ์ดํ•˜์ง€๋งŒ ์–ด์ฉŒ๋‹ค๋ณด๋ฉด python์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. ์Œ ... ํ•œํŽธ์œผ๋กœ python์œผ๋กœ web์„ ๊ตฌ์ถ•ํ•˜๋Š” ์žฅ๊ณ ๋‚˜ ํ”Œ๋ผ์Šคํฌ์™€ ๊ฐ™์€ ๊ฒƒ์„ ์ด์šฉํ•˜์—ฌ ์›น์„ ๊ตฌ์ถ•ํ•˜๋Š” ๋ถ€๋ถ„์— ์žˆ์–ด์„œ pyscript๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹Œ๊ฐ€๋ผ๋Š” ์ƒ๊ฐ์ด ๋“ ๋‹ค.

 

pyscript์˜ ๊ฒฝ์šฐ ์‚ฌ์šฉํ•จ์— ์žˆ์–ด ํŠน๋ณ„ํ•˜๊ฒŒ ๋ญ ํ• ๊ฒƒ์—†์ด ๋งํฌ๋ฅผ ๊ฑธ์–ด์„œ import์‹œํ‚ค๋Š” ํ˜•์‹์œผ๋กœ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. 

๊ฐ„๋‹จํ•œ ์˜ˆ์ œ๋ฅผ ๋ณด๋ฉด ์ดํ•ด๊ฐ€ ๊ฐˆ๊ฒƒ์ด๋‹ค.

<html>
<head>
    <meta charset="UTF-8">
    <title>PyScript Hello World</title>
<!-- import -->
    <link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
    <script defer src="https://pyscript.net/alpha/pyscript.js"></script>

</head>
<body>
    <div>
        <py-script>
text = "Hello World"
print(text)
        </py-script>
    </div>
</body>
</html>

์ด๋ ‡๊ฒŒ ์ž‘์„ฑ์„ ํ•˜๊ฒŒ๋˜๋Š”๋ฐ pyscript๋ฅผ ์‚ฌ์šฉํ•จ์— ์žˆ์–ด ์„ ์–ธ์„ ํ•˜๋Š” <py-script>๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

 

pyscript์˜ ํŠน์ดํ•œ ์ ์€ ์ฝ”๋“œ๊ฐ€ ๊ตฌ๋™์ด๋˜๋ฉด ๋กœ๋”ฉ ์ฐฝ์ด ๋ฐœ์ƒํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

์ฒ˜์Œ์— ์›นํŽ˜์ด์ง€์—์„œ pyscript๋งŒ์œผ๋กœ ๋‹ค์‹œ ๋กœ๋”ฉ์ด ๋˜๋Š” ๊ฒƒ์„ ๋ณด๋‹ˆ ์‹ ๊ธฐํ–ˆ๋‹ค. ์‹ค์ œ๋กœ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ• ๋•Œ ๋ชจ๋“ˆ์„ import ์‹œํ‚ฌ์ˆ˜ ์žˆ๋Š” ๊ฒƒ๋˜ํ•œ ์ฐธ์‹ ํ–ˆ๋‹ค. ๋ง๊ทธ๋Œ€๋กœ ์šฐ๋ฆฌ๊ฐ€ ํ”ํžˆ  python์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ์‚ฌ์šฉ์„ ํ• ์ˆ˜ ์žˆ๋˜๊ฒƒ์ด๋‹ค.

 

๋ญ”๊ฐ€ ์—…๋ฌด๋ฅผ ํ•˜๋ฉด ํ• ์ˆ˜๋ก ์ฒ˜์Œ๋ณด๊ณ  ๋“ฃ๊ธฐ๋งŒํ–ˆ๋˜๊ฒƒ์„ ์‹ค์ œ๋กœ ๋ณด๊ณ  ํ•˜๋‹ˆ ์‹ ๊ธฐํ•œ๊ฒƒ๊ฐ™๋‹ค.

 

ํ•˜๋‚˜ํ•˜๋‚˜ ๊ธ€์„ ์ž‘์„ฑํ•ด๋‘ ์œผ๋กœ ๊ธฐ์–ตํ•ด์•ผ๊ฒ ๋‹นใ…‡ใ…‡ใ…‡

728x90
๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€