{"id":13586661,"url":"https://github.com/natlas/natlas","last_synced_at":"2025-04-07T18:34:27.533Z","repository":{"id":34712224,"uuid":"132658024","full_name":"natlas/natlas","owner":"natlas","description":"Attack Surface Management since before Attack Surface Management was a thing","archived":false,"fork":false,"pushed_at":"2025-03-31T01:22:28.000Z","size":5377,"stargazers_count":639,"open_issues_count":94,"forks_count":90,"subscribers_count":15,"default_branch":"main","last_synced_at":"2025-03-31T02:26:01.278Z","etag":null,"topics":["infosec","natlas","natlas-agent","natlas-server","nmap","recon","reconnaissance","scanning"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/natlas.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-05-08T19:56:43.000Z","updated_at":"2025-03-23T05:10:21.000Z","dependencies_parsed_at":"2024-11-06T05:32:20.170Z","dependency_job_id":"57debf78-b1eb-4de0-be2d-3acb42f51ce1","html_url":"https://github.com/natlas/natlas","commit_stats":null,"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/natlas%2Fnatlas","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/natlas%2Fnatlas/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/natlas%2Fnatlas/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/natlas%2Fnatlas/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/natlas","download_url":"https://codeload.github.com/natlas/natlas/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247707758,"owners_count":20982844,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["infosec","natlas","natlas-agent","natlas-server","nmap","recon","reconnaissance","scanning"],"created_at":"2024-08-01T15:05:43.233Z","updated_at":"2025-04-07T18:34:27.526Z","avatar_url":"https://github.com/natlas.png","language":"Python","readme":"![Natlas](https://0xda.de/img/natlas-1000px.png)\n\n![Last Commit](https://img.shields.io/github/last-commit/natlas/natlas.svg)\n[![Release](https://img.shields.io/github/release/natlas/natlas.svg)](https://github.com/natlas/natlas/releases/latest)\n[![Contributors](https://img.shields.io/github/contributors/natlas/natlas.svg)](https://github.com/natlas/natlas/graphs/contributors)\n[![License](https://img.shields.io/badge/license-Apache%202-blue.svg?style=flat)](LICENSE)\n\n[![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit\u0026logoColor=white)](https://github.com/pre-commit/pre-commit)\n\n[![Server downloads](https://img.shields.io/docker/pulls/natlas/server?label=server%20downloads\u0026logo=docker)](https://hub.docker.com/repository/docker/natlas/server)\n[![Agent downloads](https://img.shields.io/docker/pulls/natlas/agent?label=agent%20downloads\u0026logo=docker)](https://hub.docker.com/repository/docker/natlas/agent)\n\n# Summary\n\nYou've got a lot of maps and they are getting pretty unruly. What do you do? You put them in a book and call it an atlas. This is like that, except it's a website and it's a collection of nmaps. Natlas' objective is to make it easy to perform continuous scanning and review collected data.\n\nThe goal of Natlas is not to identify a bunch of vulnerabilities, necessarily, but rather to identify exposure. Perhaps you want to make sure that no one is running ssh with password auth enabled. Or perhaps you want to look for any exposed nfs, smb, or rsync shares. Maybe you want to look for expiring or expired ssl certificates, or weak ssl ciphers being used. Since Natlas uses the popular [nmap](https://nmap.org) port scanner, you can easily use any default nmap scripts in your scans.\n\n# Getting Started\n\nTo get started with your own deployment of Natlas, you're going to need a minimum of one elasticsearch node, one Natlas server and one Natlas agent. The quickest way to accomplish this is to run all three of these containers on the same server. Installation instructions for the server and the agent are linked below in their associated readmes.\n\nThe required deployment order is as follows:\n\n1) [Elasticsearch](#Elasticsearch)\n2) [Natlas Server](#Natlas-server)\n3) [Natlas Agent(s)](#Natlas-agent)\n\n**Note:** As of June 15, 2020, Natlas has moved to a docker-only deployment model.\n\n## Elasticsearch\n\nBecause the Natlas server requires a connection to Elasticsearch in order to launch correctly, you should make sure you have an Elasticsearch node available before continuing with the next step. If you've never used Elasticsearch before, follow [Elastic's instructions](https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html) for setting up a single node cluster with docker. Make sure to pay attention to the section on persisting the elastic data.\n\n## Natlas Server\n\nThe Natlas server controls agent orchestration, scan configuration, and provides search and browse for the data stored in Elastic.\n\nSee the [Natlas Server README](natlas-server#installation-production) for instructions on installing the Natlas server.\n\n## Natlas Agent\n\nThe Natlas agent is what fetches work from the server and actually performs the scans.\n\nSee the [Natlas Agent README](natlas-agent#installation-production) for instructions on installing the Natlas agent.\n\n# Contributing\n\nPlease review our [contribution guidelines](CONTRIBUTING.md) for information on how to contribute to Natlas. To get started with development, please see [Project Setup](CONTRIBUTING.md#project-setup).\n\n# Code Of Conduct\n\nThis project strives to adhere to the code of conduct outlined in our [code of conduct](CODE_OF_CONDUCT.md). Please review the code of conduct before contributing.\n\n# Security\n\nInformation about this project's security reporting guidelines as well as security related functionality are outlined in our [Security guidelines](SECURITY.md).\n\n# Acknowledgements\n\n* [Pinguino](http://www.pinguinokolb.com/) - Created Natlas logo/branding.\n* [Dean Pierce](https://github.com/pierce403) - Created the initial project, nweb, that Natlas was built out of.\n* [Topher Timzen](https://github.com/tophertimzen) - Testing, feedback, automation support.\n* [Adam Jacques](https://github.com/ajacques) - Helping with Elasticsearch theory and just generally helping improve code quality\n* [Ross Snider](https://github.com/rosswsnider) - Writing Cyclic PRNG for target selection\n* [Everyone who has contributed](https://github.com/natlas/natlas/graphs/contributors)\n\n# Disclaimer\n\nNatlas is a platform which makes use of many other open source projects, many of which have their own licenses. Natlas does not claim ownership of any projects that it uses, and does not represent any of said projects. To the best of the Natlas Author's knowledge, the use of these tools in the Natlas platform is not violating any licenses. Natlas is a free and open source project that does not make, nor seeks to make, any revenue from the use of the other open source tools in use.\n\nFor further inquiry about licensing, please see the respective projects' licenses.\n\n# License\n\n```text\nCopyright 2020 0xdade\nCopyright 2016-2018 Intel Corporation\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n   http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n```\n","funding_links":[],"categories":["Python","Pentesting"],"sub_categories":["OSINT - Open Source INTelligence"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnatlas%2Fnatlas","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnatlas%2Fnatlas","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnatlas%2Fnatlas/lists"}