• Hackr.io Newsletter
  • Posts
  • 6 Book Recommendations from the Hacker Who Brought Down North Korea's Internet

6 Book Recommendations from the Hacker Who Brought Down North Korea's Internet

+ Resources for Cybersec

We’re sharing an expert’s book recommendations for hackers this week, plus news from cybersecurity experts, and new job opportunities. Stick around for a poll to let us know how we’re doing.

This Week’s Resources

Book Recommendations from an International Hacker

It's not every day you meet a hacker who's willing to share an inside look at the trade. So when “P4x,” Alejandro Caceres, gave an in-depth interview earlier this year, it made waves.

But this hacker didn't just stop with journalists. He shared some of his favorite hacking books along with several more resources for novice hackers. In that interview, he shared several notable books for hackers. Here's what he recommends (including a summary for each and where to find them).

Here’s one of the best on the list.

Linux Basics for Hackers: Getting Started with Networking, Scripting, and Security in Kali. The book relies on the Kali Linux distribution to teach a bunch of essentials.

That includes command line basics, filesystems, networking, BASH scripting, and security measures.

Hacking: The Art of Exploitation is one that, despite its title, isn't just a book for hackers. It's a technical guide with a bunch of practical skills in the cybersecurity world. That includes programming in C, assembly language, exploiting vulnerabilities, network communications, shellcode, countermeasures, and cryptography.

These are all skills that could come up in cybersecurity interview questions.

This hacking book gives a technical foundation without practical or step-by-step guides on attacks.​ 

Cybersecurity Jobs Hiring Right Now

We’re always updating our system with new job opportunities. You can find this week’s cybersecurity jobs right here. Just enter your location to refine the results.

This week also has some unique new job opportunities for web developers. We found opportunities in the United States, Singapore, and the Netherlands.

Where do you need help in your career?

Login or Subscribe to participate in polls.

How to Learn AI

Here, we evaluate the best artificial intelligence courses of the year. The community at Hackr submits their favorite resources, votes for their favorites, and comments on overall quality.

For this article, we evaluated all of these popular artificial intelligence courses and tutorials. We looked at the depth of the course, qualifications of the instructor (or institution), cost, and overall approachability.

Get Started with C++

If you haven’t already mastered C++, now is a good time to take a look at a few projects. The simplest will always be Hello World.

Here’s one with a little more complexity.

#include <iostream>
#include <string>

class BankAccount
{
private:
  std::string name;
  double balance;

public:
  BankAccount(std::string accountName, double initialBalance)
      : name(accountName), balance(initialBalance) {}

  void deposit(double amount)
  {
      if (amount > 0)
      {
          balance += amount;
      }
  }

  void withdraw(double amount)
  {
      if (amount <= balance)
      {
          balance -= amount;
      }
      else
      {
          std::cout << "Insufficient funds." << std::endl;
      }
  }

  void display()
  {
      std::cout << "Account: " << name << "\nBalance: $" << balance << std::endl;
  }
};

int main()
{
  std::string name;
  double initialDeposit;

  std::cout << "Enter your name: ";
  getline(std::cin, name);
  std::cout << "Enter initial deposit: ";
  std::cin >> initialDeposit;

  BankAccount account(name, initialDeposit);

  int choice;
  double amount;

  do
  {
      std::cout << "\n1. Deposit" << std::endl;
      std::cout << "2. Withdraw" << std::endl;
      std::cout << "3. Display Account" << std::endl;
      std::cout << "4. Exit" << std::endl;
      std::cout << "Enter choice: ";
      std::cin >> choice;

      switch (choice)
      {
      case 1:
          std::cout << "Enter deposit amount: ";
          std::cin >> amount;
          account.deposit(amount);
          break;
      case 2:
          std::cout << "Enter withdrawal amount: ";
          std::cin >> amount;
          account.withdraw(amount);
          break;
      case 3:
          account.display();
          break;
      case 4:
          break;
      default:
          std::cout << "Invalid choice." << std::endl;
      }
  } while (choice != 4);

  return 0;
}

It’s a simple bank system, and it comes from our list of recommended C++ projects.

With a history spanning nearly three decades, C++ is a versatile, high-performance language that’s popular for systems, software, and game development.

Rate this Newsletter

The team at Hackr.io aims to provide the best information possible. Please let us know how we're doing!

Login or Subscribe to participate in polls.