<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: vishwasnarayanre</title>
    <description>The latest articles on DEV Community by vishwasnarayanre (@vishwasnarayan5).</description>
    <link>https://dev.to/vishwasnarayan5</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F584842%2Feaf129b0-7b79-4475-a6f2-1bf7cc354c90.jpg</url>
      <title>DEV Community: vishwasnarayanre</title>
      <link>https://dev.to/vishwasnarayan5</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/vishwasnarayan5"/>
    <language>en</language>
    <item>
      <title>A Modern Day SAST Strategy explained.</title>
      <dc:creator>vishwasnarayanre</dc:creator>
      <pubDate>Sun, 22 May 2022 04:37:43 +0000</pubDate>
      <link>https://dev.to/vishwasnarayan5/a-modern-day-sast-strategy-explained-38o</link>
      <guid>https://dev.to/vishwasnarayan5/a-modern-day-sast-strategy-explained-38o</guid>
      <description>&lt;p&gt;Many have often inquired about how to integrate SAST tools into the DevSecOps workflow. They enquire about essential issues such as:&lt;/p&gt;

&lt;p&gt;➡️What are my options for dealing with false positives?&lt;/p&gt;

&lt;p&gt;➡️I'm not sure how I'm going to sort through the findings.&lt;/p&gt;

&lt;p&gt;➡️What happens when new problems arise?&lt;/p&gt;

&lt;p&gt;➡️It takes 4–5 hours for my scan to finish. How can I include this tool into my DevSecOps workflow?&lt;/p&gt;

&lt;p&gt;➡️What exactly do you mean when you say "baseline scan"?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Here are some of the benefits of SAST:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Finding security, safety, and quality concerns by checking for known vulnerability patterns for internationally accepted coding standards.&lt;br&gt;
Defects are detected sooner, resulting in cheaper remedial costs.&lt;br&gt;
Supporting a shift-left strategy by making analysis available across the board, including on developer desktops and in CI/CD pipelines.&lt;br&gt;
Providing immediate feedback and pinpointing the specific position and source of vulnerabilities.&lt;br&gt;
SAST tools should be executed as a pre-commit check, as well as during commit, build, and test times, in your developers' IDE. Examine each stage in further depth.&lt;/p&gt;

&lt;p&gt;That assessment, on the other hand, does not focus on what you must do to properly incorporate SAST technologies into your DevSecOps pipeline. The justification for selecting this solution is that it combines the required amount of manual control with a suitable level of automation to build a cost-effective, proactive, and secure DevOps process in the existing pipeline through five key activities.&lt;/p&gt;

&lt;p&gt;Let's talk about ways in which organizations can strategize with the shift left mindset.&lt;/p&gt;

&lt;h2&gt;
  
  
  Always do these checks right
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Scan code and audit/triage results&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The collecting of artifacts is the first step in a scan cycle. There are no hard and fast rules when it comes to how long the scan should take. The scan time is determined by the number of lines of code and the application's complexity. Perform a differential or incremental scan of the code that was just altered when problems are resolved and new code is introduced.&lt;/p&gt;

&lt;p&gt;You'll receive a scan report file with all the results after the scan is completed. Then there are two scenarios to consider:&lt;/p&gt;

&lt;p&gt;If this is your first time scanning the source code, perform a full audit review of the findings, often known as triage.&lt;/p&gt;

&lt;p&gt;Upload the scan report file to the enterprise server if this is a subsequent scan of the source code. The fresh scan will be merged with the previously audited/triaged scan findings on the corporate server. The merger will bring to light new concerns that have yet to be investigated. You save duplication of effort this way.&lt;/p&gt;

&lt;p&gt;When you scan your application for the first time, you're establishing a baseline. This implies you should examine each discovery or collection of findings and take one of the following steps:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Label the discovery ("not a problem," "suspect," etc.).&lt;/li&gt;
&lt;li&gt;Suppress the appearance of false-positive results.&lt;/li&gt;
&lt;li&gt;Keep your discoveries hidden.&lt;/li&gt;
&lt;li&gt;Merge subsequent scan results&lt;/li&gt;
&lt;li&gt;Assume you can at week n and examine the data, finding one false positive in bug 1 and a true problem in bug 2. The initial step is to combine the scans from weeks n and o.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Because you gave the SAST tool background knowledge, it will remember that you suppressed bug 1, and it will also note that you repaired bug 2. You resolve problem 2, label bug 1 in the scan file as "false positive," and then add more code to your project.&lt;/p&gt;

&lt;p&gt;Let's pretend you went through a scan, damaged the build, and created a defect in your bug tracking system, which the developer has now rectified.&lt;/p&gt;

&lt;p&gt;You've now contributed code between weeks n and n+1, as well as a new problem, bug 3. Bug 3 will be marked as "new" by the tool.&lt;/p&gt;

&lt;p&gt;When you publish your scan findings to the business server, Merge is an effective function that is performed automatically. Before breaking the build or submitting bugs to your bug tracking system, send all future scans to the corporate server.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Remove false positives&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Knowing information about the app's users, trust boundaries, sensitive data handling, security systems in place, input validation methods in use, and so on can considerably improve your capacity to minimize false positives and assess the true severity of actual problems. A huge percentage of false positives is due to a simple reason: Because it lacks a portion of the context in which the application exists, the tool cannot evaluate like a person; as a result, it must err on the side of caution and bring numerous possible concerns to the user's notice.&lt;/p&gt;

&lt;p&gt;False positives arise when a tool reports something as an issue that isn't actually a problem. Because it offers security expertise to developers and identifies implementation issues that they may have ignored, and SAST tool may be thought of as a virtual security analyst. False negatives, on the other hand, arise when the tool fails to detect flaws that should have been detected. Make sure you understand the application's context before diving into the tool's findings.&lt;/p&gt;

&lt;p&gt;The developers, with the help of a security analyst, are the most competent persons to evaluate the source code.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Customizing Ruleset&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Getting the most accurate and useful results from the tool requires customising and fine-tuning the rules to fit a specific application. You may wish to tweak the rulesets now that you have the information about the application and the triaged results.&lt;/p&gt;

&lt;p&gt;Because injection attacks are the most common sort of online assault today, knowing where data comes from and which APIs it passes through before being processed or ingested is critical.&lt;/p&gt;

&lt;p&gt;Getting the most accurate and useful results from the tool requires customizing and fine-tuning the rules to fit a specific application. You may wish to tweak the rulesets now that you have the information about the application and the triaged results.&lt;/p&gt;

&lt;p&gt;Because injection attacks are the most common sort of online assault today, knowing where data comes from and which APIs it passes through before being processed or ingested is critical.&lt;/p&gt;

&lt;p&gt;After scanning, triaging, deleting false positives, and configuring the tool, the next stage in the DevSecOps pipeline is to automate it.&lt;/p&gt;

&lt;p&gt;This includes scanning using command-line options or building server plugins, defining thresholds for broken builds, providing email notifications to developers who introduce issues, and automating bug tracking.&lt;br&gt;
&lt;strong&gt;SAST01: Highly configured rulesets - DNS_lecture_notes.pdf (lth.se)&lt;/strong&gt;&lt;br&gt;
It's time to distribute the SAST IDE plugin to your developers once you've onboarded, triaged, and configured rulesets. As developers input their code, the SAST tool automatically detects vulnerabilities and delivers just-in-time security recommendations.&lt;/p&gt;

&lt;p&gt;Developers may avoid the most frequent security concerns by having their code checked for security flaws and following the tool's instructions to correct bugs as they code.&lt;/p&gt;

&lt;p&gt;Because developers are continually examining the results, it's critical to keep the false-positive rate as low as feasible, if not nil. The triaged findings will help developers trust the SAST tool by allowing them to put out just the rulesets that are true positives.&lt;/p&gt;

&lt;p&gt;Here are a few examples of rules that may be set up to execute in the IDE for developers:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;SQL injection&lt;/li&gt;
&lt;li&gt;Cross-site scripting (stored)&lt;/li&gt;
&lt;li&gt;Cross-site scripting (reflected)&lt;/li&gt;
&lt;li&gt;Resource leaks&lt;/li&gt;
&lt;li&gt;Hard-coded credentials&lt;/li&gt;
&lt;li&gt;Configuration review&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;SAST02: Client’s top 10 issues&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;There would be no need to run any more SASTs in the DevSecOps pipeline if every developer used the SAST tool religiously. However, this is never the case. So, assuming the SAST tool is automated, as soon as developers put their code into a version control repository, the same scan rules defined in SAST01—plus a handful more, such as the client's top 10 issues—are performed totally automated. The scan should take no more than 4–5 minutes with the SAST tool.&lt;/p&gt;

&lt;p&gt;So, let's go through the rules for the SAST02 tests once more:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;SQL injection—same as SAST01&lt;/li&gt;
&lt;li&gt;Cross-site scripting (stored)—same as SAST01&lt;/li&gt;
&lt;li&gt;Cross-site scripting (reflected)—same as SAST01&lt;/li&gt;
&lt;li&gt;Resource leaks—same as SAST01&lt;/li&gt;
&lt;li&gt;Hard-coded credentials—same as SAST01&lt;/li&gt;
&lt;li&gt;Session management&lt;/li&gt;
&lt;li&gt;Configuration review&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;SAST03: OWASP Top 10 issues&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;After you read the article here, you're going toward the right of your DevSecOps pipeline now, and the tasks are taking longer to complete. If your application is a web application, this is when you should run your SAST tool against the OWASP Top 10 concerns. For applications that employ web services, REST services, or bespoke frameworks for which your SAST tool may not have extensive rules, you may also execute any unique rules you've built. In your SAST01 and SAST02, a few problems, such as SQL injection and XSS, have already been searched for.&lt;/p&gt;

&lt;p&gt;The following are a few examples of rulesets for the OWASP Top 10:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Malicious file execution&lt;/li&gt;
&lt;li&gt;Insecure direct object reference&lt;/li&gt;
&lt;li&gt;Information leakage and error handling&lt;/li&gt;
&lt;li&gt;Command injection&lt;/li&gt;
&lt;li&gt;Weak encryption&lt;/li&gt;
&lt;li&gt;Denial of service&lt;/li&gt;
&lt;li&gt;Path manipulation&lt;/li&gt;
&lt;li&gt;Insecure cryptographic storage&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;SAST04: Comprehensive rulesets&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This is the last step, during which you may run scans using detailed rulesets. You may do the tests simultaneously by combining SAST03 and SAST04, or you can break them off further, as I do. The SLA here might range from 60–90 minutes to several hours.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;XML injection&lt;/li&gt;
&lt;li&gt;XPath injection&lt;/li&gt;
&lt;li&gt;XML external entity&lt;/li&gt;
&lt;li&gt;Open redirect&lt;/li&gt;
&lt;li&gt;DOM XSS&lt;/li&gt;
&lt;li&gt;Cookie injection&lt;/li&gt;
&lt;li&gt;Expression language (EL) injection&lt;/li&gt;
&lt;li&gt;Header injection&lt;/li&gt;
&lt;li&gt;LDAP injection&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The longer it takes for the tool to perform the scan, the larger the collection of criteria you use. One of the reasons to attempt to divide and conquer the rules you run at each stage of the DevSecOps pipeline is to reduce the number of rules you have to run.&lt;/p&gt;

&lt;p&gt;Once you've finished this phase, you should have a clear understanding of all of your SAST rules. As I usually say, "one size does not suit all." You'll need to properly configure your rules and be prepared to build bespoke rules depending on the language, architecture, technology, and framework you choose.&lt;/p&gt;

&lt;p&gt;Once everything is in place, include the IDE plugins in the pre-commit checks so that developers have access to the tool and can identify and resolve issues as they arise.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Finally, while testing, configure extensive rulesets.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;All other tests, with the exception of the SAST tool running in the IDE, break the build, send email notifications, and upload defects to the bug tracking system.&lt;/p&gt;

&lt;p&gt;The actions recommended meet the following important objectives:&lt;/p&gt;

&lt;p&gt;Allow developers to concentrate on defect correction.Use pre-commit checks in the developers' IDE to strategically align source code analysis early in development release cycles.During the commit-time checks, the identical set of rules and the client's top 10 are run.Encourage the development organisation to adopt a precautionary mindset.&lt;br&gt;
Allow security teams to maintain governance and track the residual risk posture on a continuous basis from a central location.Allows DevSecOps teams to incorporate SAST technologies without adding to their time to market.&lt;br&gt;
Configure the OWASP Top 10 throughout the construction process.&lt;br&gt;
Many developers who are using SAST technologies for the first time go through a period of learning and exploration. When the tools are onboarded and automated in the DevSecOps pipeline, trust me when I say they'll start paying more attention to the security of their code.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>things to regret about node js today</title>
      <dc:creator>vishwasnarayanre</dc:creator>
      <pubDate>Wed, 25 Aug 2021 18:23:14 +0000</pubDate>
      <link>https://dev.to/vishwasnarayan5/things-to-regret-about-node-js-2ech</link>
      <guid>https://dev.to/vishwasnarayan5/things-to-regret-about-node-js-2ech</guid>
      <description>&lt;p&gt;You have only started using Node again in the past 6 months, because when Ryan Dahl created Node the goal was mainly to program event-driven HTTP servers, and Go is a better language for building faster servers. &lt;/p&gt;

&lt;p&gt;But he thinks JavaScript is good. Dynamic languages ​​may not be suitable for building servers that you want to control everything, but they are the right tool for prototyping, such as scientific computing. JavaScript is the best dynamic language. &lt;/p&gt;

&lt;p&gt;Your Node problem is almost related to the way you manage user code. Mainly because it focuses on event I/O, the module system is essentially an afterthought.&lt;/p&gt;

&lt;h3&gt;
  
  
  failed to fulfill the promise
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;It is possible that the unified use of promises in Node will speed up the delivery of &lt;code&gt;standardization&lt;/code&gt; and &lt;code&gt;async/await&lt;/code&gt;. &lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Security
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;The node program can access all system calls, such as writing to disk and accessing the network. &lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Build System
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;If you are writing a module link to a &lt;code&gt;C library&lt;/code&gt;, you will use GYP to compile the C library and link it to Node. &lt;/li&gt;
&lt;li&gt;Chrome used to use GYB, but now Node is the only GYP user. &lt;/li&gt;
&lt;li&gt;Funky interface, which is a Python adaptation of JSON. The node has several unnecessary complex wrappers. &lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  package.json
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Includes &lt;code&gt;NPM&lt;/code&gt; in Node, making NPM a standard for Node distribution. Centralized repository (privately controlled) of 
modules. &lt;/li&gt;
&lt;li&gt;require ("sommodule") is not specific: &lt;code&gt;package.json&lt;/code&gt;, local node_modules folder, NPM database. &lt;/li&gt;
&lt;li&gt;promotes the concept of "module" to an unnecessary abstraction of file directories. It does not exist on the network. &lt;/li&gt;
&lt;li&gt;includes unnecessary information such as licenses, repositories. &lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  node_modules
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;The analysis algorithm for module is extremely complicated. &lt;/li&gt;
&lt;li&gt;Ventured by default is kind, but $NODE_PATH will work. &lt;/li&gt;
&lt;li&gt;There is a deviation from the browser. &lt;/li&gt;
&lt;li&gt;does not need to be extended. &lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  is unnecessarily unclear.
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;is not the way browsers work. &lt;/li&gt;
&lt;li&gt;The module loader must guess. &lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  index.js
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;It unnecessarily complicates the module loading system. &lt;/li&gt;
&lt;li&gt;is especially unnecessary after &lt;code&gt;package.json&lt;/code&gt; which needs to be supported. &lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Deno
&lt;/h1&gt;

&lt;h3&gt;
  
  
  &lt;a href="https://github.com/ry/deno"&gt;https://github.com/ry/deno&lt;/a&gt;  - Official Repo
&lt;/h3&gt;

&lt;h1&gt;
  
  
  FreeCodeCamp Study Material
&lt;/h1&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/TQUy8ENesGY"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;h3&gt;
  
  
  Security
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;By default, the script should run without write access to the network or file system. &lt;/li&gt;
&lt;li&gt;Users can choose to access via the following signs: 

&lt;ul&gt;
&lt;li&gt;allownet &lt;/li&gt;
&lt;li&gt;allowwrite &lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;
&lt;li&gt;It is not allowed to bind any native functions to V8. &lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  The TypeScript compiler is built into the executable file.
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;TypeScript is beautiful. &lt;/li&gt;
&lt;li&gt;finally delivered a practical and optional type language. &lt;/li&gt;
&lt;li&gt;enables code to grow seamlessly from fast hackers to large, well-structured machines. &lt;/li&gt;
&lt;li&gt;Normal JS should work too.
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  The simplified module system does not support node modules.
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;The import is just a relative or absolute URL. &lt;/li&gt;
&lt;li&gt;The import must provide an extension. &lt;/li&gt;
&lt;li&gt;remote URLs are fetched and cached indefinitely on the first load. &lt;/li&gt;
&lt;li&gt;can be sold by specifying a non-default cache directory. &lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Other
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Only submit an executable file with the fewest links. &lt;/li&gt;
&lt;li&gt;Start the runtime by compiling the node module with parcel into a package. &lt;/li&gt;
&lt;li&gt;Always died immediately because of a promise that was not fulfilled. &lt;/li&gt;
&lt;li&gt;supports top-level wait. &lt;/li&gt;
&lt;li&gt;browser compatible (&lt;code&gt;window&lt;/code&gt; is not &lt;code&gt;global&lt;/code&gt;) 
#node #deno #javascript&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>node</category>
      <category>javascript</category>
      <category>programming</category>
      <category>computerscience</category>
    </item>
    <item>
      <title>Types of attacks in Cyberspace</title>
      <dc:creator>vishwasnarayanre</dc:creator>
      <pubDate>Wed, 25 Aug 2021 18:08:44 +0000</pubDate>
      <link>https://dev.to/vishwasnarayan5/types-of-attacks-in-cyberspace-4o1f</link>
      <guid>https://dev.to/vishwasnarayan5/types-of-attacks-in-cyberspace-4o1f</guid>
      <description>&lt;p&gt;One of these ramifications is cyber-attacks. In cyberspace, there are many different forms of cyber assaults. Since 2018, a variety of cyber assaults have occurred, several of which have resulted in serious repercussions.&lt;/p&gt;

&lt;p&gt;The following are the most common methods used by various sorts of cyber assaults. Continue reading to learn about different types of cyberattacks and how to avoid them.&lt;/p&gt;

&lt;p&gt;An purposeful act by one or more cybercriminals to steal data, falsify information, or disrupt digital systems is known as a cyber attack. Organizations require Cyber Security professionals and specialists to cope with these many forms of cyber assaults.&lt;/p&gt;

&lt;p&gt;Cybercriminals get unlawful and unauthorised access to one or more computers through cyber security assaults, which they exploit to their advantage. Individuals all around the world are affected by numerous sorts of cyber assaults. So, what are the most frequent forms of cyber-attacks now in use? You might be shocked to learn that there is a lengthy list to review.&lt;/p&gt;

&lt;p&gt;Numerous research have shown various forms of cyber assaults in the field of cybersecurity. Let's take a closer look at these sorts of cyber assaults and learn more about them.&lt;/p&gt;

&lt;h1&gt;
  
  
  PHISHING ATTACKS:
&lt;/h1&gt;

&lt;p&gt;Phishing attacks are one of the most common types of cyber attacks. With these attacks, attackers attempt to obtain personal information or data, such as usernames, passwords, and credit card details, disguising themselves as trusted entities. Phishing is mainly carried out through electronic means such as email and the telephone.&lt;/p&gt;

&lt;h1&gt;
  
  
  SPEAR PHISHING ATTACKS:
&lt;/h1&gt;

&lt;p&gt;Spear phishing refers to any fraudulent activity carried out via email or telephone, with the purpose of unauthorized access to personal confidential information. It has become one of the most common types of cyber attacks today.&lt;/p&gt;

&lt;h1&gt;
  
  
  WHALE PHISHING ATTACKS
&lt;/h1&gt;

&lt;p&gt;Whale phishing is one of many types of hacking attacks aimed at accessing sensitive and confidential information of powerful people (such as the CEO or CEO of any company). It is an important type in the list of types of network attacks.&lt;/p&gt;

&lt;h1&gt;
  
  
  DRIVE-BY ATTACKS
&lt;/h1&gt;

&lt;p&gt;Among various types of cyber attacks, car theft attacks are very common. In these types of network security attacks, hackers insert malicious scripts on multiple websites and finally gain access to all confidential files of users who visit these websites. Through these malicious scripts, the entire system is destroyed and hackers have access to all information.&lt;/p&gt;

&lt;h1&gt;
  
  
  RANSOMWARE
&lt;/h1&gt;

&lt;p&gt;Among the types of cyber attacks, ransomware is the most risky one, because very critical information may be threatened. In a ransomware attack, if the victim does not pay the ransom within the deadline set by the cybercriminals, they will be forced to delete all necessary information from their systems. It is also one of the main types of cyber attacks in the health and defense and other sectors. However, there is no guarantee that paying the ransom will protect your files.&lt;/p&gt;

&lt;h1&gt;
  
  
  PASSWORD ATTACK
&lt;/h1&gt;

&lt;p&gt;In this type of network security attack, the attacker tries to invade the different accounts of the victim by hacking the victim's personal data and password. This allows them to illegally access all of the victim's information, which is ultimately based on the attacker's benefit. .&lt;/p&gt;

&lt;h1&gt;
  
  
  EAVESDROPPING ATTACKS
&lt;/h1&gt;

&lt;p&gt;Eavesdropping attacks are an attack on network security, which cybercriminals carry out from time to time to gain unauthorized access to the files they need. Mobile phones, computers, and laptops are first used by hackers and then used by attackers to create information according to their own wishes. It is important to know the answers to the following questions: How many types of cyber attacks do you need to know?&lt;/p&gt;

&lt;h1&gt;
  
  
  MALWARE ATTACKS
&lt;/h1&gt;

&lt;p&gt;In malware attacks, attackers create code called malware to invade digital devices, including laptops, computers, and mobile phones, to gain unauthorized access.&lt;/p&gt;

&lt;h1&gt;
  
  
  TROJAN HORSES
&lt;/h1&gt;

&lt;p&gt;A Trojan horse program is a malicious software program whose purpose is to invade digital devices by showing useful software to the victim. &lt;br&gt;
 It is one of the most dangerous types of cyber attacks. It can help the attacker obtain financial details and other confidential information of the victim.&lt;/p&gt;

&lt;h1&gt;
  
  
  MAN-IN-THE-MIDDLE ATTACKS
&lt;/h1&gt;

&lt;p&gt;A MitM attack occurs when an attacker stands between the customer and the owner to trick the customer into gaining unauthorized access to their digital system.&lt;/p&gt;

&lt;h1&gt;
  
  
  DENIAL-OF-SERVICE (DOS) AND DISTRIBUTED DENIAL-OF-SERVICE (DDOS) ATTACKS
&lt;/h1&gt;

&lt;p&gt;DDoS attacks are one of the common types of network attacks, the purpose of which is to overwhelm the system and make it unable to respond to clients, thus eventually losing a large number of clients immediately.&lt;/p&gt;

&lt;h1&gt;
  
  
  URL INTERPRETATION
&lt;/h1&gt;

&lt;p&gt;In these types of network attacks, hackers change and forge specific URLs, through which they can gain unauthorized access to the victim's professional and personal data.&lt;/p&gt;

&lt;h1&gt;
  
  
  DNS TUNNELING
&lt;/h1&gt;

&lt;p&gt;It is one of the most dangerous types of cyber attacks. Hackers first invade the digital system, then collect data, and then forge the victim's information. This may take a long time and last a long time. It may also end up permanently damaging the victim's digital system due to the inserted robot and virus.&lt;/p&gt;

&lt;h1&gt;
  
  
  SESSION HIJACKING
&lt;/h1&gt;

&lt;p&gt;It is one of the most dangerous types of attacks in network security. These types of active attacks occur when the attacker performs security attacks on the victim's session over and over again from the protected network. This is a dangerous method that allows the attacker to steal all the victim's information and data at the end of the process.&lt;/p&gt;

&lt;h1&gt;
  
  
  BRUTE FORCE
&lt;/h1&gt;

&lt;p&gt;It is a method of randomly trying different keys or passwords to unlock the victim's system. It is one of the main types of cyber attacks, which are carried out by many people every day.&lt;/p&gt;

&lt;h1&gt;
  
  
  CROSS-SITE SCRIPTING
&lt;/h1&gt;

&lt;p&gt;This is an injection violation in which cybercriminals send malicious scripts from other websites to the victim's system to obtain their information.&lt;/p&gt;

&lt;h1&gt;
  
  
  SQL INJECTION
&lt;/h1&gt;

&lt;p&gt;SQL injection is one of the &lt;br&gt;
 newest types of network attacks designed to inject malicious information into the victim's digital device.Allows hackers to access all confidential and personal information.&lt;/p&gt;

&lt;h1&gt;
  
  
  INSIDER THREATS
&lt;/h1&gt;

&lt;p&gt;Many types of cyber attacks happen every day. The most shocking fact is that most of the time, an intern is involved in this process to help cybercriminals obtain information about your organization. The insiders of the target organization eventually become the ones creating these types of cyberattacks every day. They help them by providing all the necessary information to external attackers, which can have more consequences. These types of hacking attacks can occur in the corporate environment. It is also one of the common types of attacks on banks and financial institutions on network security.&lt;/p&gt;

&lt;h1&gt;
  
  
  AI-POWERED ATTACKS
&lt;/h1&gt;

&lt;p&gt;Machine learning focuses on teaching computers to multitask on their own, rather than relying on humans to perform them manually. Sometimes artificial intelligence is used to crack digital systems in order to obtain unauthorized information. It can also be used to steal confidential financial data. It affects national security and even emotionally harms people.&lt;/p&gt;

&lt;h1&gt;
  
  
  BIRTHDAY ATTACKS
&lt;/h1&gt;

&lt;p&gt;The birthday attack is a brute force cyber attack designed to distort the communication between customers and different people in the company, starting directly with the CEO and his employees.&lt;/p&gt;

&lt;h1&gt;
  
  
  Conclustion
&lt;/h1&gt;

&lt;p&gt;What are the types of cyber attacks? This question has been adequately answered in this article. In terms of their impact, various types of cybersecurity attacks affect victims in different ways. Assessing these types of cyberattacks requires further investigation on the subject. The first thing is that all kinds of cyberattacks affect the victims in some way. &lt;br&gt;
 Here are some of the top types of attacks that occur frequently in cybersecurity in 2020. However, the most important way to reduce them is to have a broad understanding of the types of cyber attacks. Should raise the level of awareness of employees and ordinary citizens, and then take appropriate preventive measures to reduce the crime rate in the business environment.&lt;/p&gt;

</description>
      <category>cybersecurity</category>
      <category>computerscience</category>
      <category>codequality</category>
    </item>
    <item>
      <title>Wireshark </title>
      <dc:creator>vishwasnarayanre</dc:creator>
      <pubDate>Fri, 11 Jun 2021 06:41:14 +0000</pubDate>
      <link>https://dev.to/vishwasnarayan5/wireshark-3jg</link>
      <guid>https://dev.to/vishwasnarayan5/wireshark-3jg</guid>
      <description>&lt;h1&gt;
  
  
  Wireshark introduction
&lt;/h1&gt;

&lt;p&gt;Wireshark is a network analyzer that allows you to see what is going on with your network. Wireshark allows you to dissect network packets at a microscopic level, including detailed information on individual packets.&lt;/p&gt;

&lt;p&gt;Wireshark was first made available in 1998. Back then, it was considered Ethereal. Wireshark is compatible with all major operating systems. Most businesses and government agencies also use Wireshark as a primary network analyzer.&lt;/p&gt;

&lt;p&gt;Wireshark is now fully open-source, thanks to the global network engineering ecosystem. While most security systems are command-line-based, Wireshark has an excellent user interface.&lt;/p&gt;

&lt;h1&gt;
  
  
  OSI Model
&lt;/h1&gt;

&lt;p&gt;The Open Systems Interconnection (OSI) paradigm standardises the manner in which two or more computers communicate with one another. The OSI Model classifies network architecture into seven layers:&lt;/p&gt;

&lt;p&gt;Application, Presentation, Session, Transport, Network, Datalink, and Physical.&lt;/p&gt;

&lt;p&gt;Here is what each layer does:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;OSI Model Layers&lt;/strong&gt;&lt;br&gt;
If you want to read more about the OSI model, check out this &lt;a href="https://dev.to/vishwasnarayan5/cyber-secutiry-3c8a"&gt;comprehensive essay&lt;/a&gt;.&lt;/p&gt;

&lt;h1&gt;
  
  
  Packets
&lt;/h1&gt;

&lt;p&gt;Now that you understand the OSI model, let's look at network packets. When data is transmitted from one device to another, it is divided into smaller units known as packets.&lt;/p&gt;

&lt;p&gt;When you download a file from the internet, the data is transmitted as packets from the server. Your machine reassembles these packets to send you the original file.&lt;/p&gt;

&lt;h1&gt;
  
  
  IPV4 Packet
&lt;/h1&gt;

&lt;p&gt;A packet can contain the following data:&lt;br&gt;
*source and destination IP addresses&lt;br&gt;
protocol&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;source and destination ports&lt;/li&gt;
&lt;li&gt;Data&lt;/li&gt;
&lt;li&gt;Length, flags, TTL, etc.&lt;/li&gt;
&lt;li&gt;protocol&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each packet includes important information about the devices involved in the packet transfer. Thousands, if not millions, of these data packets are transmitted between the source and destination devices for each data connection.&lt;/p&gt;

&lt;p&gt;You can now understand the significance of Wireshark. Wireshark allows you to catch and search each of these packets for details.&lt;/p&gt;

&lt;p&gt;A network engineer's equivalent of a biologist's microscope is Wireshark. Wireshark allows you to ‘listen' to a live network (after connecting to it), record, and inspect packets on the move.&lt;/p&gt;

&lt;p&gt;You may use Wireshark as a network engineer or ethical hacker to debug and protect the networks. As a bad guy (which I do not recommend), you can sniff network packets and grab information such as credit card purchases.&lt;/p&gt;

&lt;p&gt;This is why connecting to a public network such as Starbucks and doing financial transfers or accessing private data is risky. Even though HTTPS sites can encrypt the packets, they are still readable across the network.&lt;/p&gt;

&lt;p&gt;If someone is determined enough, they will be able to break it.&lt;br&gt;
Wireshark Fundamentals&lt;br&gt;
Let's take a look at how you can use Wireshark. Wireshark can be downloaded and installed from this page.&lt;br&gt;
Unlike other penetration testing software, Wireshark provides an excellent graphical user interface. This is how Wireshark appears when you launch it.&lt;/p&gt;

&lt;p&gt;Wireshark displays a list of the networks to which you are linked, and you can choose one of them to begin listening to the network.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Wireshark UI&lt;/strong&gt;&lt;br&gt;
There are three panes in Wireshark.&lt;br&gt;
Packet List Pane&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs1goim6suk41ewj9xuk0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs1goim6suk41ewj9xuk0.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The listing of packages in Wireshark is by default displayed using the following columns:&lt;br&gt;
Package Number&lt;br&gt;
Time&lt;br&gt;
Source IP (Your device IP when sending packages, see the following tutorial if you’re unfamiliar with IP’s: &lt;a href="https://youtu.be/oieIGwUPaKE" rel="noopener noreferrer"&gt;https://youtu.be/oieIGwUPaKE&lt;/a&gt;)&lt;br&gt;
Destination IP (Your device IP when receiving Packages)&lt;br&gt;
Network Protocol used (Typically TCP or UDP, see the following video if you’re in doubt of the difference between these: &lt;a href="https://youtu.be/0-MldfyhIuo" rel="noopener noreferrer"&gt;https://youtu.be/0-MldfyhIuo&lt;/a&gt;)&lt;br&gt;
Package Length&lt;br&gt;
Info (Information not listed in one of the above columns)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Packet List Pane&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This window shows the collected packets. Each line represents a separate packet, which you can click on and examine in greater depth using the other two panes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Packet Details Pane&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Selecting a packet allows you to examine the packet information in greater depth using the Packet Details pane. It shows information such as IP addresses, ports, and other data from the packet.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Packet Bytes Pane&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This pane displays the raw data of the chosen packet in bytes. The data is presented as a hex dump, which is binary data in hexadecimal format.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Filters&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Filters in Wireshark assist you in narrowing down the kind of data you are searching for. Filters are classified into two types: capture filters and display filters.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Traffic Filtering&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Wireshark supports filters based on a broad range of criteria to reduce the amount of information shown at the start. The filters can be applied directly in the search bar of the Wireshark programme, as seen below with a TCP protocol filter.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Capture Filter&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Until beginning to evaluate a network, you should apply a catch filter. When a catch filter is set, it only catches packets that fit the capture filter.&lt;/p&gt;

&lt;p&gt;For eg, if you only need to listen to the packets being sent and received from an IP address, you can set a capture filter as follows.&lt;br&gt;
host 192.168.0.1&lt;br&gt;
Once you set a capture filter, you cannot change it till the current capture session is completed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Display Filters&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;To grab packets, display filters are used. For eg, if you just want to see requests coming from a certain IP address, you can do so. you can apply a display filter as follows:&lt;br&gt;
ip.src==192.168.0.1&lt;/p&gt;

&lt;p&gt;Show filters can be modified on the fly when they are added to collected data.&lt;br&gt;
In a nutshell, capture filters allow you to filter the traffic, while view filters add certain filters to the captured packets. Wireshark is good for debugging because it can catch hundreds of packets on a busy network.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Wireshark's Main Features&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Now that you've mastered the fundamentals of Wireshark, let's take a look at some main features. You can do it with Wireshark.&lt;/p&gt;

&lt;p&gt;Recognize network security risks and malicious activities&lt;br&gt;
Debug dynamic networks by observing network traffic.&lt;br&gt;
Filter traffic according to protocols, ports, and other criteria.&lt;br&gt;
Capture packets and store them in a &lt;strong&gt;Pcap&lt;/strong&gt; file for later review.&lt;br&gt;
To improve research, apply coloring rules to the packet list.&lt;br&gt;
Captured data can be exported to an XML, CSV, or plain text format.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Every year, Wireshark is ranked in the top ten network security software. Wireshark is simple to understand and use thanks to its simple but efficient user interface. It is an important weapon in the arsenal of any penetration tester.&lt;/p&gt;

</description>
      <category>cybersecurity</category>
      <category>computerscience</category>
      <category>programming</category>
    </item>
    <item>
      <title>Programing language for hackers</title>
      <dc:creator>vishwasnarayanre</dc:creator>
      <pubDate>Wed, 19 May 2021 16:43:08 +0000</pubDate>
      <link>https://dev.to/vishwasnarayan5/programing-language-for-hackers-3a9g</link>
      <guid>https://dev.to/vishwasnarayan5/programing-language-for-hackers-3a9g</guid>
      <description>&lt;p&gt;Hacking is a very interesting concept where you use for exploiting the network or a computer system to access a crucial information. When you know how to use the techniques legally you can get to know how the cybersecurity professionals can really be influential in getting the best out for the world to keep the cyber space more secure.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Here I have some list of the programing languages that you need to know for Ethical Hacking.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h1&gt;
  
  
  Why is programing important for the Ethical Hacking?
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;To be a hacker it is imperative to have a knowledge of programing language.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Knowledge of coding will help you in making you realize the Bugs and will you in writing your own script.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Coding will help hackers penetrate various hackable fields/platforms.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  1. python
&lt;/h2&gt;

&lt;p&gt;The most popular language is &lt;strong&gt;python&lt;/strong&gt;,this has a huge community support and huge number of libraries which makes prototyping and automation scripting easier.&lt;/p&gt;

&lt;p&gt;Python is a general-purpose programing language that means it is used in various different fields/platforms this is a very widely used language in different industries.&lt;/p&gt;

&lt;p&gt;This is also a DeFacto programing language, this is the language that is used in writing the hacking scripts, Exploits and Malicious Program.&lt;/p&gt;

&lt;p&gt;Python socket programing can also be used for discovering vulnerabilities in a system.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. JavaScript
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;JavaScript&lt;/em&gt;* is also used in web hacking and penetration testing. This language is used in reading saved cookies and also perform attacks like XSS(Cross Site Scripting).&lt;/p&gt;

&lt;p&gt;JavaScript has gained popularity as the Server-side programing Language along with he NodeJS framework.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. PHP
&lt;/h2&gt;

&lt;p&gt;PHP is a Programing Language that is Hypertext pre-processor which is a dynamic server-side programing language, this language is used in the web development which helps you in understanding the web hacking techniques.&lt;/p&gt;

&lt;p&gt;PHP is used for the server-side scripting that can be used to gain access to the server. This can also give you a access to know the vulnerabilities int eh code and you can get the knowledge of running the code properly.&lt;/p&gt;

&lt;p&gt;This is one of the most powerful server side languages that we will be using in order to secure and keep your website secure in most of the web domain we can use the PHP ad analyze and secure the web.&lt;/p&gt;

&lt;p&gt;See today most of the content management system runs on PHP thus you have to have knowledge about PHP which is going to useful for you in the future.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. SQL - Structures Query Language
&lt;/h2&gt;

&lt;p&gt;this Language is used in fetching data from the database. This is not a well versed language in the developer space for the development but this is the language that is used for communicating with the database.&lt;/p&gt;

&lt;p&gt;The knowledge of SQL will help us in comprehending the structure of the Database thus helping us in making the right decision for which scripts or the code to apply for the programme.&lt;/p&gt;

&lt;p&gt;SQL is used for the purpose of the web hacking, which is to access into the database. Using SQL hackers can really do a &lt;strong&gt;SQL injection Attack&lt;/strong&gt; thus helping the hackers to collect even more confidential information from the database.&lt;/p&gt;

&lt;p&gt;SQL is used in building tools for the SQL injection which can be used for exploiting the login algorithms in the web application that are week.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. C/C++ programing language
&lt;/h2&gt;

&lt;p&gt;This is the best language when are new to the programing world and also a best language if you want to learn the programing as this is a very old languages int eh developer space.&lt;/p&gt;

&lt;p&gt;it helps the newbies to develop and write the exploit codes. This is used for manipulating the system Hardware and also will help you in gaining access to the system resources.&lt;/p&gt;

&lt;p&gt;Most of the Operating system and the programs are written in c programing language thus exploiting the system and the system software c programing is going to help you a lot .C programing language is also used in creating shell code, toolkits and also exploits, malware, key Logers and many more.&lt;/p&gt;

&lt;blockquote&gt;
&lt;h1&gt;
  
  
  Do remember Learning various programing language is a added advantage when you want to learn hacking and it will be a asset to you tomorrow.
&lt;/h1&gt;
&lt;/blockquote&gt;

&lt;p&gt;Some more programing languages are:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Ruby: Ruby has a very close relation with the python as it has similar syntax.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;for the Example you can learn something called as the &lt;a href="https://www.google.com/search?q=ruby+on+rails&amp;amp;sxsrf=ALeKk02aj_Youqpuaej2U4sCPD3_YHJHJA%3A1621442360235&amp;amp;source=hp&amp;amp;ei=OD-lYMmRDIf59QPejJTwAw&amp;amp;iflsig=AINFCbYAAAAAYKVNSFXEnElzNw-jk2LRCS_6xBQA15HN&amp;amp;oq=ruby+on+&amp;amp;gs_lcp=Cgdnd3Mtd2l6EAMYADIECCMQJzICCAAyAggAMgIIADICCAAyAggAMgIIADICCAAyAggAMgIIADoECC4QJzoICC4QsQMQgwE6AgguOgUIABCxAzoOCC4QsQMQgwEQxwEQrwE6CAgAELEDEIMBOgUILhCxAzoFCAAQyQM6BQgAEJIDOggIABCxAxDJA1CTA1i9C2CUFmgAcAB4AIABf4gBqAaSAQM1LjOYAQCgAQGqAQdnd3Mtd2l6&amp;amp;sclient=gws-wiz"&gt;Ruby on Rails&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;However, ruby can be used for the various purpose and can be interchangeably used in Bash Scripting.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;HTML/CSS/tailwind CSS/Typescript and many more for understanding how the websites are used.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Thus all languages are important if you are lazy like me then you can jsut go and learn the algorithms and you will get the syntaxes of any language later.&lt;/p&gt;

</description>
      <category>cybersecurity</category>
      <category>computerscience</category>
      <category>programming</category>
      <category>privacy</category>
    </item>
    <item>
      <title>Nmap</title>
      <dc:creator>vishwasnarayanre</dc:creator>
      <pubDate>Wed, 19 May 2021 11:36:05 +0000</pubDate>
      <link>https://dev.to/vishwasnarayan5/nmap-6jl</link>
      <guid>https://dev.to/vishwasnarayan5/nmap-6jl</guid>
      <description>&lt;h1&gt;
  
  
  About Nmap
&lt;/h1&gt;

&lt;p&gt;Nmap is a network discovery and compliance auditing tool. In a nutshell, nmap shows exposed utilities on a target computer as well as other valuable details including version and Iso detection. It's also free and open source!&lt;/p&gt;

&lt;p&gt;Nmap is an abbreviation for Network Mapper. It is a free and open-source Linux command-line utility for scanning IP addresses and ports in a network and detecting installed applications. Nmap helps network administrators to discover the machines that are connected to their network, discover available ports and services, and identify vulnerabilities.Gordon Lyon (pseudonym Fyodor) created Nmap as a method for quickly mapping an entire network and locating available ports and facilities.&lt;/p&gt;

&lt;p&gt;Nmap is favoured over other scanning applications for a variety of purposes. Nmap allows you to easily map out a network without the need for complex commands or configurations. Nmap supports both basic commands (such as checking to see whether a host is up) and complex scripting through the Nmap scripting engine.&lt;/p&gt;

&lt;p&gt;Other capabilities of Nmap include the ability to automatically identify all devices on a single or multiple networks, such as servers, routers, switches, handheld devices, and so on.&lt;br&gt;
Identify the utilities that are running on a device, such as web servers, DNS servers, and other commonly used software. Nmap can also detect device variants with good precision, which can aid in the detection of known vulnerabilities.&lt;/p&gt;

&lt;p&gt;Nmap will discover knowledge about the operating system that is currently running on a smartphone. It may include specific details such as OS models, making alternate approaches during penetration testing easier to schedule.&lt;br&gt;
Nmap can be used to target applications using existing scripts from the Nmap Scripting Engine during security auditing and vulnerability scanning.&lt;/p&gt;

&lt;p&gt;Zenmap is the graphical user interface for Nmap. It enables you to create visual network mappings for improved accessibility and monitoring.&lt;/p&gt;
&lt;h1&gt;
  
  
  Commands
&lt;/h1&gt;

&lt;p&gt;Let's have a look at a few Nmap commands. If you don't already have Nmap installed, you can obtain it here.&lt;/p&gt;
&lt;h1&gt;
  
  
  Basic scans
&lt;/h1&gt;

&lt;p&gt;The initial stage in network mapping is to scan the list of active devices on a network. There are two kinds of scans you may utilise for this:&lt;br&gt;
*&lt;em&gt;Ping scan *&lt;/em&gt; — Scans the list of devices up and running on a given subnet.&lt;br&gt;
&lt;code&gt;nmap -sp IP/24&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Scan a single host for 1000 well-known ports — Scans a single host for 1000 well-known ports. These are the ports used by prominent services such as SQL, SNTP, Apache, and others.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;nmap domain&lt;/code&gt;&lt;/p&gt;
&lt;h1&gt;
  
  
  Nmap Basic Scan
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;Stealth scan&lt;/strong&gt; : Stealth scanning is performed by sending an SYN packet and analyzing the response. If SYN/ACK is received, it means the port is open, and you can open a TCP connection. However, a stealth scan never completes the 3-way handshake, hence it's hard for the target to determine the scanning system.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;nmap -sS domain&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;To execute a stealth scan, use the ‘-sS' command. Keep in mind that stealth scanning is slower and less aggressive than other forms of scanning, so you may have to wait a while for a response.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Version scanning&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Finding programme versions is an essential component of penetration testing. It makes your life simpler since you may locate an existing vulnerability for a specific version of the service in the Common Vulnerabilities and Exploits (CVE) database. Then, using an exploitation tool such as Metasploit, you may utilise it to attack a system.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;nmap -sV domain&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Use the ‘-sV' command to do a version scan. Nmap will provide a list of services along with their versions. Keep in mind that version scans are not always 100% correct, but they do get you one step closer to effectively entering a system.&lt;/p&gt;
&lt;h1&gt;
  
  
  Nmap Version Scanning
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;OS Scanning&lt;/strong&gt;&lt;br&gt;
Nmap can offer information on the underlying operating system via TCP/IP fingerprinting in addition to the services and their versions. During an OS scan, Nmap will also attempt to determine the system uptime.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;nmap -sV domain&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;You can use the additional flags like &lt;code&gt;--osscan-limit&lt;/code&gt; to limit the search to a few expected targets. Nmap will display the confidence percentage for each OS guess. Again, OS detection is not always accurate, but it goes a long way in helping a pen tester get closer to his / her target.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Nmap OS Scanning&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Aggressive Scanning&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Nmap features an aggressive mode that allows it to detect operating systems, versions, scripts, and traceroutes. To execute an aggressive scan, use the -A parameter.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;nmap -A domain&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Regular scans do not give as much information as aggressive scans. An aggressive scan, on the other hand, sends out more probes and is more likely to be identified during security audits.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Nmap Aggressive Scan&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;Scanning Multiple Hosts&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Nmap is capable of scanning many hosts at the same time. This function is extremely useful for managing a large network architecture.&lt;/p&gt;

&lt;p&gt;You may scan several hosts using a variety of methods, including:&lt;br&gt;
To scan all of the hosts at the same time, write all of the IP addresses in a single row.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;nmap 192.164.1.1 192.164.0.2 192.164.0.2&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Use the asterisk (*) to scan all of the subnets at once.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;nmap 192.164.1.*&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Add commas to separate the addresses endings instead of typing the entire domains&lt;/p&gt;

&lt;p&gt;&lt;code&gt;nmap 192.164.0.1,2,3,4&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Use a hyphen to specify a range of IP addresses&lt;/p&gt;

&lt;p&gt;&lt;code&gt;nmap 192.164.0.0–255&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Port Scanning&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Port scanning is one of the most fundamental features of Nmap. You can scan for ports in several ways.&lt;/p&gt;

&lt;p&gt;Using the &lt;code&gt;-p&lt;/code&gt; param to scan for a single port&lt;/p&gt;

&lt;p&gt;&lt;code&gt;nmap -p 973 192.164.0.1&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;You can scan for information about a certain sort of connection if you provide the kind of port.&lt;/p&gt;

&lt;p&gt;eg. for a TCP connection,&lt;/p&gt;

&lt;p&gt;&lt;code&gt;nmap -p T:7777, 973 192.164.0.1&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;A range of ports can be scanned by separating them with a hyphen.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;nmap -p 76–973 192.164.0.1&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;You can also use the &lt;code&gt;--top-ports&lt;/code&gt; flag to specify the top n ports to scan&lt;br&gt;
&lt;code&gt;nmap --top-ports 10 domain&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Scanning from a File&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you want to scan a large list of IP addresses, you can do it by importing a file with the list of IP addresses.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;nmap -iL /input_ips.txt&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;The above command will produce the scan results of all the given domains in the “input_ips.txt” file. Other than simply scanning the IP addresses, you can use additional options and flags as well.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Verbosity and Exporting Scan Results&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Penetration testing can last days or even weeks. Exporting Nmap results can be useful to avoid redundant work and to help with creating final reports. Let’s look at some ways to export Nmap scan results.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Verbose Output&lt;/em&gt; : &lt;code&gt;nmap -v domain&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;The verbose output offers more information about the scan that is being done. It is important to observe Nmap's activity on a network step by step, especially if you are an outsider scanning a client's network.&lt;/p&gt;

&lt;p&gt;Nmap Verbose Output**&lt;br&gt;
Normal output&lt;br&gt;
Nmap scans may also be saved as text files. It will alter significantly from the original command line output, but it will contain all of the important scan findings.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;nmap -oN output.txt domain&lt;/code&gt;&lt;/p&gt;
&lt;h1&gt;
  
  
  Nmap File output
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;XML output&lt;/strong&gt;&lt;br&gt;
Nmap scans may be exported to XML as well. It's also the preferred file format for most pen-testing programmes, so it's easy to parse when importing scan results.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;nmap -oX output.xml domain&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Nmap XML Output&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Multiple Formats&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You can also export the scan results in all the available formats at once using the -oA command.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;nmap -oA output domain&lt;/code&gt;&lt;br&gt;
The above command will export the scan result in three files — output.xml, output. Nmap and output.gnmap.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Nmap Help&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Nmap has a built-in help command that lists all the flags and options you can use. It is often handy given the number of command-line arguments Nmap comes with.&lt;br&gt;
&lt;code&gt;nmap -h&lt;/code&gt;&lt;/p&gt;
&lt;h1&gt;
  
  
  Nmap Help
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;Nmap Scripting Engine&lt;/strong&gt;: Nmap Scripting Engine (NSE) is a tremendously powerful tool for writing scripts and automating many networking capabilities. You may discover a plethora of scripts spread around Nmap, or you may develop your own script based on your needs. You may even use the Lua programming language to change existing scripts.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Nmap Scripts&lt;/strong&gt;: NSE also includes attack scripts for assaulting the network and various networking protocols. Going through the scripting engine in detail would be beyond the scope of this post, but here is some additional information regarding the Nmap scripting engine.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Zenmap&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Nmap's graphical user interface is Zenmap. It is a free and open-source programme that assists you in getting started with Nmap.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Zenmap UI&lt;/strong&gt;&lt;br&gt;
Zenmap not only provides visual network mappings, but it also allows you to save and search your scans for later use. Zenmap is ideal for novices who want to test the possibilities of Nmap without having to use a command-line interface.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Because of its extensive command set, Nmap is definitely the networking equivalent of the "Swiss Army Knife." Nmap allows you to swiftly scan and uncover important information about your network's hosts, ports, firewalls, and operating systems. Nmap includes a plethora of parameters, flags, and options that assist system administrators in thoroughly analysing a network.&lt;/p&gt;
&lt;h1&gt;
  
  
  Nmap Scan Types
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;TCP Connect&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The TCP Connect search concludes the three-way handshake.&lt;br&gt;
If a port is open, the operating system has finished the TCP three-way handshake, and the port scanner closes the connection automatically to prevent DOS. This is considered "noisy" since the services will record the sender's IP address and can initiate Intrusion Detection Systems.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;UDP Scan&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This scan checks to see if there are any UDP ports listening.&lt;br&gt;
Since UDP, unlike TCP, does not react with a positive acknowledgment and only reacts to an incoming UDP packet when the port is closed, this form of scan may sometimes produce false positives. It can, however, expose Trojan horses running on high UDP ports as well as secret RPC services.&lt;/p&gt;

&lt;p&gt;It can be very slow, since some computers deliberately slow down responses to this type of traffic in order to avoid being overloaded. Machines running Windows OS, on the other hand, do not enforce this slowdown bug, so you should be able to search Windows hosts normally using UDP.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;SYN Scan&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;TCP scanning is also known as SYN scanning.&lt;br&gt;
Rather than using the network features of the operating system, the port scanner produces raw IP packets and watches for responses. Since it never establishes a complete TCP link, this scan style is also known as "half-open scanning." A SYN packet is created by the port scanner. If the target port is available, it will send a SYN-ACK packet in response.&lt;/p&gt;

&lt;p&gt;The scanner host responds with a RST packet, effectively terminating the link before the handshake is done. If the port is closed but not filtered, the aim will answer immediately with a RST packet. There is some disagreement about which search is less invasive on the target host. The benefit of SYN scan is that the individual providers never receive a connection.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;FIN Scanner&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This is a stealthy scan, similar to the SYN scan, but only sends a TCP FIN packet.&lt;br&gt;
Most, but not all, computers will respond with a RST packet if they receive this information, so the FIN scan may produce false positives and negatives, but it may slip past certain IDS programmes and other countermeasures.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;ACK Scan&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Ack screening decides whether or not the port is screened.&lt;br&gt;
This is particularly useful when trying to detect the presence of a firewall and its rulesets. Simple packet filtering will make existing connections (packets with the ACK bit set), but a more advanced stateful firewall does not.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;NULL Scan&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Another quite stealthy check that disables or nullifies all TCP header flags.&lt;br&gt;
This is not a true packet in most cases, and certain hosts may not know what to do about it. Windows operating systems are included in this category, and scanning them with NULL scans would yield untrustworthy performance. However, for non-Windows servers that are covered by a firewall, this may be a workaround.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;XMAS Scan&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Similar to the NULL search, except that all of the TCP header flags are set to on.&lt;br&gt;
Because of the way their TCP stack is implemented, Windows machines will not react to this. The term "Xmas search" refers to a collection of flags that are allowed within a packet. These scans are intended to exploit the TCP header's PSH, URG, and FIN flags.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;RPC Scan&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This form of scan searches for devices that respond to RPC (Remote Procedure Call) services.&lt;br&gt;
In such cases, RPC, which allows remote commands to be run on the server, can be a risky operation. Since RPC services can operate on a variety of ports.&lt;/p&gt;

&lt;p&gt;It is difficult to know which ones are operating RPC from a standard scan. If RPC is working, this scan will probe the open ports on a computer with commands to display the programme name and version. It's not a bad thing to run all of these scans on a regular basis just to see whether and when you have these services going.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;IDLE Scan&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The scan packets are bounced off an external host, making it a very stealthy process.&lt;br&gt;
You may not need power over the other host, but it must be configured and follow those specifications. You must enter the IP address of our "zombie" host as well as the port code. It is one of the most contentious solutions in Nmap because it is actually only useful for malicious attacks.&lt;/p&gt;
&lt;h1&gt;
  
  
  Scan Techniques
&lt;/h1&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Switch&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;-sS&lt;/td&gt;
&lt;td&gt;TCP SYN port scan.&lt;/td&gt;
&lt;td&gt;nmap -sS IP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-sT&lt;/td&gt;
&lt;td&gt;TCP Connect port scan.&lt;/td&gt;
&lt;td&gt;nmap -sT IP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-sU&lt;/td&gt;
&lt;td&gt;UDP port scan.&lt;/td&gt;
&lt;td&gt;nmap -sU IP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-sA&lt;/td&gt;
&lt;td&gt;TCP ACK port scan.&lt;/td&gt;
&lt;td&gt;nmap -sA IP&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;h1&gt;
  
  
  Host Discovery
&lt;/h1&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Switch&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;-Pn&lt;/td&gt;
&lt;td&gt;Only port scan.&lt;/td&gt;
&lt;td&gt;nmap -Pn IP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-sn&lt;/td&gt;
&lt;td&gt;Only host discovery.&lt;/td&gt;
&lt;td&gt;nmap -sn IP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-PR&lt;/td&gt;
&lt;td&gt;ARP discovery on local network.&lt;/td&gt;
&lt;td&gt;nmap -PR IP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-n&lt;/td&gt;
&lt;td&gt;Disable DNS resolution.&lt;/td&gt;
&lt;td&gt;nmap -n IP&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;h1&gt;
  
  
  Port Specification
&lt;/h1&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Switch&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;-p&lt;/td&gt;
&lt;td&gt;Port or port range.&lt;/td&gt;
&lt;td&gt;nmap -p 22-80 IP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-p-&lt;/td&gt;
&lt;td&gt;Scan all ports.&lt;/td&gt;
&lt;td&gt;nmap -p- IP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-F&lt;/td&gt;
&lt;td&gt;Fast port scan. (top 100)&lt;/td&gt;
&lt;td&gt;nmap -F IP&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;h1&gt;
  
  
  Service and Version Detection
&lt;/h1&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Switch&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;-sV&lt;/td&gt;
&lt;td&gt;Detect the version of services.&lt;/td&gt;
&lt;td&gt;nmap -sV IP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-A&lt;/td&gt;
&lt;td&gt;Enable OS detection,version detection,script scanning and traceroute.&lt;/td&gt;
&lt;td&gt;nmap -A IP&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;h1&gt;
  
  
  OS Detection
&lt;/h1&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Switch&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;-O&lt;/td&gt;
&lt;td&gt;Identify OS using TCP/IP strack fingerprinting.&lt;/td&gt;
&lt;td&gt;nmap -O IP&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;h1&gt;
  
  
  Timing and Performance
&lt;/h1&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Switch&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;-T0&lt;/td&gt;
&lt;td&gt;Paranoid IDS evasion.&lt;/td&gt;
&lt;td&gt;nmap -T0 IP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-T1&lt;/td&gt;
&lt;td&gt;IDS evasion.&lt;/td&gt;
&lt;td&gt;nmap -T1 IP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-T2&lt;/td&gt;
&lt;td&gt;IDS scan requires less bandwidth.&lt;/td&gt;
&lt;td&gt;nmap -T2 IP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-T3&lt;/td&gt;
&lt;td&gt;IDS Default Scan&lt;/td&gt;
&lt;td&gt;nmap -T3 IP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-T4&lt;/td&gt;
&lt;td&gt;IDS Scan requires fast network&lt;/td&gt;
&lt;td&gt;nmap -T4 IP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-T5&lt;/td&gt;
&lt;td&gt;IDS Scan requires massive network speed&lt;/td&gt;
&lt;td&gt;nmap -T5 IP&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;h1&gt;
  
  
  NSE Scripts
&lt;/h1&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Switch&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;-sC&lt;/td&gt;
&lt;td&gt;Default script scan.&lt;/td&gt;
&lt;td&gt;nmap -sC IP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;--script banner&lt;/td&gt;
&lt;td&gt;Just banner grabbing&lt;/td&gt;
&lt;td&gt;nmap --script banner IP&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;h1&gt;
  
  
  Firewall / IDS Evasion
&lt;/h1&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Switch&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;-f&lt;/td&gt;
&lt;td&gt;fragmented IP packets for the packet filter invasion&lt;/td&gt;
&lt;td&gt;nmap -f IP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-D&lt;/td&gt;
&lt;td&gt;Decoy Scan for spoofing the IP's&lt;/td&gt;
&lt;td&gt;nmap -D IP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;-g&lt;/td&gt;
&lt;td&gt;Use given source port number.&lt;/td&gt;
&lt;td&gt;nmap -g 22 IP&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Somwe of the Python Scripts adn the commands that is going to be very helpul in gettign the eraly recon for the programing geeks.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="kn"&gt;import&lt;/span&gt; &lt;span class="nn"&gt;nmap&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;nmap&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;PortScanner&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;scan&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;'127.0.0.1'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s"&gt;'22-443'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;command_line&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;span class="s"&gt;'nmap -oX - -p 22-443 -sV 127.0.0.1'&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;scaninfo&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="s"&gt;'tcp'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="s"&gt;'services'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s"&gt;'22-443'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s"&gt;'method'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s"&gt;'connect'&lt;/span&gt;&lt;span class="p"&gt;}}&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;all_hosts&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s"&gt;'127.0.0.1'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s"&gt;'127.0.0.1'&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="n"&gt;hostname&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;span class="s"&gt;'localhost'&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s"&gt;'127.0.0.1'&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="n"&gt;state&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;span class="s"&gt;'up'&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s"&gt;'127.0.0.1'&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="n"&gt;all_protocols&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s"&gt;'tcp'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s"&gt;'127.0.0.1'&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="s"&gt;'tcp'&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="n"&gt;keys&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;80&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;25&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;443&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;22&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;111&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s"&gt;'127.0.0.1'&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="n"&gt;has_tcp&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;22&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="bp"&gt;True&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s"&gt;'127.0.0.1'&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="n"&gt;has_tcp&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;23&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="bp"&gt;False&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s"&gt;'127.0.0.1'&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="s"&gt;'tcp'&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="mi"&gt;22&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="s"&gt;'state'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s"&gt;'open'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s"&gt;'reason'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s"&gt;'syn-ack'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s"&gt;'name'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s"&gt;'ssh'&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s"&gt;'127.0.0.1'&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="n"&gt;tcp&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;22&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="s"&gt;'state'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s"&gt;'open'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s"&gt;'reason'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s"&gt;'syn-ack'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s"&gt;'name'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s"&gt;'ssh'&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s"&gt;'127.0.0.1'&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="s"&gt;'tcp'&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="mi"&gt;22&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="s"&gt;'state'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;span class="s"&gt;'open'&lt;/span&gt;

&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;host&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;all_hosts&lt;/span&gt;&lt;span class="p"&gt;():&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt;     &lt;span class="k"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;'----------------------------------------------------'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt;     &lt;span class="k"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;'Host : %s (%s)'&lt;/span&gt; &lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;host&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;host&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="n"&gt;hostname&lt;/span&gt;&lt;span class="p"&gt;()))&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt;     &lt;span class="k"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;'State : %s'&lt;/span&gt; &lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;host&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="n"&gt;state&lt;/span&gt;&lt;span class="p"&gt;())&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt;     &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;proto&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;host&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="n"&gt;all_protocols&lt;/span&gt;&lt;span class="p"&gt;():&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt;         &lt;span class="k"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;'----------'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt;         &lt;span class="k"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;'Protocol : %s'&lt;/span&gt; &lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="n"&gt;proto&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt;         &lt;span class="n"&gt;lport&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;host&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="n"&gt;proto&lt;/span&gt;&lt;span class="p"&gt;].&lt;/span&gt;&lt;span class="n"&gt;keys&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt;         &lt;span class="n"&gt;lport&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;sort&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt;         &lt;span class="k"&gt;for&lt;/span&gt; &lt;span class="n"&gt;port&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;lport&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt;             &lt;span class="k"&gt;print&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;'port : %s&lt;/span&gt;&lt;span class="se"&gt;\t&lt;/span&gt;&lt;span class="s"&gt;state : %s'&lt;/span&gt; &lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;port&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;nm&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;host&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="n"&gt;proto&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="n"&gt;port&lt;/span&gt;&lt;span class="p"&gt;][&lt;/span&gt;&lt;span class="s"&gt;'state'&lt;/span&gt;&lt;span class="p"&gt;]))&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Host : 127.0.0.1 (localhost)&lt;/p&gt;

&lt;h2&gt;
  
  
  State : up
&lt;/h2&gt;

&lt;p&gt;Protocol : tcp&lt;br&gt;
port : 22   state : open&lt;br&gt;
port : 25   state : open&lt;br&gt;
port : 80   state : open&lt;/p&gt;

&lt;p&gt;for more refer to the NMAP Documentation.&lt;/p&gt;

&lt;p&gt;Thank you all.&lt;br&gt;
port : 111  state : open&lt;br&gt;
port : 443  state : open&lt;/p&gt;

</description>
      <category>computerscience</category>
      <category>cybersecurity</category>
      <category>programming</category>
    </item>
    <item>
      <title>Cyber Security</title>
      <dc:creator>vishwasnarayanre</dc:creator>
      <pubDate>Mon, 10 May 2021 22:23:35 +0000</pubDate>
      <link>https://dev.to/vishwasnarayan5/cyber-secutiry-3c8a</link>
      <guid>https://dev.to/vishwasnarayan5/cyber-secutiry-3c8a</guid>
      <description>&lt;p&gt;First, I would say understand the seven layers of the Cyber security.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpcrrtrmkks6b55wt1d0p.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpcrrtrmkks6b55wt1d0p.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now understand all the hardware and software and the ports just run on &lt;strong&gt;Operating System&lt;/strong&gt; and have a specific driver and any set of the hardware's defined thus its hackable.&lt;/p&gt;

&lt;h1&gt;
  
  
  What is cyber security?
&lt;/h1&gt;

&lt;p&gt;The practice of protecting computers, websites, mobile devices, electronic services, networks, and data against malware threats is known as cyber defense. It's sometimes referred to as information infrastructure protection or electronic data security. The concept is used in a number of ways, ranging from enterprise to mobile computing, and can be classified into a few general groups for the computer defence.&lt;/p&gt;

&lt;p&gt;Computer defence(never go offensive), also known as cybersecurity or information technology security, is the safeguarding of computer systems and networks from information leakage, theft or harm to their devices, applications, or electronic records, as well as interruption or misdirection of the services they offer.&lt;/p&gt;

&lt;p&gt;It's no surprise that online security breaches are becoming so common. Despite the fact that digital is pervading every aspect of our lives, most people are terrible at security. In a 2016 Pew Research poll on cybersecurity, the vast majority of online adults correctly answered just two of thirteen questions.&lt;br&gt;
Let's do something about it by strengthening our own personal digital protections.While not to be confused with the internet, the word "cyberspace" refers to identities or incidents that occur during the contact process. Consider a website, which exists in CyberSpace as well.Interactions of others If you make a tweet, upload a photo, or share a message, all of these social experiences take place in Cyber Space, and this Cyber Space is evolving in seconds rather than minutes. Many of these activities are taking place "in cyberspace," not in their actual environments. You can see a picture below of different digital devices that are linked through the internet.The comoanies assets are on the internet.&lt;/p&gt;

&lt;p&gt;I've made it a tradition over the last 2 years or so to do an annual audit of my personal digital security. Every year, I review all of my online activities for security risks and make a commitment to improve. As a product of the endeavor, these are the behaviors I employ for the search and bounty.&lt;/p&gt;

&lt;p&gt;In general, I attempt to address these core questions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What data is available about me, and where is it stored and what kind of a domain it?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Never say to a person where you have hosted your websites through always make sure to use a custom domain name certificate and also have a certified SSL for your websites.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What are the risks that I’m going to guard against (playing defensive against all the offenses) i.e. what is my Threat Model?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Please make sure that you have all the ethical aspects when you do the bounty or the cyberattack and also dont missuse your freedom.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What are the impacts to my privacy and also about my social presence?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You should be very carefull abut what is your social presence and also about all the aspects that you want to take care.&lt;/p&gt;

&lt;p&gt;Network protection is the practise of defending a computer network against intruders, whether they be targeted attackers or opportunistic malware.&lt;/p&gt;

&lt;p&gt;Application secutiry is concerned with keeping apps and computers safe from attacks. A hacked programme could allow access to the data it is supposed to secure. Protection starts in the design stage, well before a software or system is implemented.&lt;/p&gt;

&lt;p&gt;Information protection safeguards the confidentiality and anonymity of data when it is in storage and transit.&lt;/p&gt;

&lt;p&gt;The procedures and decisions for managing and maintaining computer properties are included in operational security. This includes the permissions that users have when connecting to a network as well as the procedures that govern how and where data can be accessed or exchanged.&lt;/p&gt;

&lt;p&gt;Disaster recovery and business continuity describe how a company reacts to a cyber-security incident or some other situation that results in the loss of activities or records. Disaster recovery procedures govern how an organisation recovers its activities and records in order to resume operations at the same level as before the disaster.Business sustainability is the plan that a company uses when it is unable to function due to a lack of funding.&lt;/p&gt;

&lt;p&gt;End-user education tackles the most unpredictability of cyber-security: individuals. By failing to observe sound security standards, someone may inadvertently inject a virus into an otherwise stable environment. Instructing users to remove questionable email attachments rather than inserting unknown plug-in.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Types of cyber threats and attacks that you might face&lt;/strong&gt;&lt;br&gt;
The threats countered by cyber-security are three-fold:&lt;br&gt;
Today, the term is almost entirely used to refer to information security issues. We've taken to visualising the digital phenomena as a tangible one because it's difficult to imagine how digital signals flowing over a wire might reflect an assault.A cyber assault is an attack launched against us (or our digital devices) through cyberspace. Cyberspace, a non-existent cyber space, has become a term for understanding digital weaponry designed to threaten us.What is true, though, is the attacker's motive as well as the possible effect. While certain cyber attacks are minor annoyances, others are very serious, even endangering human lives.&lt;/p&gt;

&lt;p&gt;Cyber attacks are a major concern. Cyber attacks will result in power outages, the loss of military facilities, and the disclosure of national security information. They will lead to the stealing of important and confidential data, such as medical information. They have the ability to interrupt phone and internet networks as well as paralyze devices, rendering data inaccessible. It is not an exaggeration to suggest that cyber attacks have the potential to disrupt the functioning of life as we know it.&lt;/p&gt;

&lt;p&gt;Threats are now becoming more severe. According to Gartner, "cybersecurity risks pervade every organisation and aren't always directly under IT's control."Market executives are pushing forward with digital business plans, and those leaders are making technology-related risk decisions on a daily basis. Increased cyber vulnerability exists, but so do computer protection solutions.”&lt;/p&gt;

&lt;p&gt;Virtually every cyber threat falls into one of these three modes. In terms of attack techniques, malicious actors have an abundance of options.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Actors in cyberspace :&lt;/strong&gt; In cybersecurity, the "enemy" we may learn about is known as a "threat actor" - a concept that may apply to lone individuals, organised crime organisations, or whole entities attempting to compromise an individual's or organization's protection.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Cybercrime includes single threat actors or groups targeting systems (like DDOS) for financial gain or to cause disruption.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Cyber-attack often involves politically motivated information gathering and threats which can be like an apocalypse.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Cyberterrorism is predetermined to undermine electronic systems to cause panic or fear in the victim.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Cyber attacks may originate from a wide range of locations, individuals, and contexts. Among the malicious actors are:&lt;/p&gt;

&lt;p&gt;Individuals that create attack vectors using their own software tools&lt;br&gt;
Criminal organizations that are run like corporations, with large numbers of employees developing attack vectors and executing attacks&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Nation states&lt;/li&gt;
&lt;li&gt;Terrorists&lt;/li&gt;
&lt;li&gt;Industrial spies&lt;/li&gt;
&lt;li&gt;Organized crime groups&lt;/li&gt;
&lt;li&gt;Unhappy insiders&lt;/li&gt;
&lt;li&gt;Hackers&lt;/li&gt;
&lt;li&gt;Business competitors&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;So, how do malicious actors gain control of computer systems? Here are some common methods used to threaten cyber-security:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Malware&lt;/strong&gt;&lt;br&gt;
Malware is short for malicious applications. Malware is software developed by a cybercriminal or intruder to disable or destroy a legitimate user's computer. It is one of the most popular cyber threats. Malware, which is often distributed through unsolicited email attachments or legitimate-looking downloads, can be used by cybercriminals to make money or in politically motivated cyber-attacks.&lt;/p&gt;

&lt;p&gt;There are a number of different types of malware, including:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Virus :&lt;/strong&gt; A software that binds itself to clean files and spreads within a computer system, infecting files with malicious code.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Trojans :&lt;/strong&gt; Malware that behaves as legitimate apps. Cybercriminals deceive users into installing Trojans on their computers, which inflict harm or capture data.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Spyware :&lt;/strong&gt; A software that secretly tracks what a user does in order for cybercriminals to use this material. Spyware, for example, may record credit card information.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Probably shoulder surfing and spoofing might also come uder this category.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Ransomware:&lt;/strong&gt; Malware that encrypts a user's files and data and threatens to delete it until a ransom is paid.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Adware:&lt;/strong&gt; Advertising tech that has the potential to distribute malware in the victims local system or the server.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Botnets :&lt;/strong&gt; Malware-infected computer networks that cybercriminals use to execute activities online without the user's consent.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;SQL injection&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;SQL (structured language query) injection is a method of cyber-attack used to gain access to and steal data from a database. Cybercriminals take advantage of flaws in data-driven applications to inject malicious code into a database with a malicious SQL comment. This grants them access to the database's classified details.&lt;/p&gt;

&lt;p&gt;this attack is a fact that we still know how the computer or the server behaves.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Phishing&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Phishing occurs as cybercriminals send emails that claim to be from a reputable organisation and request personal information from victims. Phishing attacks are often used to trick users into providing credit card information and other sensitive information.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Man-in-the-middle attack&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A man-in-the-middle attack is a type of cyber threat in which a cybercriminal intercepts contact between two people in order to steal information. On an insecure WiFi network, for example, an attacker might intercept data passing between the victim's computer and the network.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Denial-of-service attack&lt;/strong&gt;&lt;br&gt;
A denial-of-service attack occurs as cybercriminals overload networks and servers with traffic in order to block a computer system from serving legitimate requests. This makes the machine inoperable and prevents an entity from performing critical functions.&lt;br&gt;
and many &lt;strong&gt;more&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Domains of Cyber Security&lt;/strong&gt;&lt;br&gt;
Below are the domains of Cybersecurity as a subject.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Access Control Systems and Methodology&lt;/li&gt;
&lt;li&gt;Telecommunications and Network Security&lt;/li&gt;
&lt;li&gt;Business Continuity Planning and Disaster Recovery Planning&lt;/li&gt;
&lt;li&gt;Security Management Practices&lt;/li&gt;
&lt;li&gt;Security Architecture and Models&lt;/li&gt;
&lt;li&gt;Law, Investigation, and Ethics&lt;/li&gt;
&lt;li&gt;Application and Systems Development Security&lt;/li&gt;
&lt;li&gt;Cryptography&lt;/li&gt;
&lt;li&gt;Computer Operations Security&lt;/li&gt;
&lt;li&gt;Physical Security&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Access Control Systems and Methodology:&lt;/strong&gt;&lt;br&gt;
The primary goal of Cyber Security is to safeguard your files. But, first, we'll learn more about Data and the different access control schemes and methodologies.&lt;br&gt;
&lt;strong&gt;Six Dimensions of Data Quality Assessment :&lt;/strong&gt;&lt;br&gt;
A Data Quality(DQ) Dimension is a well-known concept that describes a data attribute that can be analysed or tested against predefined criteria in order to analyse data quality.&lt;br&gt;
&lt;strong&gt;The six core data quality dimensions are:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Consistency&lt;/li&gt;
&lt;li&gt;Completeness&lt;/li&gt;
&lt;li&gt;Correctness&lt;/li&gt;
&lt;li&gt;Accessibility&lt;/li&gt;
&lt;li&gt;Timeliness&lt;/li&gt;
&lt;li&gt;Accuracy&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;States of Data :&lt;/strong&gt;&lt;br&gt;
Understanding the various states of digital data will help you choose the various types of security measures and encryption methods to use on the data. In this section, we will look at three types of data states.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Data at rest/storage :&lt;/strong&gt;
&lt;strong&gt;Data at rest&lt;/strong&gt; refers to data that has been stored on a physical medium or backup medium, such as hard drives or even cell devices. What distinguishes data at rest is that it is unused and is not actually being exchanged or stored.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Data in motion/transmission:&lt;/strong&gt;
The second data process has begun. Data in motion is actually being sent over a network or is sitting in a computer's RAM waiting to be read, modified, or interpreted. Emails or data shared through FTP or SSH are examples.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Data in process :&lt;/strong&gt;
The third step of data is in use or in operation. This data state is not passively stored on a storage medium. This is the data that one or more programmes are processing. This is the information that is currently being created, modified, appended, or deleted.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The third step of data is in use or in operation. This data state is not passively stored on a storage medium. This is the data that one or more programmes are processing. This is the information that is currently being created, modified, appended, or deleted.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Confidentiality :&lt;/strong&gt;It guarantees that only approved parties have access to computer-related assets, also known as confidentiality or privacy.&lt;br&gt;
Measures taken to discourage classified information from meeting the wrong persons and to ensure that only designated individuals have access to it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Technique used is Encryption&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Encryption to ensure Confidentiality:&lt;/strong&gt;&lt;br&gt;
If we choose to word “HELLO,” we can use cryptography to substitute each alphabet of HELLO with its neighbour alphabet, such as H replacing I, E replacing F, and so on, rendering the word meaningless. Then we decrypt using the same method as on the other hand.&lt;br&gt;
&lt;strong&gt;Bitlocker&lt;/strong&gt; is a disk/drive-level encryption. We cannot apply &lt;strong&gt;BitLocker on file.&lt;/strong&gt;&lt;br&gt;
The NTFS file system is used for Windows. EFS (Encrypted File System)-File Level Encryption is accessible. Right-click on the file and choose Properties (Compress the contents in blue color).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Features of EFS:&lt;/strong&gt; There are two colors that show encryption and decryption.&lt;br&gt;
Policies are at the heart of the whole operation. To hold a data backup. When an employee resigns, the corporation reformats the scheme, erasing the BitLocker keys and other data.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Types of Encryption&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;There are two top-level types of encryption. Symmetric and Asymmetric&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Symmetric Encryption :&lt;/strong&gt;&lt;br&gt;
Encrypts and decrypts data with the same key.Consider using a desktop password manager. You enter your name, which is encrypted with your exclusive key. When it is time to recover the data, the same key is used, and the data is decrypted.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Asymmetric Encryption :&lt;/strong&gt;&lt;br&gt;
It employs a private key and a public key pair.&lt;br&gt;
A single key will encrypt but not decrypt its own decrypted data. The paired key is needed to decrypt.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;code&gt;Asymmetric encryption&lt;/code&gt; is used for topics like HTTPS Transport Layer Security (TLS) and data signing.&lt;/p&gt;

&lt;p&gt;Access Controls:&lt;br&gt;
Access controls authenticate and authorize individuals to access the information they are allowed to see and use&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Something you know — (you know passwords)&lt;/li&gt;
&lt;li&gt;Something you are — (biometric scan)&lt;/li&gt;
&lt;li&gt;Something you have — (ATM card)&lt;/li&gt;
&lt;li&gt;Something you do — (signature style)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Integrity of Data :&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Integrity :&lt;/strong&gt; This ensures the properties can only be changed by registered parties and in approved ways. Ensures the material is in a format that is true and valid for the purposes for which it was created. It entails ensuring the quality, precision, and trustworthiness of data over the entire life cycle.&lt;br&gt;
&lt;code&gt;Hash&lt;/code&gt; is the technique used.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hash:&lt;/strong&gt; Hash Calculator that accepts a file as input and applies an algorithm to it. The object of hashing is to demonstrate that the original file has not been altered.&lt;br&gt;
Let's look at a real-world example of hashing using the Microsoft File Checksum Integrity Verifier. You will have it from the internet.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Availability of Data :&lt;/strong&gt;&lt;br&gt;
It ensures the funds are available to approved parties at all times. High availability (99.9 percent) with a 0.1 percent error rate, and 99.999 uptime with a 0.0001 error rate when improved. It is carried out by techniques such as hardware repair, programme patching, and network optimization.&lt;br&gt;
A Denial of Service Attack is a classic example of a malicious actor's lack of availability (DOS).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;SLA :&lt;/strong&gt; The Service Level Agreement is a legally binding contract. It is a contract between a service provider and a customer. Specific facets of service — such as consistency, affordability, and obligations — are settled upon between the service provider and the service consumer. If a service recipient should not accept files in a timely manner, the service provider is fined.&lt;/p&gt;

&lt;p&gt;Before discussing the types of DOS attacks, let’s have a look at &lt;strong&gt;Ping Command.&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Ping is a computer network management software utility that is used to measure a host's reachability on an Internet Protocol network. A quick way to see if a computer can connect with another computer or network system over the network.(available both in Windows anf Linux)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;ping 127.0.0.1&lt;/code&gt; (127.0.0.1 is a loopback address)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;ping &amp;lt;any ip&amp;gt;&lt;/code&gt; is for any domain to be tested.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Types of DOS Attacks:&lt;/strong&gt;&lt;br&gt;
Will discuss a few of the DOS Attacks&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Ping of Death&lt;/li&gt;
&lt;li&gt;Ping of Flood&lt;/li&gt;
&lt;li&gt;Smurf Attack&lt;/li&gt;
&lt;li&gt;Fraggle Attack&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Ping of Death:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A Ping of Death attack is a form of Denial of Service (DoS) attack in which the attacker sends a packet that is greater than the maximum allowed capacity, forcing the target computer to freeze or crash.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ping of Flood:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Ping flood, also known as ICMP flood, is a popular Denial of Service (DoS) attack in which an attacker overwhelms a victim's device with ICMP echo requests, also known as pings. As an example, consider the Education Board's website.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Fraggle Attack :&lt;/strong&gt;&lt;br&gt;
A Fraggle attack is a form of DOS attack in which the attacker sends a large amount of spoofed UDP traffic to a network router's broadcast address.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;"Bugs and Viruses play a majour role in destoying the software thus some first found were."&lt;/p&gt;

&lt;p&gt;On September 9, 1947 CE, the world's first computer bug was discovered. On September 9, 1947, a team of computer scientists at Harvard University announced the world's first computer bug—a moth stuck in their computer.&lt;/p&gt;

&lt;p&gt;The first computer virus, known as the "Creeper Virus," was discovered in 1971. The virus was finally removed by a machine known as "The Reaper," although it is important to remember that the Reaper was also a virus.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;TeleCommunications and Network Security:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The focus is on messaging, protocols, and network facilities, as well as the possible flaws involved with each. It refers to the procedures and policies put in place to deter and track unauthorised access and abuse of a computer network and its infrastructure.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Protocols:&lt;/strong&gt;&lt;br&gt;
Network Protocols are a series of rules that regulate the exchanging of information in a simple, dependable, and protected manner. There are three kinds of network protocols, as mentioned below:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;TCP/IP&lt;/li&gt;
&lt;li&gt;OSI Model&lt;/li&gt;
&lt;li&gt;CISCO Hierarchical Model&lt;/li&gt;
&lt;li&gt;TCP/IP VS OSI Model&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The two most popular network protocols are TCP/IP and the OSI model. The primary distinction between them TCP/IP is a functional model used for forming a stable link and communicating over a network, while OSI is a logical model.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hierarchical Model of Cisco:&lt;/strong&gt;&lt;br&gt;
Cisco has developed a three-layered hierarchical architecture for creating a dependable infrastructure. Each of the layers has its own functionality and features, which aids in the reduction of network complexity.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Access Layer :&lt;/strong&gt; 
Control network resource access for users and workgroups. Layer 2 switches are usually used in this layer.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Distribution Layer :&lt;/strong&gt; 
It acts as a bridge between the entry layer and the main layer. This layer is usually made up of multilayer switches.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Core Layer :&lt;/strong&gt; 
This layer, also known as the Backbone layer, is in charge of easily moving large volumes of traffic.
&lt;code&gt;Planning for the Unexpected:&lt;/code&gt;
&lt;strong&gt;Contingency Planning :&lt;/strong&gt;
&lt;strong&gt;IR(Incident Response)-&lt;/strong&gt;There are several tears, so the first move is to identify, contain, investigate (forensics), execute the remedy, and register (document)
&lt;strong&gt;DR(Disaster Recovery) :&lt;/strong&gt; Floods and earthquakes are examples of high-level problems that cause significant damage.
&lt;strong&gt;BCP(Business Continuity Planning) :&lt;/strong&gt; When all is lost in a storm, how will the company continue? Laws, Investigations, and Ethics.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Law, Investigation, and Ethics is one of the most intriguing defence realms. As the name suggests, this security domain addresses the legal aspects of information security.Cryptography is a form of encryption.&lt;/p&gt;

&lt;p&gt;Cryptography, or data coding, is one of the most commonly used authentication methods today. The Cryptography security domain is intended to teach you how and when to use encryption.&lt;br&gt;
&lt;strong&gt;What’s next?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;This article was written to provide you with a short overview and how-to guide for Cyber Security Fundamentals. Feel free to play around with it ethically.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Latest cyber threats&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;What are the most recent cyber attacks that people and companies must be aware of? Here are some of the most recent cyber attacks identified by the governments of the United Kingdom, the United States, and Australia.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hijack of Telegram&lt;/strong&gt;&lt;br&gt;
Telegram has a critical flaw that allows hackers to spread cryptojacking malware.&lt;br&gt;
Hackers gained access to Telegram's email details and messenger of some of the top cryptocurrency companies. The hackers, according to rumours at the time, used Signaling System 7 (SS7), which is used to link mobile networks all over the world.&lt;/p&gt;

&lt;p&gt;According to cybersecurity analysts, the hackers were searching for two-factor authentication (2FA) login information from the server.&lt;/p&gt;

&lt;p&gt;They took over the network's short message services centre (SMSC) and used it to send calls for location alerts to over 20 high-profile victims.&lt;/p&gt;

&lt;p&gt;The attackers carried out the assault in order to obtain cryptocurrencies. It is a frequent attack in the crypto space, but victims are still unsure how to defend their networks from such attacks.&lt;/p&gt;

&lt;p&gt;However, with blockchain technologies at work, it appears that the crypto world has superior authentication mechanisms than using call or SMS-based 2FA.&lt;/p&gt;

&lt;p&gt;Cybersecurity researchers believe that protocols such as SS7 can not be used by telecom experts because they lack the necessary security standards to guard against advanced attacks in the modern era.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Dridex malware&lt;/strong&gt;&lt;br&gt;
The US Department of Justice (DoJ) indicted the leader of an organised cyber-criminal organisation in December 2019 for their role in a multinational Dridex ransomware attack. This malicious campaign had a global impact on the public, economy, infrastructure, and industry.&lt;/p&gt;

&lt;p&gt;Dridex is a financial trojan with many capabilities. It has been infecting machines via phishing emails or existing malware since 2014. It has incurred huge financial damages amounting to hundreds of millions of dollars by stealing passwords, banking records, and personal data that can be used in illegal transactions.&lt;/p&gt;

&lt;p&gt;In reaction to the Dridex threats, the United Kingdom's National Cyber Security Centre urges the public to "ensure that computers are patched, anti-virus software is turned on and up to date, and files are backed up."&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Romance scams&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;In February 2020, the FBI sent a warning to U.S. people about trust theft perpetrated by cybercriminals using dating forums, chat rooms, and applications. Perpetrators prey on individuals looking for new relationships, duping victims into disclosing sensitive information.&lt;/p&gt;

&lt;p&gt;According to the FBI, romance cyber attacks targeted 114 victims in New Mexico in 2019, resulting in $1.6 million in financial losses.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Emotet malware&lt;/strong&gt;&lt;br&gt;
The Australian Cyber Security Centre sent an alert to national entities in late 2019 about a pervasive global cyber threat posed by Emotet malware.&lt;/p&gt;

&lt;p&gt;Emotet is a complex trojan that has the ability to harvest data as well as load other malware. Emotet thrives on simple passwords, serving as a reminder of the value of having a safe password to protect against cyber attacks.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sopra Steria Attack&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;On October 20, Sopra Steria, a French IT service provider, was targeted by a ransomware attack by a new version of the Ryuk ransomware, which was previously unknown to cybersecurity providers.&lt;/p&gt;

&lt;p&gt;Sopra Steria stated after the attack that the attack infected a portion of its IT architecture. According to the firm, the data breach caused no harm or leakage of consumer data.&lt;/p&gt;

&lt;p&gt;When it comes to ransomware threats, Ryuk is one of the most potent in this day and era. The ransomware has infiltrated high-profile companies such as Prosegur, a Spanish logistics firm, and EWA, a US defence contractor.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;End-user protection&lt;/strong&gt;&lt;br&gt;
End-user safety, also known as endpoint defence, is a critical component of cyber security. After all, it is frequently a person (the end-user) that unintentionally downloads ransomware or some kind of cyber threat to their desktop, laptop, or mobile device.&lt;/p&gt;

&lt;p&gt;But, how can cyber-security safeguards safeguard end users and systems? To begin, cryptographic protocols are used to encrypt emails, directories, and other sensitive data in cyber-security. This not only safeguards information in transit, but also prevents it from destruction or fraud.&lt;/p&gt;

&lt;p&gt;Furthermore, end-user protection programme checks machines for malicious malware, quarantines it, and then deletes it from the system. Security programmes can also identify and delete malicious code concealed in the Master Boot Record (MBR) and are programmed to encrypt or erase data from the hard drive of a device.&lt;/p&gt;

&lt;p&gt;Real-time intrusion prevention is also a subject of electronic security protocols. Many people use heuristic and behavioural analysis to track a program's and its code's actions in order to protect against viruses or Trojans that change form with each execution (polymorphic and metamorphic malware).Security programmes can isolate potentially malicious programmes in a virtual bubble isolated from the user's network in order to observe their actions and learn how to spot new pathogens more effectively.&lt;/p&gt;

&lt;p&gt;As cyber-security experts discover emerging risks and ways to fight them, security programmes begin to develop new protections. Employees must be trained about how to use end-user security tools in order to get the best out of it. Importantly, keeping it going and upgrading it on a regular basis means that it will protect consumers from the most recent cyber attacks.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Cyber safety tips -&lt;/strong&gt; safeguard yourself from cyber-attacks&lt;br&gt;
How will companies and individuals protect themselves from cyber threats? Here are our top cyber safety tips:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Update your software and operating system, you benefit from the latest security patches updates from the company that has given the software, One of the safest ways to defend your devices from any hacking attempt is to keep your system informed on a daily basis. The majority of attacks occur as hackers discover a security flaw or loophole that they can manipulate. However, with routine patches, those bugs will be eliminated. It is best to run programme upgrades for your device as soon as they become usable.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Use anti-virus software, security solutions like Kaspersky Total Security will detect and removes threats. Keep your software updated for the best level of protection.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Use strong passwords, ensure your passwords are not easily guessable and make sure that you regularly change the software every fiscal time(change every 90 days recommended).&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Do not open email attachments from unknown senders: These could be infected with malware, or just can be a phishing mail to gather all your information. Do not click on links in emails from unknown senders or unfamiliar website,&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Avoid using unsecure Wi-Fi networks in public places like hotels and malls etc,Unsecure networks leave you vulnerable to man-in-the-middle attacks.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;If your archives or records are corrupted and stolen, a previous backup of those files will assist in fully restoring them. It is important to backup the data and archive it in a reliable cloud storage service or on an external hard drive. As a result, if a file is lost due to a hacking event or system corruption, you will copy those data again.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The methods mentioned above are some of the most powerful ways to defend your device from malware intrusion or attack.&lt;/p&gt;

&lt;p&gt;happy learning folks thank you.&lt;/p&gt;

</description>
      <category>cybersecurity</category>
      <category>codenewbie</category>
      <category>computerscience</category>
    </item>
    <item>
      <title>Reason to learn docker as a web developer</title>
      <dc:creator>vishwasnarayanre</dc:creator>
      <pubDate>Mon, 10 May 2021 20:30:30 +0000</pubDate>
      <link>https://dev.to/vishwasnarayan5/reason-to-learn-docker-as-a-web-developer-3960</link>
      <guid>https://dev.to/vishwasnarayan5/reason-to-learn-docker-as-a-web-developer-3960</guid>
      <description>&lt;p&gt;Reason to learn docker as a web developer&lt;/p&gt;

&lt;h1&gt;
  
  
  Portability
&lt;/h1&gt;

&lt;p&gt;You can create a docker image with the files and the configurations, share it in the docker hub and then share it so that you have the same infrastructure is the same.&lt;/p&gt;

&lt;p&gt;Even in terms of the developer environment for the local testing and also in deploying it on the different cloud platform.&lt;/p&gt;

&lt;h1&gt;
  
  
  Reusability
&lt;/h1&gt;

&lt;p&gt;Similar to being portable they can be configured for the future projects. You can have a very general Virtual Host for the deployment of the websites you can set certain flags and switches for the deployment.&lt;/p&gt;

&lt;h1&gt;
  
  
  Better understanding of the infrastructure
&lt;/h1&gt;

&lt;p&gt;MERN stack, WAMP stack and a lot of the other Infrastructure for the projects in windows will be un understood as we have an GUI as way to communicate with the system but while developing the Dockerfile you can learn a lot about the file system of the stack basically you can use ubuntu for the development locally and testing it locally but you can get the actual knowledge about the software/technology file system through docker only.&lt;/p&gt;

&lt;h1&gt;
  
  
  Backups
&lt;/h1&gt;

&lt;p&gt;In docker we can have different mount points in the container and endpoints can be defined in the Dockerfile,which is certain file system entry points where the files live in the host system and also in the volumized containers. (you will learn these exclusively in the docker compose).&lt;/p&gt;

&lt;p&gt;you can copy and detach those mount points and put them from one container to another container.&lt;/p&gt;

&lt;p&gt;You can copy a file to the &lt;code&gt;WORKDIR&lt;/code&gt; mentioned by the user and then use it as a mount point and then detach and use it as folder in the other container.&lt;/p&gt;

&lt;p&gt;docker volumes comes after the docker compose thus make sure that you are following me for the updates.&lt;/p&gt;

&lt;p&gt;and obviously for&lt;/p&gt;

&lt;h1&gt;
  
  
  Isolation
&lt;/h1&gt;

&lt;p&gt;Isolation in web development is very important for example shared hosting, a lot of the projects have a shared hosting sometimes a project might require a different version of the software dependency, with the docker image you are isolated to that container that you are using thus you can change the image as required by you and you can deploy it later.(lets say JDK version ,alpine version and so on).&lt;/p&gt;

&lt;p&gt;Thank you all.&lt;/p&gt;

</description>
      <category>docker</category>
      <category>webdev</category>
      <category>webperf</category>
      <category>devops</category>
    </item>
    <item>
      <title>docker and java</title>
      <dc:creator>vishwasnarayanre</dc:creator>
      <pubDate>Mon, 10 May 2021 19:06:13 +0000</pubDate>
      <link>https://dev.to/vishwasnarayan5/docker-and-java-2992</link>
      <guid>https://dev.to/vishwasnarayan5/docker-and-java-2992</guid>
      <description>&lt;p&gt;First thing you need is a java -JRE,JDK installed on to your system with the docker installed with all the additional kernels like Hyper-V or the WSL2 installed on to the system.&lt;/p&gt;

&lt;p&gt;First let's start by writing java programing language code.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight java"&gt;&lt;code&gt;&lt;span class="kd"&gt;class&lt;/span&gt; &lt;span class="nc"&gt;HelloWorld&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
    &lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kd"&gt;static&lt;/span&gt; &lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;main&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nc"&gt;String&lt;/span&gt;&lt;span class="o"&gt;[]&lt;/span&gt; &lt;span class="n"&gt;args&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
        &lt;span class="nc"&gt;System&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;out&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Hello docker world!"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt; 
    &lt;span class="o"&gt;}&lt;/span&gt;
&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;To test that whether your program is working proper run and execute the program save the program as firstprogram.java&lt;/p&gt;

&lt;p&gt;and use the command &lt;code&gt;javac firstprogram.java&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;then you will find the output&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F602k6hi5uzsh4ksr9vgj.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F602k6hi5uzsh4ksr9vgj.PNG" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;So now in order to run the program through the docker container we need to have the JDK installed on to the Docker image thus we can go to the docker hub and get the current version of the JDK on to your Docker image.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://hub.docker.com/_/openjdk/" rel="noopener noreferrer"&gt;https://hub.docker.com/_/openjdk/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is the link that I have listed above.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2mtqfjlfi18jxe97ppob.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2mtqfjlfi18jxe97ppob.gif" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;you can also go to the github repository and also see the offical images that you might be able to use.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/docker-library" rel="noopener noreferrer"&gt;https://github.com/docker-library&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now lets start creating the docker file&lt;/p&gt;

&lt;p&gt;Open Dockerfile and start the code&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;&lt;span class="c"&gt;#alpine will be the base os or the webserver that we will be working on&lt;/span&gt;
&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="s"&gt; alpine will be working on&lt;/span&gt;
&lt;span class="k"&gt;WORKDIR&lt;/span&gt;&lt;span class="s"&gt; /root/program1&lt;/span&gt;
&lt;span class="k"&gt;COPY&lt;/span&gt;&lt;span class="s"&gt; firstprogram.java /root/program1&lt;/span&gt;

&lt;span class="c"&gt;#Install JDK&lt;/span&gt;
&lt;span class="c"&gt;#to add the openjdk8 for the environment&lt;/span&gt;
&lt;span class="k"&gt;RUN &lt;/span&gt;apk add openjdk8 
&lt;span class="k"&gt;ENV&lt;/span&gt;&lt;span class="s"&gt; JAVA_HOME /usr/lib/jvm/java-1.9-openjdk&lt;/span&gt;
&lt;span class="k"&gt;ENV&lt;/span&gt;&lt;span class="s"&gt; PATH $PATH:$JAVA_HOME/bin&lt;/span&gt;

&lt;span class="c"&gt;#for running the java porogram&lt;/span&gt;
&lt;span class="k"&gt;RUN &lt;/span&gt;javac firstprogram.java

&lt;span class="k"&gt;ENTRYPOINT&lt;/span&gt;&lt;span class="s"&gt; java firstprogram&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;then you can build by using the following command&lt;/p&gt;

&lt;p&gt;&lt;code&gt;docker run -t javafirstprogram .&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;then you can run the program by typing in the command &lt;/p&gt;

&lt;p&gt;&lt;code&gt;docker run javafirstprogram&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;then you will find the same output.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9l81qn3vjzxcr0qbc5gp.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9l81qn3vjzxcr0qbc5gp.PNG" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Thus, you have learnt to get the java program up and running.&lt;/p&gt;

&lt;p&gt;Thank you&lt;/p&gt;

</description>
      <category>java</category>
      <category>docker</category>
      <category>microservices</category>
      <category>serverless</category>
    </item>
    <item>
      <title>Learn python the effective way from anywhere</title>
      <dc:creator>vishwasnarayanre</dc:creator>
      <pubDate>Sun, 09 May 2021 09:32:34 +0000</pubDate>
      <link>https://dev.to/vishwasnarayan5/learn-python-the-effective-way-from-anywhere-24pi</link>
      <guid>https://dev.to/vishwasnarayan5/learn-python-the-effective-way-from-anywhere-24pi</guid>
      <description>&lt;p&gt;Learn how to use Python professionally, like Python 2 and Python 3!&lt;br&gt;
Python can be used to create games such as Tic Tac Toe and Blackjack!(for the basics)/take some &lt;br&gt;
Discover advanced Python features such as the collections module and working(even make a chance and a move to learn some more about the other frameworks)&lt;/p&gt;

&lt;p&gt;Classes will teach you how to use Object Oriented Programming!&lt;br&gt;
Understand diverse subjects, such as decorators.&lt;/p&gt;

&lt;p&gt;Learn how to use Jupyter Notebook and how to create.py scripts.&lt;br&gt;
Learn how to build graphical user interfaces (GUIs) in the Jupyter Notebook framework!&lt;br&gt;
Develop a thorough understanding of Python from the ground up!&lt;/p&gt;

&lt;h1&gt;
  
  
  Why python?
&lt;/h1&gt;

&lt;p&gt;Python is a dynamically semantic object-oriented and high-level programming language.&lt;br&gt;
It has high-level data structures, dynamic typing, dynamic linking, and other functionality that make it useful for developing complex applications.&lt;br&gt;
Although Guido Van Rossum created Python in the late 1980s, its implementation began in December 1989.&lt;br&gt;
It is an open-source language that has achieved popularity.It is an open-source language that has recently gained attention due to its use in data science.&lt;/p&gt;

&lt;p&gt;It provides a plethora of well-equipped libraries and frameworks that allow developers to easily create concrete applications.&lt;/p&gt;

&lt;h1&gt;
  
  
  Why use python?
&lt;/h1&gt;

&lt;p&gt;Python is used to create desktop graphical user interface (GUI) programmes, blogs, and web applications.&lt;/p&gt;

&lt;p&gt;It frees up programmers' time to work on the application's core features by handling routine programming activities.&lt;/p&gt;

&lt;p&gt;It has been the most sought-after programming language for developers operating in the fields of Artificial Intelligence, Data Science, Machine Learning, Software Development, and Data Mining. It is also used as a scripting language for web applications.&lt;/p&gt;

&lt;p&gt;Python is used by many programmers for a variety of projects, like designing learning algorithms, constructing websites, refining data algorithms, and locating data analytics solutions.&lt;/p&gt;

&lt;p&gt;Needless to mention, if you are a developer, Python must be available to you.&lt;/p&gt;

&lt;h1&gt;
  
  
  Learn as a sole warrior
&lt;/h1&gt;

&lt;p&gt;Start learning alone,Understanding the fundamentals of Python would help you in the long run.&lt;br&gt;
It would be easier for you to grasp more complex ideas if you have a stronger understanding of the basics.&lt;br&gt;
If you've mastered the fundamentals of Python, you'll be able to confidently move on to learning data structures and algorithms. About the fact that Python is a high-level language that allows you to perform complicated functions, it is simple to learn and understand.&lt;br&gt;
It has a simple syntax and is therefore appropriate for both novice and advanced programmers.&lt;/p&gt;

&lt;p&gt;Python will seem difficult at first if you are a complete novice. All you have to remember is that everybody begins at the same moment.&lt;/p&gt;

&lt;h1&gt;
  
  
  You can do it if you are careful!.
&lt;/h1&gt;

&lt;p&gt;Since you have a clear grasp of the basics of Python, the next step is to PRACTICE!&lt;/p&gt;

&lt;p&gt;It is important to code every day in order to learn Python. It will ensure continuity and will assist you in becoming acquainted with Python.&lt;/p&gt;

&lt;p&gt;Learning Python is all about being able to solve a programming challenge with a computer as the solution.&lt;/p&gt;

&lt;p&gt;Training can introduce you to a variety of challenges and applications while still honing your problem-solving abilities.&lt;/p&gt;

&lt;p&gt;To learn Python programming, there are various online tools available, such as tutorials.&lt;/p&gt;

&lt;p&gt;For so many options online, it can be daunting for a novice to find a good tutorial.&lt;/p&gt;

&lt;p&gt;So, how are you going to choose the resource?&lt;/p&gt;

&lt;p&gt;So... Choose the one that piques your curiosity and is highly recommended by the programming community.&lt;/p&gt;

&lt;p&gt;You can also look at different books and projects that are available online, as well as participate in others.&lt;/p&gt;

&lt;p&gt;Contributing to open-source code is an excellent way to gain useful knowledge.&lt;/p&gt;

&lt;p&gt;The source code of software is made freely accessible through the open-source model, and everyone can contribute to it.&lt;/p&gt;

&lt;p&gt;It is also a perfect way to engage with people who have common interests and to teach new concepts to the programming world.&lt;/p&gt;

&lt;p&gt;Interacting and collaborating with others on a common forum would also allow you to learn new ideas from those involved.&lt;/p&gt;

&lt;p&gt;When you examine the source code, you will study how things work, draw your own conclusions, and experiment by analyzing the codes of others.&lt;/p&gt;

&lt;p&gt;also, my tip is to run the learning is try seeing some bugs which was reported in the repository that I have listed below.&lt;/p&gt;

&lt;p&gt;Also try doing a project and then the only key note is to practice a lot ,do a lot of practice for the development and tinker with the other frameworks by looking at their documentation.&lt;/p&gt;

</description>
      <category>python</category>
      <category>programming</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Tools you need for making your own Linux distribution.</title>
      <dc:creator>vishwasnarayanre</dc:creator>
      <pubDate>Sun, 09 May 2021 09:09:32 +0000</pubDate>
      <link>https://dev.to/vishwasnarayan5/tools-you-need-for-making-your-own-linux-distribution-23eg</link>
      <guid>https://dev.to/vishwasnarayan5/tools-you-need-for-making-your-own-linux-distribution-23eg</guid>
      <description>&lt;p&gt;You need have your own Linux Distibution then know these tools so that you can build your own Linux Distibution for your own purpose that you need example hacking,pentesting and so on.&lt;/p&gt;

&lt;p&gt;Thus, you can use these following tools.&lt;/p&gt;

&lt;h1&gt;
  
  
  Virtual Box
&lt;/h1&gt;

&lt;p&gt;You can install an Virtual box and then go and get the OS installed on to the virtual box as a OVA file and also change it and then publish as your own Custom OS which is one of the best technique that you can adopt to build your own distribution.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvv5lqrb043og3jogsea3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvv5lqrb043og3jogsea3.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Linux Respin:
&lt;/h1&gt;

&lt;p&gt;Linux Respin is an offshoot of the now-defunct Remastersys. Remastersys was once one of the most common tools for creating your own Linux distro and/or a backup of your operating system. Linux Respin does not deliver as much as Remastersys used to, but it still does a fine job if you choose a distro for which it is available, Linux Respin is only available for Debian, Mint, and Trisquel, which limits its appeal. What I don't like about this tool is that it has almost no documentation.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm9mcxskcz6ofk5l2ib76.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm9mcxskcz6ofk5l2ib76.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Linux Live Kit:
&lt;/h1&gt;

&lt;p&gt;The Linux Live Kit is a tool for creating your own distros and backing up your system. It prefers Debian, but it can run on other distributions as well, as long as they support the aufs and squashfs kernel modules. The Linux Live Kit has a very simple wizard for building a distro – just follow the steps and you're done.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdtl65l6g0j8e4znojgvt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdtl65l6g0j8e4znojgvt.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Linux from Scratch:
&lt;/h1&gt;

&lt;p&gt;Linux from Scratch is a project that teaches Linux from the ground up. LFS has extensive documentation and is an excellent resource for learning about Linux in general, not just how to create your own distro. Linux from Scratch allows you to create your own customized Linux system from scratch. LFS is not a tool like the others on this list, but it can be used for the same purpose – to create your own Linux distro (and to test it).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg6xta5jvn76wwb85z8oc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg6xta5jvn76wwb85z8oc.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Live Magic:
&lt;/h1&gt;

&lt;p&gt;Live Magic is yet another Debian tool for creating distributions. It can burn CDs, USB drives, and netboot images. It is much easier to use than some of the other apps on this list, such as Remastersys, but it does not build the image using your running system. Instead, use a wizard to guide you through the process of configuring your system. The programme will download the packages from your repositories and install them in your system.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo57q260a7eqsz8qtrf1x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fo57q260a7eqsz8qtrf1x.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Revisor:
&lt;/h1&gt;

&lt;p&gt;Revisor supports the creation of Installation Media for permanent installation of the distribution on a computer, live media for booting and using the distribution without making permanent changes to the computer, virtualization media for use in virtual guests in Xen or KVM, and utility media for data recovery or dealing with problems in the operating system.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0znd8fqds78rh9lpd9ou.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0znd8fqds78rh9lpd9ou.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Customizer:
&lt;/h1&gt;

&lt;p&gt;Customizer is no longer in active development, but that is because its developer considers it stable. It is yet another tool for remixing Ubuntu, but it also supports its various flavours, such as Xubuntu and Kubuntu.&lt;/p&gt;

&lt;p&gt;The host system under which you are using it, however, must have the same release number and architecture as the guest system you are remixing.&lt;/p&gt;

&lt;p&gt;These tools for making your own custom Linux distribution should be useful. Their level of complexity (and power) varies, but we've tried to include both simple apps and apps with more power. See our guides on how to repair a corrupted USB drive in Linux and how to instal for more Linux tips. Arch Linux uses deb packages.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsbxuh9hsnq5ge4rkuz5x.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsbxuh9hsnq5ge4rkuz5x.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Ubuntu Imager:
&lt;/h1&gt;

&lt;p&gt;Ubuntu Imager is a useful tool for creating your own Ubuntu-based distribution. It's not the only such app for Ubuntu, but because it's a good one, I've included it on this list. I'm not going to go over it in detail because we already have a very detailed how-to with installation and operation instructions.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwv9uvjk1cs9hgoe3ut0c.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwv9uvjk1cs9hgoe3ut0c.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Thus these are the list of the tools that we can use for making your own Linux image ,do just try making them by using these software's if you have any doubts do connect with me through my twitter thus we can work on the queries on using these tools and building os.&lt;/p&gt;

</description>
      <category>linux</category>
      <category>cybersecurity</category>
      <category>computerscience</category>
      <category>opensource</category>
    </item>
    <item>
      <title>nodejs and docker </title>
      <dc:creator>vishwasnarayanre</dc:creator>
      <pubDate>Sun, 09 May 2021 07:48:35 +0000</pubDate>
      <link>https://dev.to/vishwasnarayan5/nodejs-and-docker-41pa</link>
      <guid>https://dev.to/vishwasnarayan5/nodejs-and-docker-41pa</guid>
      <description>&lt;p&gt;If you've ever created something that needs to 'live' somewhere other than your local machine, you know that getting an application up and running on a different machine is no easy task.There are numerous considerations to be made, ranging from the fundamentals of "how do I get my environment variables set" to which runtimes you'll require and which dependencies those will require, not to mention the need to automate the process. It is simply no longer feasible for software teams to rely on a manual deployment process.A number of technologies have attempted to address the issue of varying environments, automation, and deployment configuration, but Docker is the most well-known and perhaps most notable attempt in recent years.&lt;/p&gt;

&lt;p&gt;A variety of innovations have attempted to solve the problem of differing environments, automation, and deployment setup, but Docker is the most well-known and perhaps most notable recent attempt.&lt;/p&gt;

&lt;p&gt;System implementation in a Rapid scale&lt;br&gt;
Cross-machine portability and reliablity&lt;br&gt;
Part reuse and version control&lt;br&gt;
Docker Images and Dockerfiles can be shared.&lt;br&gt;
Minimal overhead with a small footprint&lt;br&gt;
Maintenance is made easier.&lt;/p&gt;

&lt;p&gt;In 2009, Node.js was first published. Big companies like Paypal, Netflix, eBay, and LinkedIn, to name a few, have used it for high-traffic web applications. It has undoubtedly been put to the test over the last ten years and has proved its worth. It also fits well with a large team, such as Spotify. At Spotify, it was used by 90 teams and 600 developers.With high scalability in mind, using Docker and Kubernetes to scale the framework horizontally becomes even simpler. High scalability is achieved by combining Docker and Node.js.&lt;/p&gt;

&lt;p&gt;You have some experience with Node.js (express js or any other framework)&lt;br&gt;
You've worked with Docker before (local development, production environments preferred)&lt;br&gt;
I'm using Docker version 20.10.6, and docker-compose version 1.29.1, and I'm hoping you're using similar models.&lt;/p&gt;

&lt;p&gt;The goal of this article is to tell you how to get a Node.js application into a Docker container. The article aims for development, and not for a production deployment.&lt;/p&gt;

&lt;p&gt;Let's Create a simple website: Write this as the &lt;code&gt;app.js&lt;/code&gt; in your editor.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;express&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;express&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="c1"&gt;// Constants&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;PORT&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;8080&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;HOST&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;0.0.0.0&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="c1"&gt;// App&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;app&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;express&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;/&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;req&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;res&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;res&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;send&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Hello from Docker!&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;

&lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;listen&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;PORT&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;HOST&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;`Running on http://&lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;HOST&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;:&lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;PORT&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;`&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;So now when you have app.js write the &lt;code&gt;package.json&lt;/code&gt; file that describes your app dependencies that has all the things that was defined for the project that we have built.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"docker_web_app"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"version"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"1.0.0"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"description"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Node.js on Docker"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"author"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"First Last &amp;lt;first.last@example.com&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"main"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"app.js"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"scripts"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"start"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"node server.js"&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"dependencies"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"express"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"^4.16.1"&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Run npm instal with your new &lt;code&gt;package.json&lt;/code&gt; file. If you're using &lt;code&gt;npm version 11 or later&lt;/code&gt;, a &lt;code&gt;package-lock.json&lt;/code&gt; file will be created and copied to your &lt;code&gt;Docker image&lt;/code&gt;.&lt;/p&gt;

&lt;h1&gt;
  
  
  Creatign the Docker File
&lt;/h1&gt;

&lt;h3&gt;
  
  
  the most important step
&lt;/h3&gt;

&lt;p&gt;In your favourite text editor, open the Dockerfile.&lt;/p&gt;

&lt;p&gt;The first step is to determine what picture we want to build from. We'll use the most recent LTS (long-term support) 14 or any version avaialble in docke of node avaialbe during that time, which can be found on the Docker Hub:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="s"&gt; node:&amp;lt;version avaialble in docker&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;but you can also use the version 14 of the node&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="s"&gt; node:14&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then, we'll make a directory within the picture to contain the programme code; this will be the application's working directory:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;&lt;span class="c"&gt;# Create app directory&lt;/span&gt;
&lt;span class="k"&gt;WORKDIR&lt;/span&gt;&lt;span class="s"&gt; /usr/src/app&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Since this docker image already has &lt;code&gt;Node.js&lt;/code&gt; and &lt;code&gt;NPM enabled&lt;/code&gt;, the next step is to use the npm binary to instal the app's dependencies.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;&lt;span class="c"&gt;# Install app dependencies&lt;/span&gt;
&lt;span class="c"&gt;# A wildcard is used to ensure both package.json AND package-lock.json are copied&lt;/span&gt;
&lt;span class="c"&gt;# where available (npm@5+)&lt;/span&gt;
&lt;span class="k"&gt;COPY&lt;/span&gt;&lt;span class="s"&gt; package*.json ./&lt;/span&gt;

&lt;span class="k"&gt;RUN &lt;/span&gt;npm &lt;span class="nb"&gt;install&lt;/span&gt;
&lt;span class="c"&gt;# If you are building your code for production&lt;/span&gt;
&lt;span class="c"&gt;# RUN npm ci --only=production&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It's worth noting that we're just copying the &lt;code&gt;package.json&lt;/code&gt; format, rather than the whole working directory. This enables us to use Docker layers that have been cached. Here's a good explanation from &lt;code&gt;bitJudo&lt;/code&gt;. In addition, the &lt;code&gt;npm ci&lt;/code&gt; order, which is mentioned in the comments, aids in providing quicker, more stable, and repeatable builds for production environments. More information on this can be found here.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;To include your app's source code in the Docker image, follow these steps.&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;&lt;span class="c"&gt;# Bundle app source&lt;/span&gt;
&lt;span class="k"&gt;COPY&lt;/span&gt;&lt;span class="s"&gt; . .&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Since your software is bound to port 8080, you'll use the EXPOSE instruction to make the docker daemon map it:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;&lt;span class="c"&gt;#we expose the 8080 port from the localhost system&lt;/span&gt;
&lt;span class="k"&gt;EXPOSE&lt;/span&gt;&lt;span class="s"&gt; 8080&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;We use CMD to describe the command that will be used to run your programme. To launch your server, we'll use node server.js:&lt;/p&gt;

&lt;p&gt;_&lt;em&gt;Remember : _&lt;/em&gt; We need to learn that CMD command can only be used once if even you try to use it many times the Docker will command to execute the one that is listed in the end/last of the Docker file.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;&lt;span class="k"&gt;CMD&lt;/span&gt;&lt;span class="s"&gt; [ "node", "server.js" ]&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The entire docker file is given here.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight docker"&gt;&lt;code&gt;&lt;span class="k"&gt;FROM&lt;/span&gt;&lt;span class="s"&gt; node:14&lt;/span&gt;

&lt;span class="c"&gt;# Create app directory&lt;/span&gt;
&lt;span class="k"&gt;WORKDIR&lt;/span&gt;&lt;span class="s"&gt; /usr/src/app&lt;/span&gt;

&lt;span class="c"&gt;# Install app dependencies&lt;/span&gt;
&lt;span class="c"&gt;# A wildcard is used to ensure both package.json AND package-lock.json are copied&lt;/span&gt;
&lt;span class="c"&gt;# where available (npm@5+)&lt;/span&gt;
&lt;span class="k"&gt;COPY&lt;/span&gt;&lt;span class="s"&gt; package*.json ./&lt;/span&gt;

&lt;span class="k"&gt;RUN &lt;/span&gt;npm &lt;span class="nb"&gt;install&lt;/span&gt;
&lt;span class="c"&gt;# If you are building your code for production&lt;/span&gt;
&lt;span class="c"&gt;# RUN npm ci --only=production&lt;/span&gt;

&lt;span class="c"&gt;# Bundle app source&lt;/span&gt;
&lt;span class="k"&gt;COPY&lt;/span&gt;&lt;span class="s"&gt; . .&lt;/span&gt;

&lt;span class="k"&gt;EXPOSE&lt;/span&gt;&lt;span class="s"&gt; 8080&lt;/span&gt;
&lt;span class="k"&gt;CMD&lt;/span&gt;&lt;span class="s"&gt; [ "node", "server.js" ]&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Thus you are ready to build it thus use the command&lt;/p&gt;

&lt;p&gt;&lt;code&gt;docker run -t [name]:tag&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;you will have the docker image and you can still run it with the &lt;code&gt;docker run command&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;docker tag [source] &amp;lt;your username&amp;gt;/node-web-app&lt;/code&gt;&lt;br&gt;
its better that you tag it with the above format.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;docker run -p 4000:8080 -d &amp;lt;your repo username&amp;gt;/node-web-app&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;When you run your picture with the &lt;code&gt;-d&lt;/code&gt; option, the container is removed and runs in the background. The &lt;code&gt;-p&lt;/code&gt; flag redirects a public port inside the container to a private port(that you want to run the application. Run the picture you created previously:&lt;/p&gt;

&lt;p&gt;geting the information for the application.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;docker logs &amp;lt;container id&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;The output:&lt;/em&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Example
&lt;/h1&gt;

&lt;p&gt;Running on &lt;a href="http://localhost:8080" rel="noopener noreferrer"&gt;http://localhost:8080&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;and now when you type &lt;code&gt;docker ps&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;you will find the container running thus you can use the curl in linux and also in windows and type&lt;/p&gt;

&lt;p&gt;&lt;code&gt;curl -i localhost:4000&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;then the output is as given below.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftjqxlbz97j7fsvi4wq1u.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftjqxlbz97j7fsvi4wq1u.PNG" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Thank you.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>node</category>
      <category>docker</category>
      <category>serverless</category>
    </item>
  </channel>
</rss>
