Duck DNS & AWS HACKS

Quiz

import getpass, sys

# method to display question and get user's answers
def question_with_response(prompt, qCount):
    print("Question " + str(qCount)  + " : " + prompt)
    msg = input()
    return msg

# dictionary to hold questions and answers as key : value pairs
questionsDict = {"What does Domain Name Server represent?": "DNS",
    "What does this Represent: Amazon Web Services, which is a cloud computing platform provided by Amazon.": "AWS", 
    "What is the first Step to setting up an AWS Server? 1: Connecting to a Ubuntu EC2 Instance, 2: Start updating the system, 3: Clone the repository which one wishes to deploy, 4: Run the command: main.py to start the project": "1",
    "What is the third Step to setting up an AWS Server? 1: Connecting to a Ubuntu EC2 Instance, 2: Start updating the system, 3: Clone the repository which one wishes to deploy, 4: Run the command: main.py to start the project": "3",
    "What is the fourth Step to setting up an AWS Server? 1: Connecting to a Ubuntu EC2 Instance, 2: Start updating the system, 3: Clone the repository which one wishes to deploy, 4: Run the command: main.py to start the project": ".4",
    "What is the second Step to setting up an AWS Server? 1: Connecting to a Ubuntu EC2 Instance, 2: Start updating the system, 3: Clone the repository which one wishes to deploy, 4: Run the command: main.py to start the project": "2",
    "What files are you supposed to edit after finishing the first steps of setting up the server and cloning it within the AWS Server? 1: Edit the docker files and docker.yml, 2: Edit the main.py file to change the characteristcs.": "1",
    "What is the first step to setting up a DuckDNS Server? 1: Sign in with your DuckDNS account using Github, 2: Configure current ip to the IP address that you want to access and click update ip button , 3: Create the subdomain, 4: Access site by typing in subdomain.duckdns.org": "1",
    "What is the second step to setting up a DuckDNS Server? 1: Sign in with your DuckDNS account using Github, 2: Configure current ip to the IP address that you want to access and click update ip button , 3: Create the subdomain, 4: Access site by typing in subdomain.duckdns.org": "3",
    "What is the third step to setting up a DuckDNS Server? 1: Sign in with your DuckDNS account using Github, 2: Configure current ip to the IP address that you want to access and click update ip button , 3: Create the subdomain, 4: Access site by typing in subdomain.duckdns.org": "2",
    "What is the fourth step to setting up a DuckDNS Server? 1: Sign in with your DuckDNS account using Github, 2: Configure current ip to the IP address that you want to access and click update ip button , 3: Create the subdomain, 4: Access site by typing in subdomain.duckdns.org": "4"
}

# number of questions as length of the dictionary
questions = len(questionsDict)

# set correct to 0
correct = 0


print('Hello, ' + getpass.getuser() + " running " + sys.executable)
print("You will be asked " + str(questions) + " questions.")
print("Are you ready to take a test! Press Enter key to begin. Best of luck :)")
input()

questionCount = 0
# iterate over list of keys from the dictionary. pass dictionary key as question to the question_with_response function
for key in questionsDict:
    questionCount += 1
    rsp = question_with_response(key, questionCount)
    # compare the value from the dictionary to the user's input
    if rsp.lower() == questionsDict[key].lower():
        print(rsp + " is correct! Good Job!")
        correct += 1
    else:
        print(rsp + " is incorrect! Better Luck next time.")

# print final score    
print(getpass.getuser() + " you scored " + str(correct) +"/" + str(questions))

# calculate percentage
page = correct/questions * 100

# print percentage


print("Total Percentage: " + str (format(page,".2f")) + "%")
Hello, haeryny running /home/haeryny/anaconda3/bin/python
You will be asked 11 questions.
Are you ready to take a test! Press Enter key to begin. Best of luck :)
Question 1 : What does Domain Name Server represent?
DNS is correct! Good Job!
Question 2 : What does this Represent: Amazon Web Services, which is a cloud computing platform provided by Amazon.
AWS is correct! Good Job!
Question 3 : What is the first Step to setting up an AWS Server? 1: Connecting to a Ubuntu EC2 Instance, 2: Start updating the system, 3: Clone the repository which one wishes to deploy, 4: Run the command: main.py to start the project
1 is correct! Good Job!
Question 4 : What is the third Step to setting up an AWS Server? 1: Connecting to a Ubuntu EC2 Instance, 2: Start updating the system, 3: Clone the repository which one wishes to deploy, 4: Run the command: main.py to start the project
3 is correct! Good Job!
Question 5 : What is the fourth Step to setting up an AWS Server? 1: Connecting to a Ubuntu EC2 Instance, 2: Start updating the system, 3: Clone the repository which one wishes to deploy, 4: Run the command: main.py to start the project
4 is incorrect! Better Luck next time.
Question 6 : What is the second Step to setting up an AWS Server? 1: Connecting to a Ubuntu EC2 Instance, 2: Start updating the system, 3: Clone the repository which one wishes to deploy, 4: Run the command: main.py to start the project
2 is correct! Good Job!
Question 7 : What files are you supposed to edit after finishing the first steps of setting up the server and cloning it within the AWS Server? 1: Edit the docker files and docker.yml, 2: Edit the main.py file to change the characteristcs.
1 is correct! Good Job!
Question 8 : What is the first step to setting up a DuckDNS Server? 1: Sign in with your DuckDNS account using Github, 2: Configure current ip to the IP address that you want to access and click update ip button , 3: Create the subdomain, 4: Access site by typing in subdomain.duckdns.org
1 is correct! Good Job!
Question 9 : What is the second step to setting up a DuckDNS Server? 1: Sign in with your DuckDNS account using Github, 2: Configure current ip to the IP address that you want to access and click update ip button , 3: Create the subdomain, 4: Access site by typing in subdomain.duckdns.org
3 is correct! Good Job!
Question 10 : What is the third step to setting up a DuckDNS Server? 1: Sign in with your DuckDNS account using Github, 2: Configure current ip to the IP address that you want to access and click update ip button , 3: Create the subdomain, 4: Access site by typing in subdomain.duckdns.org
2 is correct! Good Job!
Question 11 : What is the fourth step to setting up a DuckDNS Server? 1: Sign in with your DuckDNS account using Github, 2: Configure current ip to the IP address that you want to access and click update ip button , 3: Create the subdomain, 4: Access site by typing in subdomain.duckdns.org
4 is correct! Good Job!
haeryny you scored 10/11
Total Percentage: 90.91%

FRQ

  1. How does AWS work?

    • AWS, or Amazon Web Services, is a cloud computing platform provided by Amazon. It allows users to build, deploy, and manage their applications and IT infrastructure on the cloud without the need for physical hardware. To get started with AWS, users must sign up and create an account on the AWS website. They can then choose from a wide range of services, such as computing, storage, database, networking, and security, that best suit their needs. Users can launch virtual servers called instances, which run on Amazon's infrastructure. They can choose the operating system, hardware specifications, and other configurations for their instances based on their computing needs. AWS provides several storage options for users to store and manage their data, such as Amazon S3, Amazon EBS, and Amazon Glacier. AWS also provides tools for deploying applications, such as AWS Elastic Beanstalk, AWS Lambda, and AWS CloudFormation. These services help users deploy and manage their applications without the need for server management. Additionally, AWS provides tools for monitoring and managing resources, such as Amazon CloudWatch, AWS Config, and AWS Trusted Advisor. These services help users monitor their resources, troubleshoot issues, and optimize their infrastructure.
  2. How is AWS useful for projects?

    • AWS is a useful platform for projects because it provides a wide range of services and tools that can help developers and businesses build, deploy, and manage their projects on the cloud. Here are some ways in which AWS can be useful for projects as it has scalability which is where AWS can easily scale resources up or down depending on the project's needs, without the need for physical hardware. This means that projects can easily handle spikes in traffic or demand without any additional hardware investment. In addition, it has security as AWS provides several security features, such as network isolation, encryption, and identity and access management, that can help projects protect their data and infrastructure.
  3. How does Duck DNS work?

    • Duck DNS is a free dynamic DNS service that allows users to map a domain name to a dynamic IP address. It provides users with a way to access their devices or servers on the Internet using a domain name, even if the IP address of their device or server changes. It creates a subdomain and overall, Duck DNS works by providing users with a way to map a domain name to a dynamic IP address, allowing them to access their devices or servers on the Internet using a domain name.
  4. How is Duck DNS useful for projects?

    • Duck DNS is useful for projects because it provides users with a way to access their devices or servers on the Internet using a domain name, even if the IP address of their device or server changes. Here are some ways in which Duck DNS can be useful for projects as it has remote access which is where Duck DNS allows users to remotely access their devices or servers using a domain name, which can be convenient for projects that require remote access or management. It also has custom domain names as Duck DNS allows users to create custom subdomains, which can be useful for projects that require specific naming conventions or branding. Overall, Duck DNS can be a useful tool for projects that require remote access or management of devices or servers, and need a simple and cost-effective way to map a domain name to a dynamic IP address.

Reflection

It provides a comprehensive suite of cloud computing services and tools that can help developers and businesses build, deploy, and manage their applications and IT infrastructure on the cloud. AWS is scalable, cost-effective, and flexible, making it a popular choice for projects of all sizes. On the other hand, we discussed Duck DNS, which is a free dynamic DNS service that allows users to map a domain name to a dynamic IP address. Duck DNS is easy to set up and configure, and can be a useful tool for projects that require remote access or management of devices or servers. Overall, our conversation covered the basics of two different technologies that can be helpful for projects. AWS and Duck DNS are just two examples of the many tools and services available to developers and businesses. As technology continues to evolve, it will be interesting to see how new tools and services will emerge and how they will shape the future of technology.

Certbot Hacks

  1. Download and setup Certbot

image

  1. Research and compare the security features of OpenSSL and LibreSSL, and write about the recent vulnerabilities within it. Write about your research in a fastpages blog post. It can be the same post that has your screenshot for the Certbot Hacks.

Research

OpenSSL and LibreSSL are both open-source cryptographic libraries that provide various cryptographic functions and protocols for secure communication over the internet. They are widely used by various applications, including web servers, email servers, and VPNs.

Security Features of OpenSSL and LibreSSL:

  1. Both OpenSSL and LibreSSL offer similar security features, including:

  2. Cryptographic functions: Both libraries provide a wide range of cryptographic functions, including encryption, decryption, hashing, and digital signature algorithms.

  3. Secure communication protocols: They support various secure communication protocols such as TLS, SSL, and DTLS for secure communication between clients and servers.

  4. Certificates: Both libraries support the generation, verification, and management of X.509 certificates.

  5. Random number generation: Both libraries have built-in functions for generating random numbers, which are essential for cryptographic operations.

  6. Key management: They offer key management functionalities, including key generation, storage, and retrieval.

Recent Vulnerabilities:

Despite having similar security features, OpenSSL and LibreSSL have faced several vulnerabilities in recent years.

  1. OpenSSL Heartbleed: In 2014, a serious vulnerability called Heartbleed was discovered in OpenSSL. It allowed an attacker to access sensitive information such as private keys, passwords, and other sensitive data.

  2. OpenSSL CCS Injection: In 2014, another vulnerability called CCS Injection was discovered in OpenSSL, which allowed attackers to inject arbitrary data into SSL/TLS connections.

  3. LibreSSL vulnerabilities: LibreSSL was created as a fork of OpenSSL in 2014, with a focus on code quality and security. However, it has also faced several vulnerabilities in recent years. For example, in 2020, a vulnerability was discovered in LibreSSL's X.509 certificate validation, which could allow an attacker to bypass certificate validation checks.

  4. OpenSSL vulnerabilities: OpenSSL has also faced several vulnerabilities in recent years, including the Lucky 13 attack in 2013, the Padding Oracle On Downgraded Legacy Encryption (POODLE) attack in 2014, and the DROWN attack in 2016.

Overall, both OpenSSL and LibreSSL are widely used and offer similar security features. However, as with any software, they have faced vulnerabilities in the past and will likely continue to face them in the future. It's essential to keep these libraries updated with the latest security patches and to follow best practices when using them in applications.

KASM Hacks

  1. In 3-4 sentences, please explain the significance of virtual desktops and KASM. How can virtual desktops such as these be utilized in our AP CSP environment?

    • Virtual desktops allow users to access a remote desktop environment from their local machine, which can improve security and reduce hardware costs. KASM (Kaspersky Anti-Targeted Attack Platform) is a security solution that uses virtual desktops to isolate sensitive data and applications from potential threats. In an AP CSP environment, virtual desktops could be used to provide students with a standardized computing environment and to protect against malware or other security threats.
  2. Attempt to work through the KASM setup with your team. Attach two screenshots to show that you have successfully gone through the setup: The first screenshot of KASM generating your credentials, and the second screenshot of the KASM workspace once you have logged in.

image

I was unable to install KASM as it repeatedly said that I did not have Docker, but I did so I tried different things and they all didn't work.