{"repo":"alechilczenko/kimi","free":true,"listed":false,"github":"https://github.com/alechilczenko/kimi","clone":"git clone https://github.com/alechilczenko/kimi.git","description":"Attack Surface Discovery tool built on a microservice approach, utilizing multi-threading for fast, internet-scale asset indexing","language":"Python","stars":263,"topics":["iot","search-engine","python3","security","security-tools","pentesting","internet-of-things","shodan","zoomeye","censys"],"license":"Apache-2.0","category":"security-tools","readme_excerpt":"# Kimi: Attack Surface Discovery Engine Developed with 💜 by @alechilczenko Project Context: This project serves as a portfolio piece demonstrating concepts in offensive security, concurrency, and distributed architecture. 1. Introducing Kimi: The Origin Story What was Kimi ? During my early days venturing into the world of offensive security, I was always fascinated by how major search engines like Shodan indexed information from millions of devices. This concept kept spinning in my head; I needed to understand the engineering behind it by simulating it myself. Kimi is the result of that curiosity. It is a continuous reconnaissance scanner designed to prioritize the analysis of external attack surface exposure. It performs large-scale, port-oriented scanning to collect information from services connected to the Internet. My goal was to create an efficient architecture: the implementation of threads and queues was designed to maximize performance per scan cycle, significantly reducing execution time for massive IP ranges. --- 2. Key Aspects Kimi serves as a proof of concept in critical areas: - Concurrency: Usage of Threads and Queues in Python to orchestrate up to ≈500 simultaneous network I/O operations. - Decoupled Architecture: Design of a distributed system (Engine → API → DB), separating the execution of the scan from data persistence. - Networking: Low-level socket programming for TCP/UDP handshakes and precise timeout management. - NoSQL Databases: Implementation of M","default_branch":null,"files":null,"tree":[],"storefront":"/r/alechilczenko","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/alechilczenko/kimi/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}