ν”„λ‘œμ νŠΈ κΈ°κ΄€ AI Spera
ν•œ 쀄 μ†Œκ°œ κΈ°μ—…μ˜ IT μžμ‚°μ˜ μœ„ν˜‘μ„ νƒμ§€ν•˜λŠ” κ³΅κ²©ν‘œλ©΄κ΄€λ¦¬(Attack Surface Management) λ³΄μ•ˆκ΄€μ œ μ„œλΉ„μŠ€
λ‹΄λ‹Ή Skills Flask, Nginx, uwsgi, Selenium, Pandas
νŒ€ ꡬ성 DBA 1λͺ…, FrontEnd 1λͺ…, Backend 2λͺ…, λ””μžμ΄λ„ˆ 1λͺ…
μˆ˜ν–‰κΈ°κ°„ 2021.04 ~ 2021.10

πŸ“–Β μ„œλΉ„μŠ€ λ‚΄μš©

Untitled

<aside> πŸ“Œ 24/7 둜 κ°€λ™λ˜λ©° μˆ˜μ§‘λ˜λŠ” μΈν…”λ¦¬μ „μŠ€ 데이터 리포트, 취약점 등을 ν•œλ²ˆμ— 확인할 수 μžˆλŠ” IT μžμ‚°μ„ 기반으둜 ν•œ λ³΄μ•ˆκ΄€μ œ, μœ„ν—˜νƒμ§€, 그리고 μœ„ν—˜κ΄€λ¦¬ μ‹œμŠ€ν…œμž…λ‹ˆλ‹€. 200얡건에 이λ₯΄λŠ” Data λ₯Ό 톡해 μ •ν™•ν•˜κ³  λΉ λ₯΄κ²Œ νƒμ§€λœ 톡계λ₯Ό ν•˜λ‚˜μ˜ 리포트둜 μ „μ†‘ν•©λ‹ˆλ‹€.

</aside>

πŸ›  μ‚¬μš© 기술 및 라이브러리

πŸ–₯ λ‹΄λ‹Ή κΈ°λŠ₯

μ„œλΈŒλ„λ©”μΈ, μœ μ‚¬λ„λ©”μΈ μΆ”μΆœ

ꡬ글에 νŠΉμ •ν‚€μ›Œλ“œλ₯Ό κ²€μƒ‰ν•΄μ„œ λ‚˜μ˜€λŠ” λͺ¨λ“  νŽ˜μ΄μ§€μ˜ url 을 크둀링을 ν•œ ν›„, 필터링 과정을 거쳐 μ„œλΈŒλ„λ©”μΈμ„ μ–»λŠ” 과정을 κ±°μ³€μŠ΅λ‹ˆλ‹€. μ‚¬μš© κΈ°μˆ λ‘œλŠ” Selenium, BeatifulSoup4, Pandas κ°€ μžˆμŠ΅λ‹ˆλ‹€.

Risk Management Report νŽ˜μ΄μ§€ μœ μ§€λ³΄μˆ˜

웹화면에 λ³΄μ—¬μ§ˆ 레포트λ₯Ό μƒμ„±ν•˜κ³ , νŽ˜μ΄μ§€μ— ν•„μš”ν•œ API 듀을 μœ μ§€λ³΄μˆ˜ν–ˆμŠ΅λ‹ˆλ‹€. λ“±λ‘ν•œ IP / Port, ν‚€μ›Œλ“œμ— λŒ€ν•œ 정보λ₯Ό json ν˜•νƒœλ‘œ λ¦¬ν¬νŠΈν™” ν•˜λŠ” 데λͺ¬μ„ μœ μ§€λ³΄μˆ˜ν–ˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ, DB에 μ €μž₯된 리포트λ₯Ό μ „λ‹¬ν•˜λŠ” API λ₯Ό μƒμ„±ν–ˆμŠ΅λ‹ˆλ‹€. μ΄ˆκΈ°μ—λŠ” λ°°λ„ˆμ „μ²΄ 정보λ₯Ό json λ ˆν¬νŠΈμ— λ„£μ–΄ μ €μž₯을 ν•˜μ˜€μ§€λ§Œ, 데이터가 λ§Žμ•„μ§μ— 따라 λ””λΉ„ λΆ€ν•˜κ°€ μ‹¬ν•΄μ‘ŒμŠ΅λ‹ˆλ‹€. 일뢀 λ°°λ„ˆ μ •λ³΄λ§Œ 디비에 μ €μž₯ν•˜λ„λ‘ μˆ˜μ •ν•˜μ—¬ λŒ€μ‘ν•˜μ˜€κ³ , 더보기 λ²„νŠΌμ„ νŽ˜μ΄μ§€μ— μΆ”κ°€ν•˜μ—¬ 클릭될 μ‹œ, ν•΄λ‹Ή IP address / portλ₯Ό μ‹€μ‹œκ°„μœΌλ‘œ Elastic Search μ—μ„œ κ²€μƒ‰ν•˜μ—¬ λ°°λ„ˆ 전체 정보λ₯Ό νŒμ—…ν˜•νƒœλ‘œ 보여주도둝 κΈ°λŠ₯을 μΆ”κ°€ν•˜μ—¬ 이슈λ₯Ό ν•΄κ²°ν•  수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€.

닀크웹 νŽ˜μ΄μ§€ 생성

웹화면에 λ³΄μ—¬μ§ˆ 레포트λ₯Ό μƒμ„±ν•˜κ³ , νŽ˜μ΄μ§€μ— ν•„μš”ν•œ API 듀을 섀계, 생성, μœ μ§€λ³΄μˆ˜ν–ˆμŠ΅λ‹ˆλ‹€. νŠΉμ • ν‚€μ›Œλ“œλ₯Ό ν¬ν•¨ν•œ λ°°λ„ˆλ₯Ό Eleastic Search 둜 κ²€μƒ‰ν•œ ν›„, κ·Έ κ²°κ³Ό(onion url, λ°°λ„ˆ 일뢀, μŠ€ν¬λ¦°μƒ·μ΄ μ €μž₯된 경둜)λ₯Ό json ν˜•νƒœμ˜ 리포트둜 λ§Œλ“€μ–΄ DB에 μ €μž₯ν•˜λŠ” 데λͺ¬μ„ λ§Œλ“€μ—ˆμŠ΅λ‹ˆλ‹€. 닀크웹 νŽ˜μ΄μ§€μ— μ ‘κ·Όν•  경우, 디비에 μ €μž₯된 리포트λ₯Ό μ „λ‹¬ν•˜λŠ” API λ₯Ό μƒμ„±ν–ˆμŠ΅λ‹ˆλ‹€. νŽ˜μ΄μ§€λ„€μ΄μ…˜μ„ κ³ λ €ν•˜μ—¬ μ„€κ³„ν–ˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ, λ°°λ„ˆμ˜ 경우 μ›ΉνŽ˜μ΄μ§€μ—μ„œ λ°°λ„ˆμ˜ 전체λ₯Ό 보여주기 μ–΄λ ΅κΈ° λ•Œλ¬Έμ—, 더보기 λ²„νŠΌμ„ μΆ”κ°€ν•˜μ—¬ λ²„νŠΌμ„ λˆŒλ €μ„ 경우, λ°°λ„ˆ 전체λ₯Ό λ¦¬ν„΄ν•΄μ£ΌλŠ” API λ₯Ό μƒμ„±ν–ˆμŠ΅λ‹ˆλ‹€.

Summary νŽ˜μ΄μ§€ 생성

κΈ°λŠ₯을 κΈ°νšν•˜κ³ , 웹화면에 λ³΄μ—¬μ§ˆ 레포트λ₯Ό μƒμ„±ν•˜κ³ , νŽ˜μ΄μ§€μ— ν•„μš”ν•œ API 듀을 섀계, 생성, μœ μ§€λ³΄μˆ˜ν–ˆμŠ΅λ‹ˆλ‹€.λ“±λ‘λœ IP/port, λ“±λ‘λœ ν‚€μ›Œλ“œμ™€ μ—°κ΄€λœ IP/port 에 λŒ€ν•œ port λ²ˆν˜Έμ™€, λ°°λ„ˆμ •λ³΄λ₯Ό 기반으둜 λΆ„λ₯˜ν•˜μ—¬ 톡계결과λ₯Ό λ³΄μ—¬μ£ΌλŠ” νŽ˜μ΄μ§€λ₯Ό 기획, 섀계, API μš΄μ˜μ„ ν–ˆμŠ΅λ‹ˆλ‹€.

메일링 κΈ°λŠ₯

이슈 λ°œμƒμ‹œ λŒ€μ‘ν•˜κ³  메일링 데λͺ¬μ„ μœ μ§€λ³΄μˆ˜ν–ˆμŠ΅λ‹ˆλ‹€. 맀일 μΌμ •μ‹œκ°„μ— κ³ κ°μ—κ²Œ 레포트λ₯Ό μ „μ†‘ν•˜λŠ” 데λͺ¬μ„ μœ μ§€λ³΄μˆ˜ν–ˆμŠ΅λ‹ˆλ‹€. μ •μƒμ μœΌλ‘œ 전솑이 λ˜μ—ˆλŠ”μ§€ ν™•μΈν•˜κ³ , 전솑이 λ˜μ§€ μ•Šμ•˜μ„ 경우 μ›μΈνŒŒμ•…κ³Ό λŒ€μ‘μ„ ν–ˆμŠ΅λ‹ˆλ‹€.