Бывает начинающие в процессе обучения создают файлы с именем модуля который они изучают. В результате на тестовых запусках ничего не работает😱
Всё потому, что появилась коллизия имён. Например, изучаете вы модуль datetime, и создаёте с таким именем файл (ну логично же😄) прямо в рабочей директории.
Потом, при попытке импортировать datetime модуль, из-за приоритета импорта будет импортирован файл из рабочий директории а не оригинальная библиотека. Ведь имя файла это суть имя модуля!
А знаете ли вы, что не все стандартные модули можно так перезаписать? Коллизии имён не подвержены builtin модули. Они всегда стоят на первом месте в приоритете импорта, поэтому их нельзя заменить.
Полный список таких модулей можно посмотреть в списке sys.builtin_module_names.
То есть, вы сломаете весь Python если назовёте свой модуль os или site, но если назовёте time или gc то ничего страшного не случится)))
Тем не менее, никогда не называйте модули уже занятыми именами!!!⚠️
Я всегда рекомендую всем своим файлам делать именной префикс из 2-3 символов. Например я называю свои проекты так:
pw_project_name
pw_ui_tools.py
pw_something/main.py
Либо под ситуацию
tst_scriptname.py
(не "test" чтобы не подхватывал pytest)
dbg_script.py
maya_ui.py
hou_menu_tools.py
И искать проще, и коллизий нет.
#tricks#basic
👨💻 Attacking MongoDB.
• MongoDB — это кроссплатформенная документо-ориентированная система управления базами данных. Относясь к категории NoSQL, MongoDB отказывается от традиционной таблично-ориентированной структуры реляционных баз данных в пользу JSON-документов с динамическими схемами, что делает интеграцию данных в приложениях более быстрой и простой.
• Поговорим о защищенности MongoDB. На самом деле MongoDB безопасна в использовании, если вы знаете, что искать и как это настраивать.
• Enumeration:
➡Nmap MongoDB Brute Force Attack;
➡Metasploit MongoDB Login Scanner;
➡Shodan Search for MongoDB Instances;
➡Manual MongoDB Interaction via PyMongo;
➡Common MongoDB Commands;
➡Automating MongoDB Enumeration with Nmap.
• Brute Force:
➡MongoDB Login Methods;
➡Checking for MongoDB Authentication Using Nmap;
➡Manual Brute Forcing;
➡Lack of Authentication in MongoDB Instance.
• Disable Unused Network Interfaces;
• Enable Access Control (Authentication);
• Enable SSL/TLS Encryption;
• Disable HTTP Interface;
• Enable Audit Logging:
➡Set Appropriate File Permissions;
➡Disable Unused MongoDB Features;
➡Enable Firewalls and Limit Access to MongoDB Ports.
• Exploiting Default Admin Users;
• Exploiting Misconfigured Role-Based Access Control (RBAC);
• Leveraging File System Access via MongoDB;
• Leveraging MongoDB API and Insecure Bindings;
• Misconfigured Backup Systems.
#MongoDB#devsecops
https://github.com/MongoEngine/django-mongoengine
THIS IS UNSTABLE PROJECT, IF YOU WANT TO USE IT - FIX WHAT YOU NEED
Right now we're targeting to get things working on #Django 1.9
#mongodb
#databases#MongoDB
💼
Learning MongoDB
Get started with MongoDB. Learn how to use this popular nonrelational database to power your full-stack development workflow.
⏳2h 44m
🗣Justin Jenkins
🔗Link
-----
Main channel:@repo_science
Coupons: @freecoupons_reposcience
-----
Awesome MongoDB, a curated list of resources, libraries, tools and applications.
#resources#list#mongodb#database
@thedevs
https://kutt.it/awesome-mongodb
http://mongoengine.readthedocs.io/en/latest/index.html
#MongoEngine is an Object-Document Mapper, written in #Python for working with #MongoDB. To install it, simply run
#Django