IoT Inspector๊ฐ ๋ฌด์์ธ์ง, ์ด๋ป๊ฒ ์๋ํ๋์ง ์๋ ค๋๋ฆฌ๊ฒ ์ต๋๋ค.
์ฌ๋ฌผ ์ธํฐ๋ท ๋ณด์ ์ ๋ณด
์ปจ์คํ
ํ์ฌ์ธ Bain & Company(
์
์ค๋งํธ ๊ธฐ๊ธฐ๋ฅผ ๋ณดํธํ๊ธฐ ์ํด IT ๊ธฐ์
๊ณผ ๋ํ์ ์ง์๋ค์ ์๋ก์ด ์ํํธ์จ์ด ๋๊ตฌ๋ฅผ ๊ฐ๋ฐํ๊ณ ์์ต๋๋ค.
์์คํ ์๋ ๋ฐฉ๋ฒ
IoT Inspector๋ ๊ธฐ์ ์ ์ฌ์ฉํ์ฌ ๋คํธ์ํฌ์์ IoT ์ฅ์น์ ํ๋์ ๋ชจ๋ํฐ๋งํฉ๋๋ค.
ARP ํจํท์ ๋ณด๋ผ ๋
class ArpScan(object):
def __init__(self, host_state):
assert isinstance(host_state, HostState)
self._lock = threading.Lock()
self._active = True
self._thread = threading.Thread(target=self._arp_scan_thread)
self._thread.daemon = True
def start(self):
with self._lock:
self._active = True
utils.log('[ARP Scanning] Starting.')
self._thread.start()
def _arp_scan_thread(self):
utils.restart_upon_crash(self._arp_scan_thread_helper)
def _arp_scan_thread_helper(self):
while True:
for ip in utils.get_network_ip_range():
time.sleep(0.05)
arp_pkt = sc.Ether(dst="ff:ff:ff:ff:ff:ff") /
sc.ARP(pdst=ip, hwdst="ff:ff:ff:ff:ff:ff")
sc.sendp(arp_pkt, verbose=0)
with self._lock:
if not self._active:
return
def stop(self):
utils.log('[ARP Scanning] Stopping.')
with self._lock:
self._active = False
self._thread.join()
utils.log('[ARP Scanning] Stopped.')
๋คํธ์ํฌ๋ฅผ ๋ถ์ํ ํ IoT Inspector ์๋ฒ๋ IoT ๊ฐ์ ฏ์ด ๋ฐ์ดํฐ๋ฅผ ๊ตํํ๋ ์ฌ์ดํธ, ๋ฐ์ดํฐ ๊ตํ ๋น๋, ํจํท์ ์ ์ก ๋ฐ ์์ ํ๋ ๋ณผ๋ฅจ์ ์ค์ ํฉ๋๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ์์คํ ์ ์ฌ์ฉ์ ๋ชจ๋ฅด๊ฒ PD๊ฐ ์ ์ก๋ ์ ์๋ ์์ฌ์ค๋ฌ์ด ๋ฆฌ์์ค๋ฅผ ์๋ณํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
ํ์ฌ ์ด ์ ํ๋ฆฌ์ผ์ด์
์ macOS์์๋ง ์๋ํฉ๋๋ค. ๋ค์์์ zip ์์นด์ด๋ธ๋ฅผ ๋ค์ด๋ก๋ํ ์ ์์ต๋๋ค.
์ฌํด ๊ฐ๋ฐ์๋ค์ Linux์ฉ ๋ฒ์ ์ ์ถ๊ฐํ๊ณ XNUMX์์๋ Windows์ฉ ์ ํ๋ฆฌ์ผ์ด์
์ ์ถ๊ฐํ๊ฒ ๋ค๊ณ ์ฝ์ํ์ต๋๋ค. ํ๋ก์ ํธ ์์ค ์ฝ๋๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค
์ ์ฌ๋ ฅ๊ณผ ๋จ์
๊ฐ๋ฐ์๋ค์ ์ด ์์คํ ์ด IT ๊ธฐ์ ์ด IoT ๊ธฐ๊ธฐ ์ํํธ์จ์ด์ ์ทจ์ฝ์ ์ ์ฐพ์ ๋์ฑ ์์ ํ ์ค๋งํธ ๊ธฐ๊ธฐ๋ฅผ ๋ง๋๋ ๋ฐ ๋์์ด ๋ ๊ฒ์ด๋ผ๊ณ ๋งํฉ๋๋ค. ์ด ๋๊ตฌ๋ ์ด๋ฏธ ๋ณด์ ๋ฐ ์ฑ๋ฅ ์ทจ์ฝ์ ์ ๊ฐ์งํ ์ ์์ต๋๋ค.
IoT Inspector๋ ์๋ฌด๋ ์ฌ์ฉํ์ง ์๋ ๊ฒฝ์ฐ์๋ ๋๋ฌด ์์ฃผ ํต์ ํ๋ ์ฅ์น๋ฅผ ์ฐพ์ต๋๋ค. ๋ํ ์ด ๋๊ตฌ๋ ์ ๋ฐ์ดํธ๋ฅผ ๋๋ฌด ์์ฃผ ๋ค์ด๋ก๋ํ๋ ๋ฑ ๋คํธ์ํฌ ์๋๋ฅผ ์ ํ์ํค๋ ์ค๋งํธ ์ฅ์น๋ฅผ ๊ฐ์งํ๋ ๋ฐ๋ ๋์์ด ๋ฉ๋๋ค.
IoT Inspector์๋ ์ฌ์ ํ ๋ช ๊ฐ์ง ๋จ์ ์ด ์์ต๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์ ์คํ์ ์ด๋ฏ๋ก ์์ง ๊ตฌ์ฑ์ด ๋ค๋ฅธ ๋ชจ๋ IoT ์ฅ์น์์ ํ ์คํธ๋์ง ์์์ต๋๋ค. ๋ฐ๋ผ์ ๋๊ตฌ ์์ฒด๊ฐ ์ค๋งํธ ๊ธฐ๊ธฐ์ ์ฑ๋ฅ์ ๋ถ์ ์ ์ธ ์ํฅ์ ๋ฏธ์น ์ ์์ต๋๋ค. ์ด๋ฌํ ์ด์ ๋ก ์ ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๋ฃ ๊ธฐ๊ธฐ์ ์ฐ๊ฒฐํ๋ ๊ฒ์ ๊ถ์ฅํ์ง ์์ต๋๋ค.
์ด์ ๊ฐ๋ฐ์๋ค์ ๋ฒ๊ทธ๋ฅผ ์ ๊ฑฐํ๋ ๋ฐ ์ค์ ์ ๋๊ณ ์์ง๋ง ์์ผ๋ก ํ๋ฆฐ์คํด ๋ํ ํ์ ์ ํ๋ฆฌ์ผ์ด์
์ ๊ธฐ๋ฅ์ ํ์ฅํ๊ณ ๋จธ์ ๋ฌ๋ ์๊ณ ๋ฆฌ์ฆ์ ๋์
ํ ๊ณํ์
๋๋ค. ์ด๋ DDoS ๊ณต๊ฒฉ ํ์ง ํ๋ฅ ์ 99%๊น์ง ๋์ด๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ์ฐ๊ตฌ์๋ค์ ๋ชจ๋ ์์ด๋์ด๋ฅผ ์ ํ ์ ์์ต๋๋ค.
๊ธฐํ IoT ํ๋ก์ ํธ
JavaScript ๋ฐ HTML ๊ด๋ จ ์์ ์ ์ ์์ธ Danny Goodman๊ณผ ํ๋ ฅํ๋ ๋ฏธ๊ตญ ๊ฐ๋ฐ์ ๊ทธ๋ฃน์ด ์ฌ๋ฌผ ์ธํฐ๋ท ์ํ๊ณ๋ฅผ ๋ชจ๋ํฐ๋งํ๋ ๋๊ตฌ๋ฅผ ๋ง๋ค๊ณ ์์ต๋๋ค.
์ด ํ๋ก์ ํธ์ ๋ชฉํ๋ ์ค๋งํธ ํ IoT ์ฅ์น๋ฅผ ๋จ์ผ ๋คํธ์ํฌ๋ก ๊ฒฐํฉํ๊ณ ์ ์ด๋ฅผ ์ค์ ์ง์คํํ๋ ๊ฒ์ ๋๋ค. ๊ฐ๋ฐ์๋ค์ ์๋ก ๋ค๋ฅธ ์ ์กฐ์ ์ฒด์ ์ฅ์น๊ฐ ์๋ก ํต์ ํ ์ ์๊ณ ๋ณ๋๋ก ์๋ํ์ง ์๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค๊ณ ๋งํฉ๋๋ค. ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ด๋์ ํฐ๋ธ ์์ฑ์๋ ๋ค์ํ ๋คํธ์ํฌ ํ๋กํ ์ฝ, ๊ฐ์ ฏ ๋ฐ ํด๋ผ์ด์ธํธ ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ ํจ๊ป ์๋ํ ์ ์๋ ์ํํธ์จ์ด๋ฅผ ๋ง๋ค์์ต๋๋ค.
์ง์๋๋ ์ฅ์น ๋ชฉ๋ก
๋ ๋ค๋ฅธ ๊ณต๊ฐ ํ๋ก์ ํธ -
/ ์ฌ์ง
์ด๋ฌํ ์๋ฃจ์ ์ ๋ฏธ๋
์คํ ์์ค ํ๋ก์ ํธ, ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฐ ํ๋ ์์ํฌ๊ฐ IoT ์์ฅ์ ์ ์ ๋ ๋ง์ด ๋ฑ์ฅํ๊ณ ์์ต๋๋ค. IoT ๋ถ์ผ์์๋ ํ๋ํ๋ Linux Foundation(์ด์ ์ฒด์ ๋ฅผ ๋ง๋ค์์ต๋๋ค.)
First Enterprise IaaS ๋ธ๋ก๊ทธ์ ๊ฒ์๋ฌผ:
REDWEB์ด IT-GRAD ํด๋ผ์ฐ๋์ ์์นํ๋ ๋ฐฉ๋ฒ ๋ฐ์ดํฐ ์ผํฐ ๊ฐ๋ฐ: ๊ธฐ์ ๋ํฅ Avito.ru: IaaS ํด๋ผ์ฐ๋๊ฐ ํ์ฌ ๋น์ฆ๋์ค ๊ตฌ์ฑ์ ์ด๋ป๊ฒ ๋์์ด ๋๋์ง ๋ฐ์ดํฐ ์ผํฐ์ ์๋์ง ํจ์จ์ฑ์ ํฅ์์ํค๋ ๋ฐฉ๋ฒ ์ ํ์ ์ธ๊ณ. DNS Flag Day์ ์ถํ์ผ๋ก ์ถ์ด ์ด๋ป๊ฒ ๋ฐ๋์๋์? ์๋น์คํ ์ฌํด ๋ณต๊ตฌ: ์์์ผ ํ ์ฌํญ IaaS๊ฐ ๋น์ฆ๋์ค ๊ฐ๋ฐ์ ์ง์ํ๋ ๋ฐฉ๋ฒ: ํด๋ผ์ฐ๋๊ฐ ํด๊ฒฐํ ์ธ ๊ฐ์ง ๋ฌธ์
์ถ์ฒ : habr.com