The book discusses web application security.

പുസ്തകം വെബ് ആപ്ലിക്കേഷൻ സുരക്ഷയെക്കുറിച്ച് ചർച്ച ചെയ്യുന്നു.


ആധുനിക വെബ് ആപ്ലിക്കേഷനുകൾ സങ്കീർണ്ണമാണ്.


Security is a crucial aspect of web development.

വെബ് ഡെവലപ്‌മെൻ്റിലെ ഒരു പ്രധാന ഘടകമാണ് സുരക്ഷ.


The author explains various hacking techniques.

രചയിതാവ് വിവിധ ഹാക്കിംഗ് രീതികൾ വിശദീകരിക്കുന്നു.


Understanding vulnerabilities is key to defense.

ദൗർബല്യങ്ങൾ മനസ്സിലാക്കുന്നത് പ്രതിരോധത്തിന് അത്യാവശ്യമാണ്.


The book covers topics like XSS and CSRF attacks.

എക്സ്എസ്എസ്, സിഎസ്ആർഎഫ് ആക്രമണങ്ങൾ പോലുള്ള വിഷയങ്ങൾ പുസ്തകത്തിൽ ഉൾപ്പെടുന്നു.


Code reviews are essential for security.

സുരക്ഷയ്ക്ക് കോഡ് അവലോകനങ്ങൾ അത്യാവശ്യമാണ്.


The book provides countermeasures against attacks.

ആക്രമണങ്ങൾക്കെതിരെ പ്രതിരോധ മാർഗ്ഗങ്ങൾ പുസ്തകം നൽകുന്നു.


Web application reconnaissance is the first step.

വെബ് ആപ്ലിക്കേഷൻ രഹസ്യാന്വേഷണം ആദ്യത്തെ ഘട്ടമാണ്.


The book discusses secure coding practices.

സുരക്ഷിതമായ കോഡിംഗ് രീതികളെക്കുറിച്ച് പുസ്തകത്തിൽ പറയുന്നു.


Modern applications use APIs extensively.

ആധുനിക ആപ്ലിക്കേഷനുകൾ API-കൾ വ്യാപകമായി ഉപയോഗിക്കുന്നു.


The book explores the history of software security.

സോഫ്റ്റ്‌വെയർ സുരക്ഷയുടെ ചരിത്രത്തെക്കുറിച്ച് പുസ്തകം പറയുന്നു.


Defending against injection attacks is critical.

ഇഞ്ചക്ഷൻ ആക്രമണങ്ങളിൽ നിന്ന് പ്രതിരോധിക്കുന്നത് നിർണായകമാണ്.


The author emphasizes the importance of secure architecture.

സുരക്ഷിതമായ ആർക്കിടെക്ചറിൻ്റെ പ്രാധാന്യം രചയിതാവ് ഊന്നിപ്പറയുന്നു.


Understanding the hacker's mindset is crucial for defense.

പ്രതിരോധത്തിനായി ഹാക്കറുടെ ചിന്താഗതി മനസ്സിലാക്കേണ്ടത് അത്യാവശ്യമാണ്.


The book provides detailed guidance on vulnerability management.

ദൗർബല്യങ്ങൾ കൈകാര്യം ചെയ്യുന്നതിനെക്കുറിച്ച് പുസ്തകത്തിൽ വിശദമായ മാർഗ്ഗനിർദ്ദേശങ്ങൾ നൽകുന്നു.


Securing third-party dependencies is a complex task.

മൂന്നാം കക്ഷി ആശ്രയത്വങ്ങൾ സുരക്ഷിതമാക്കുക എന്നത് ഒരു സങ്കീർണ്ണമായ കാര്യമാണ്.


The book offers insights into defending against DoS attacks.

DoS ആക്രമണങ്ങളിൽ നിന്ന് എങ്ങനെ പ്രതിരോധിക്കാമെന്ന് പുസ്തകം ഉൾക്കാഴ്ച നൽകുന്നു.


The evolution of web application security is a continuous process.

വെബ് ആപ്ലിക്കേഷൻ സുരക്ഷയുടെ പരിണാമം തുടർച്ചയായ ഒരു പ്രക്രിയയാണ്.


The book aims to equip readers with the knowledge to build secure web applications.

സുരക്ഷിതമായ വെബ് ആപ്ലിക്കേഷനുകൾ നിർമ്മിക്കുന്നതിനുള്ള അറിവ് നൽകാൻ പുസ്തകം ലക്ഷ്യമിടുന്നു.


This book is designed for those with intermediate software engineering skills.

ഇടത്തരം സോഫ്റ്റ്‌വെയർ എഞ്ചിനീയറിംഗ് കഴിവുകളുള്ളവർക്കായാണ് ഈ പുസ്തകം രൂപകൽപ്പന ചെയ്തിരിക്കുന്നത്.


You should know how to write basic CRUD programs.

നിങ്ങൾ അടിസ്ഥാന CRUD പ്രോഗ്രാമുകൾ എഴുതാൻ പഠിച്ചിരിക്കണം.


Understanding HTTP and GET/POST calls is essential.

HTTP-യെക്കുറിച്ചും GET/POST കോളുകളെക്കുറിച്ചും മനസ്സിലാക്കുന്നത് അത്യാവശ്യമാണ്.


This book is valuable for web application developers.

വെബ് ആപ്ലിക്കേഷൻ ഡെവലപ്പർമാർക്ക് ഈ പുസ്തകം വളരെ പ്രയോജനകരമാണ്.


Hackers often target server-side vulnerabilities.

ഹാക്കർമാർ സാധാരണയായി സെർവർ-സൈഡ് ദൗർബല്യങ്ങളാണ് ലക്ഷ്യമിടുന്നത്.


Frontend developers should be aware of security risks.

ഫ്രണ്ട്‌എൻഡ് ഡെവലപ്പർമാർ അവരുടെ കോഡിന്റെ സുരക്ഷാ അപകടങ്ങളെക്കുറിച്ച് ബോധവാന്മാരായിരിക്കണം.


This book helps in transitioning to a security-oriented role.

സുരക്ഷാപരമായ ഒരു ജോലിയിലേക്ക് മാറാൻ ഈ പുസ്തകം നിങ്ങളെ സഹായിക്കും.


It is also a resource for penetration testing.

നുഴഞ്ഞുകയറ്റ പരിശോധനകൾക്ക് (penetration testing) ഇത് ഒരു മികച്ച resource ആണ്.


The book dives into exploits at a code level.

ഒരു കോഡ് തലത്തിൽ എക്സ്പ്ലോയിറ്റുകളെക്കുറിച്ച് ഈ പുസ്തകം വിശദീകരിക്കുന്നു.


We will rely on our own scripts and network requests.

നമ്മുടെ സ്വന്തം സ്ക്രിപ്റ്റുകളെയും നെറ്റ്‌വർക്ക് അഭ്യർത്ഥനകളെയും ആശ്രയിക്കും.


The book is structured differently than most tech books.

മിക്കവാറും സാങ്കേതിക പുസ്തകങ്ങളിൽ നിന്ന് വ്യത്യസ്തമായ രീതിയിലാണ് ഈ പുസ്തകം ക്രമീകരിച്ചിരിക്കുന്നത്.


The book is divided into three main parts.

ഈ പുസ്തകം പ്രധാനമായും മൂന്ന് ഭാഗങ്ങളായി തിരിച്ചിരിക്കുന്നു.


Reconnaissance is crucial for bug bounty hunters.

ബഗ് ബൗണ്ടി വേട്ടക്കാർക്ക് രഹസ്യാന്വേഷണം (reconnaissance) വളരെ നിർണായകമാണ്.


Expert-level reconnaissance differentiates great hackers.

വിദഗ്ദ്ധ തലത്തിലുള്ള രഹസ്യാന്വേഷണം മികച്ച ഹാക്കർമാരെ വേർതിരിക്കുന്നു.


രണ്ടാമത്തെ ഭാഗം ആക്രമണത്തെക്കുറിച്ചാണ്.


We will analyze code and network requests.

കോഡും നെറ്റ്‌വർക്ക് അഭ്യർത്ഥനകളും ഞങ്ങൾ വിശകലനം ചെയ്യും.


Improper usage of hacking techniques can lead to legal issues.

ഹാക്കിംഗ് ടെക്നിക്കുകളുടെ ശരിയായ രീതിയിലല്ലാത്ത ഉപയോഗം നിയമപരമായ പ്രശ്നങ്ങളിലേക്ക് നയിച്ചേക്കാം.


Part II explains different types of exploits.

രണ്ടാം ഭാഗത്ത് വിവിധതരം എക്സ്പ്ലോയിറ്റുകളെക്കുറിച്ച് വിശദീകരിക്കുന്നു.


Cross-Site Scripting (XSS) is a common exploit.

ക്രോസ്-സൈറ്റ് സ്ക്രിപ്റ്റിംഗ് (XSS) ഒരു സാധാരണ എക്സ്പ്ലോയിറ്റാണ്.


The third part is about securing your code.

മൂന്നാമത്തെ ഭാഗം നിങ്ങളുടെ കോഡിനെ സുരക്ഷിതമാക്കുന്നതിനെക്കുറിച്ചാണ്.


An ethical hacker uses hacking techniques to improve security.

ഒരു 'ധാർമ്മിക ഹാക്കർ' സുരക്ഷ മെച്ചപ്പെടുത്തുന്നതിന് ഹാക്കിംഗ് ടെക്നിക്കുകൾ ഉപയോഗിക്കുന്നു.


Black hat hackers break into systems for profit or chaos.

ബ്ലാക്ക് ഹാറ്റ് ഹാക്കർമാർ ലാഭത്തിനോ ആശയക്കുഴപ്പമുണ്ടാക്കാനോ വേണ്ടി സിസ്റ്റങ്ങളിൽ കടന്നുകയറുന്നു.


Grey hat hackers sometimes violate laws for discovery.

ഗ്രേ ഹാറ്റ് ഹാക്കർമാർ ചിലപ്പോൾ കണ്ടെത്തലിനായി നിയമങ്ങൾ ലംഘിക്കാറുണ്ട്.


Penetration testers are paid to find vulnerabilities.

നുഴഞ്ഞുകയറ്റ പരിശോധകർക്ക്, ദൗർബല്യങ്ങൾ കണ്ടെത്താൻ പണം നൽകുന്നു.


Bug bounty hunters get rewards for reporting security holes.

ബഗ്ഗ് ബൗണ്ടി വേട്ടക്കാർ സുരക്ഷാ പ്രശ്നങ്ങളെക്കുറിച്ച് റിപ്പോർട്ട് ചെയ്യുന്നതിന് പ്രതിഫലം നേടുന്നു.


Application security engineers improve code security.

ആപ്ലിക്കേഷൻ സുരക്ഷാ എഞ്ചിനീയർമാർ കോഡിന്റെ സുരക്ഷ മെച്ചപ്പെടുത്തുന്നു.


Software security engineers develop security products.

സോഫ്റ്റ്‌വെയർ സുരക്ഷാ എഞ്ചിനീയർമാർ സുരക്ഷാ ഉൽപ്പന്നങ്ങൾ വികസിപ്പിക്കുന്നു.


Admins maintain web server configuration and uptime.

അഡ്മിൻമാർ വെബ് സെർവർ കോൺഫിഗറേഷനും പ്രവർത്തന സമയവും പരിപാലിക്കുന്നു.


Scrum masters help engineering teams plan development work.

സ്‌ക്രം മാസ്റ്റേഴ്സ് എഞ്ചിനീയറിംഗ് ടീമുകളെ വികസന പ്രവർത്തനങ്ങൾ ആസൂത്രണം ചെയ്യാൻ സഹായിക്കുന്നു.


Security champions are interested in improving code security.

സുരക്ഷാ ചാമ്പ്യന്മാർ കോഡിന്റെ സുരക്ഷ മെച്ചപ്പെടുത്തുന്നതിൽ താൽപ്പര്യമുള്ളവരാണ്.


Vulnerabilities are bugs that allow unintended actions.

ദൗർബല്യങ്ങൾ എന്നത് ഉദ്ദേശിക്കാത്ത പ്രവർത്തനങ്ങൾ അനുവദിക്കുന്ന ബഗുകളാണ്.


Threat vectors are insecure application functionalities.

ഭീഷണിയുടെ വെക്റ്ററുകൾ സുരക്ഷിതമല്ലാത്ത ആപ്ലിക്കേഷൻ പ്രവർത്തനങ്ങളാണ്.


An attack surface is a list of application vulnerabilities.

ആക്രമണോപാധി എന്നത് ആപ്ലിക്കേഷൻ ദൗർബല്യങ്ങളുടെ ഒരു ലിസ്റ്റാണ്.


An exploit is code used to take advantage of a vulnerability.

ഒരു ചൂഷണം എന്നത് ഒരു ദൗർബല്യം മുതലെടുക്കാൻ ഉപയോഗിക്കുന്ന കോഡാണ്.


Payloads are exploits formatted for a server.

പേലോഡുകൾ ഒരു സെർവറിനായി ഫോർമാറ്റ് ചെയ്ത ചൂഷണങ്ങളാണ്.


Red teams assess a company's ability to withstand hackers.

ചുവപ്പ് ടീമുകൾ ഹാക്കർമാരെ പ്രതിരോധിക്കാനുള്ള ഒരു കമ്പനിയുടെ കഴിവ് വിലയിരുത്തുന്നു.


Blue teams improve a company's software security.

നീല ടീമുകൾ ഒരു കമ്പനിയുടെ സോഫ്റ്റ്‌വെയർ സുരക്ഷ മെച്ചപ്പെടുത്തുന്നു.


Purple teams combine red and blue team responsibilities.

പർപ്പിൾ ടീമുകൾ ചുവപ്പ്, നീല ടീം ഉത്തരവാദിത്തങ്ങൾ സംയോജിപ്പിക്കുന്നു.


Web applications differ from websites in permissions and data storage.

വെബ് ആപ്ലിക്കേഷനുകൾ വെബ്‌സൈറ്റുകളിൽ നിന്ന് വ്യത്യസ്തമാണ്, അനുമതികളിലും ഡാറ്റ സംഭരണത്തിലും.


Hybrid applications use web-based technology.

ഹൈബ്രിഡ് ആപ്ലിക്കേഷനുകൾ വെബ് അധിഷ്ഠിത സാങ്കേതികവിദ്യ ഉപയോഗിക്കുന്നു.


Hackers move on to target new emerging technologies.

പുതിയതും വളർന്നു വരുന്നതുമായ സാങ്കേതികവിദ്യകളെ ലക്ഷ്യമിട്ട് ഹാക്കർമാർ നീങ്ങുന്നു.


These new technologies often do not have the same level of security controls built in.

ഈ പുതിയ സാങ്കേതികവിദ്യകളിൽ പലപ്പോഴും അതേ നിലവാരത്തിലുള്ള സുരക്ഷാ നിയന്ത്രണങ്ങൾ ഉണ്ടാകാറില്ല.


Similarly to how simple websites of the past were riddled with security holes, modern web applications bring new surface area for attackers.

മുമ്പത്തെ ലളിതമായ വെബ്‌സൈറ്റുകളിൽ സുരക്ഷാ പ്രശ്നങ്ങൾ ഉണ്ടായിരുന്നതുപോലെ, ആധുനിക വെബ് ആപ്ലിക്കേഷനുകൾ ആക്രമണകാരികൾക്ക് പുതിയ ഇടം നൽകുന്നു.


Each new technology comes with its own unique attack surface and vulnerabilities.

ഓരോ പുതിയ സാങ്കേതികവിദ്യയും അതിൻ്റേതായ ആക്രമണോപാധികളും ദൗർബല്യങ്ങളുമായി വരുന്നു.


In the meantime, this book will show you how to break into and secure modern web applications.

അതിനിടയിൽ, ആധുനിക വെബ് ആപ്ലിക്കേഷനുകളിൽ എങ്ങനെ കടന്നു കയറാമെന്നും സുരക്ഷിതമാക്കാമെന്നും ഈ പുസ്തകം നിങ്ങളെ പഠിപ്പിക്കും.


Ultimately, being able to find your own solutions to security problems is the most valuable skill you can have.

അവസാനം, സുരക്ഷാ പ്രശ്നങ്ങൾക്ക് സ്വന്തമായി പരിഹാരങ്ങൾ കണ്ടെത്താൻ കഴിയുന്നത് ഏറ്റവും വിലപ്പെട്ട കഴിവാണ്.


To exploit web applications efficiently, a wide array of skills is required.

വെബ് ആപ്ലിക്കേഷനുകൾ കാര്യക്ഷമമായി ചൂഷണം ചെയ്യാൻ, വൈവിധ്യമാർന്ന കഴിവുകൾ ആവശ്യമാണ്.


The more intimate this knowledge is, the better and more applicable it will be.

ഈ അറിവ് എത്രത്തോളം അടുത്തറിയുന്നുവോ, അത്രത്തോളം നല്ലതും പ്രായോഗികവുമാകും.


Who are its users? How does the application generate revenue?

ആരാണ് ഇതിൻ്റെ ഉപയോക്താക്കൾ? ആപ്ലിക്കേഷൻ എങ്ങനെയാണ് വരുമാനം ഉണ്ടാക്കുന്നത്?


Without deep understanding of the target application from a nontechnical perspective, it is actually difficult to determine what data and functionality matter.

സാങ്കേതികമല്ലാത്ത ഒരു വീക്ഷണകോണിൽ നിന്ന് ടാർഗെറ്റ് ആപ്ലിക്കേഷനെക്കുറിച്ച് ആഴത്തിലുള്ള ധാരണയില്ലാതെ, എന്ത് ഡാറ്റയാണ്, ഏതൊക്കെ ഫംഗ്ഷനുകളാണ് പ്രധാനമെന്ന് നിർണ്ണയിക്കാൻ പ്രയാസമാണ്.


Many web applications generate revenue in a number of ways, rather than just relying on one income stream.

പല വെബ് ആപ്ലിക്കേഷനുകളും ഒന്നിലധികം രീതികളിൽ വരുമാനം നേടുന്നു, ഒരൊറ്റ വരുമാന മാർഗ്ഗത്തെ മാത്രം ആശ്രയിക്കുന്നില്ല.


Ultimately, web application reconnaissance is about collecting data and building a model.

അവസാനമായി, വെബ് ആപ്ലിക്കേഷൻ രഹസ്യാന്വേഷണം എന്നത് ഡാറ്റ ശേഖരിക്കുകയും ഒരു മാതൃക ഉണ്ടാക്കുകയും ചെയ്യുന്നതിനെക്കുറിച്ചാണ്.


Reconnaissance (recon) skills by themselves do not have significant value.

രഹസ്യാന്വേഷണ (recon) കഴിവുകൾക്ക്, അവ ഒറ്റയ്ക്ക് വലിയ പ്രാധാന്യമില്ല.


Most recon techniques should only be performed against applications you own, or have written permission to test.

നിങ്ങൾ സ്വന്തമായി ഉപയോഗിക്കുന്ന അല്ലെങ്കിൽ ടെസ്റ്റ് ചെയ്യാൻ അനുമതി ലഭിച്ച ആപ്ലിക്കേഷനുകളിൽ മാത്രമേ മിക്ക രഹസ്യാന്വേഷണ രീതികളും ഉപയോഗിക്കാവൂ.


Sometimes simply navigating through a web application and taking note of network requests will be all that you need.

ചിലപ്പോൾ ഒരു വെബ് ആപ്ലിക്കേഷനിലൂടെ സഞ്ചരിക്കുകയും നെറ്റ്‌വർക്ക് അഭ്യർത്ഥനകൾ ശ്രദ്ധിക്കുകയും ചെയ്യുന്നത് ആവശ്യമായേക്കാം.


Most public-facing applications will have a public-facing user interface.

മിക്ക പൊതുജനങ്ങൾക്ക് ലഭ്യമായ ആപ്ലിക്കേഷനുകൾക്കും ഒരു പൊതുവായ ഉപയോക്തൃ ഇന്റർഫേസ് ഉണ്ടാകും.


From this we can gather that someone also had access to an application that allowed them to edit information.

വിവരങ്ങൾ എഡിറ്റ് ചെയ്യാൻ അനുവദിക്കുന്ന ഒരു ആപ്ലിക്കേഷനിലേക്ക് ആർക്കോ പ്രവേശനം ഉണ്ടായിരുന്നെന്നും ഇതിൽ നിന്ന് മനസ്സിലാക്കാം.


You have access to your bank account to check the balance via a web application.

ഒരു വെബ് ആപ്ലിക്കേഷൻ വഴി നിങ്ങളുടെ അക്കൗണ്ടിലെ ബാലൻസ് പരിശോധിക്കാൻ നിങ്ങൾക്ക് കഴിയും.


We call applications with permissions structured like this role-based access controlled applications.

ഇതുപോലെ പെർമിഷനുകളുള്ള ആപ്ലിക്കേഷനുകളെ റോൾ-ബേസ്ഡ് ആക്സസ് കൺട്രോൾഡ് ആപ്ലിക്കേഷനുകൾ എന്ന് വിളിക്കുന്നു.


Recon skills can also be used to gather information regarding applications we literally don’t have access to.

നമുക്ക് നേരിട്ട് പ്രവേശനമില്ലാത്ത ആപ്ലിക്കേഷനുകളെക്കുറിച്ചുള്ള വിവരങ്ങൾ ശേഖരിക്കാനും രഹസ്യാന്വേഷണ കഴിവുകൾ ഉപയോഗിക്കാം.


The first bombes were built by the Polish.

ആദ്യത്തെ ബോംബുകൾ പോളിഷ്കാർ നിർമ്മിച്ചു.


Alan Turing believed that the original machines failed because they were not written in a general-purpose manner.

ആലൻ ട്യൂറിംഗ് വിശ്വസിച്ചത്, യഥാർത്ഥ മെഷീനുകൾ പരാജയപ്പെട്ടത് അവ പൊതുവായ രീതിയിൽ എഴുതാത്തതുകൊണ്ടാണ്.


Each day, a message was sent over encrypted Enigma radio waves containing a detailed regional weather report.

ഓരോ ദിവസവും, ഒരു സന്ദേശം എൻക്രിപ്റ്റ് ചെയ്ത എനിഗ്മ റേഡിയോ തരംഗങ്ങളിലൂടെ അയച്ചു, അതിൽ വിശദമായ പ്രാദേശിക കാലാവസ്ഥാ റിപ്പോർട്ട് ഉണ്ടായിരുന്നു.


Knowing the inputs (weather data) being sent through a properly configured Enigma machine made algorithmically determining the outputs much easier.

ശരിയായ രീതിയിൽ ക്രമീകരിച്ചിട്ടുള്ള എനിഗ്മ മെഷീനിലേക്ക് അയച്ച ഇൻപുട്ടുകൾ (കാലാവസ്ഥാ ഡാറ്റ) അറിയുന്നത്, ഔട്ട്‌പുട്ടുകൾ അൽഗോരിതമിക് രീതിയിൽ നിർണ്ണയിക്കുന്നത് വളരെ എളുപ്പമാക്കി.


Alan requested a budget to build a bombe that would accurately detect the configuration requirements needed to intercept and read encrypted messages from German Enigma machines.

ജർമ്മൻ എനിഗ്മ മെഷീനുകളിൽ നിന്നുള്ള എൻക്രിപ്റ്റ് ചെയ്ത സന്ദേശങ്ങൾ തടസ്സപ്പെടുത്താനും വായിക്കാനും ആവശ്യമായ കോൺഫിഗറേഷൻ ആവശ്യകതകൾ കൃത്യമായി കണ്ടെത്താൻ കഴിയുന്ന ഒരു ബോംബ് നിർമ്മിക്കാൻ അലൻ ഒരു ബഡ്ജറ്റ് ആവശ്യപ്പെട്ടു.


This machine could run through nearly 20,000 possible Enigma machine configurations in just 20 minutes.

ഈ മെഷീന് 20 മിനിറ്റിനുള്ളിൽ ഏകദേശം 20,000 എനിഗ്മ മെഷീൻ കോൺഫിഗറേഷനുകളിലൂടെ കടന്നുപോകുവാൻ കഴിയും.


Enigma encryption was no longer a secure means of communication.

എനിഗ്മ എൻക്രിപ്ഷൻ ഇനി സുരക്ഷിതമായ ആശയവിനിമയ മാർഗ്ഗമായിരുന്നില്ല.


Today Alan’s reverse-engineering strategy is known as a known plaintext attack or KPA.

ഇന്ന്, അലൻ്റെ റിവേഴ്സ് എഞ്ചിനിയറിംഗ് തന്ത്രം അറിയപ്പെടുന്നത് ഒരു അറിയപ്പെടുന്ന പ്ലെയിൻടെക്സ്റ്റ് ആക്രമണം അല്ലെങ്കിൽ കെപിഎ എന്നാണ്.


The telephone allowed everyday people to communicate with each other over large distances, and at rapid speed.

ദൂരങ്ങൾക്കപ്പുറം അതിവേഗം പരസ്പരം ആശയവിനിമയം നടത്താൻ ടെലിഫോൺ സാധാരണക്കാരെ അനുവദിച്ചു.


Pressing a key on the phone pad emitted a specific audio frequency that was transmitted over the line and interpreted by a machine in a switching center.

ഫോൺ പാഡിലെ ഒരു കീ അമർത്തുമ്പോൾ ഒരു പ്രത്യേക ഓഡിയോ ഫ്രീക്വൻസി പുറപ്പെടുവിച്ചു, അത് ലൈനിലൂടെ പ്രക്ഷേപണം ചെയ്യുകയും സ്വിച്ചിംഗ് സെൻ്ററിലെ ഒരു മെഷീൻ വ്യാഖ്യാനിക്കുകയും ചെയ്തു.


This system was known as tone dialing, and was an essential development that telephone networks at scale could not function without.

ഈ സംവിധാനം ടോൺ ഡയലിംഗ് എന്നറിയപ്പെട്ടു, കൂടാതെ വലിയ തോതിലുള്ള ടെലിഫോൺ ശൃംഖലകൾക്ക് ഇത് ഇല്ലാതെ പ്രവർത്തിക്കാൻ കഴിയില്ല.


Simply learning how to reproduce identical audio frequencies next to the telephone receiver could interfere with the intended functionality of the device.

ടെലിഫോൺ റിസീവറിന് അടുത്തായി, സമാനമായ ഓഡിയോ ഫ്രീക്വൻസികൾ എങ്ങനെ പുനർനിർമ്മിക്കാമെന്ന് പഠിക്കുന്നത് ഉപകരണത്തിൻ്റെ ഉദ്ദേശിച്ചുള്ള പ്രവർത്തനത്തെ തടസ്സപ്പെടുത്തും.


The true origin of the term phreaking is not known, though it has several generally accepted possible origins.

ഫ്രീക്കിംഗ് എന്ന പദത്തിന്റെ ശരിയായ ഉത്ഭവം അജ്ഞാതമാണ്, എന്നിരുന്നാലും ഇതിന് സാധാരണയായി അംഗീകരിക്കപ്പെട്ട നിരവധി സാധ്യതകളുണ്ട്.


Emitting a 2600 Hz tone stopped a telecom switching system from realizing that a call was still open.

2600 Hz ടോൺ പുറപ്പെടുവിക്കുന്നത് ഒരു കോൾ ഇപ്പോഴും തുറന്നിരിക്കുന്നു എന്ന് ടെലികോം സ്വിച്ചിംഗ് സിസ്റ്റം മനസ്സിലാക്കുന്നത് തടഞ്ഞു.


Knowledge of these techniques spread throughout the Western world, eventually leading to the generation of hardware that could match specific audio frequencies with the press of a button.

ഈ സാങ്കേതിക വിദ്യകളെക്കുറിച്ചുള്ള അറിവ് പാശ്ചാത്യ ലോകത്ത് വ്യാപകമായി പ്രചരിച്ചു, ഇത് ഒരു ബട്ടൺ അമർത്തിയാൽ പ്രത്യേക ഓഡിയോ ഫ്രീക്വൻസികളുമായി പൊരുത്തപ്പെടുന്ന ഹാർഡ്‌വെയറുകളുടെ നിർമ്മാണത്തിലേക്ക് നയിച്ചു.


DTMF was intrinsically tied to the phone dial layout we know today that consists of three columns and four rows of numbers.

ഡിടിഎംഎഫ്, ഇന്ന് നമ്മൾ അറിയുന്ന ഫോൺ ഡയൽ ലേഔട്ടുമായി ബന്ധപ്പെട്ടിരിക്കുന്നു, അതിൽ മൂന്ന് നിരകളും നാല് വരികളിലെ നമ്പറുകളും ഉണ്ട്.


The development of DTMF was due largely to the fact that phreakers were taking advantage of tone dialing systems because of how easy those systems were to reverse engineer.

ഡിടിഎംഎഫിൻ്റെ വികസനം പ്രധാനമായും ടോൺ ഡയലിംഗ് സിസ്റ്റങ്ങൾ റിവേഴ്സ് എഞ്ചിനീയറിംഗ് ചെയ്യാൻ എളുപ്പമായതുകൊണ്ട് ഫ്രീക്കർമാർ അത് മുതലെടുത്തതിനാലാണ്.


Computers soon became a common tool in households as well as businesses, and took over common repetitive tasks, such as managing finances, human resources, accounting, and sales.

കമ്പ്യൂട്ടറുകൾ താമസിയാതെ വീടുകളിലും ബിസിനസ്സുകളിലും ഒരുപോലെ സാധാരണ ഉപകരണമായി മാറി, കൂടാതെ ധനകാര്യങ്ങൾ, മാനവ വിഭവശേഷി, അക്കൗണ്ടിംഗ്, വിൽപ്പന തുടങ്ങിയ സാധാരണ ആവർത്തന ജോലികൾ ഏറ്റെടുത്തു.


In 1983, Fred Cohen, an American computer scientist, created the very first computer virus.

1983-ൽ, അമേരിക്കൻ കമ്പ്യൂട്ടർ ശാസ്ത്രജ്ഞനായ ഫ്രെഡ് കോഹൻ ആദ്യത്തെ കമ്പ്യൂട്ടർ വൈറസ് ഉണ്ടാക്കി.


The early 2000s marked a new era for the internet because websites began to store user-submitted data and modify the functionality of the site based on user input.

വെബ്‌സൈറ്റുകൾ ഉപയോക്താക്കൾ സമർപ്പിച്ച ഡാറ്റ സംഭരിക്കാനും ഉപയോക്തൃ ഇൻപുട്ടിനെ അടിസ്ഥാനമാക്കി സൈറ്റിന്റെ പ്രവർത്തനം പരിഷ്കരിക്കാനും തുടങ്ങിയതിനാൽ 2000-ൻ്റെ തുടക്കം ഇന്റർനെറ്റിന് ഒരു പുതിയ യുഗത്തിന് തുടക്കം കുറിച്ചു.


Understanding the structure of REST APIs is important as you attempt to reverse engineer a web application’s API layer.

വെബ് ആപ്ലിക്കേഷന്റെ API ലെയർ റിവേഴ്സ് എഞ്ചിനീയറിംഗ് ചെയ്യാൻ ശ്രമിക്കുമ്പോൾ REST API-കളുടെ ഘടന മനസ്സിലാക്കുന്നത് പ്രധാനമാണ്.


Mastering the basic fundamentals of REST APIs will give you an advantage.

REST API-കളുടെ അടിസ്ഥാന തത്വങ്ങൾ പഠിക്കുന്നത് നിങ്ങൾക്ക് ഒരു മുൻ‌തൂക്കം നൽകും.


Most REST APIs today use JSON as their in-transit data format.

ഇന്നത്തെ മിക്ക REST API-കളും JSON ആണ് ഡാറ്റാ ഫോർമാറ്റായി ഉപയോഗിക്കുന്നത്.


Without a client/server relationship, we cannot have stored state across devices.

ഒരു ക്ലയിന്റ്/സെർവർ ബന്ധമില്ലാതെ, ഉപകരണങ്ങളിലുടനീളം സംഭരിച്ച അവസ്ഥ നമുക്ക് ഉണ്ടാകില്ല.


Because modern web applications require a lot of client/server communication, it is not feasible to send data in ad hoc formats.

ആധുനിക വെബ് ആപ്ലിക്കേഷനുകൾക്ക് ധാരാളം ക്ലയിന്റ്/സെർവർ ആശയവിനിമയം ആവശ്യമായതുകൊണ്ട്, താൽക്കാലികമായ ഫോർമാറ്റുകളിൽ ഡാറ്റ അയക്കുന്നത് പ്രായോഗികമല്ല.


JSON is an open-standard file format that meets a number of interesting requirements.

JSON എന്നത് നിരവധി ആവശ്യകതകൾ നിറവേറ്റുന്ന ഒരു ഓപ്പൺ-സ്റ്റാൻഡേർഡ് ഫയൽ ഫോർമാറ്റാണ്.


It is very lightweight (reduces network bandwidth).

ഇത് വളരെ കുറഞ്ഞ ഭാരമുള്ളതാണ് (നെറ്റ്‌വർക്ക് ബാൻഡ്‌വിഡ്ത്ത് കുറയ്ക്കുന്നു).


It requires very little parsing (reduces server/client hardware load).

ഇതിന് വളരെ കുറഞ്ഞ പാർസിംഗ് ആവശ്യമാണ് (സെർവർ/ക്ലയിന്റ് ഹാർഡ്‌വെയർ ലോഡ് കുറയ്ക്കുന്നു).


ഇത് എളുപ്പത്തിൽ മനുഷ്യന് വായിക്കാൻ കഴിയും.


JSON objects are represented very similarly to JavaScript objects.

JSON ഒബ്ജക്റ്റുകൾ JavaScript ഒബ്ജക്റ്റുകളുമായി വളരെ സാമ്യമുള്ള രീതിയിലാണ് പ്രതിനിധീകരിക്കുന്നത്.


All major browsers today support the parsing of JSON natively.

ഇന്നത്തെ എല്ലാ പ്രധാന ബ്രൗസറുകളും JSON-ന്റെ പാർസിംഗിനെ നേറ്റീവായി പിന്തുണയ്ക്കുന്നു.


Get familiar with reading through JSON strings.

JSON സ്ട്രിംഗുകളിലൂടെ വായിച്ച് പരിചയപ്പെടുക.


Being able to rapidly parse these and find specific keys will be very valuable when penetration testing a wide variety of APIs in a short time frame.

ഇവ വേഗത്തിൽ പാർസ് ചെയ്യാനും, ഒരു ചെറിയ സമയത്തിനുള്ളിൽ വിവിധ API-കളിൽ പെനിട്രേഷൻ ടെസ്റ്റിംഗ് നടത്തുമ്പോൾ, പ്രത്യേക കീകൾ കണ്ടെത്താനും കഴിയുന്നത് വളരെ വിലപ്പെട്ടതാണ്.


A server is a computer that resides in a data center.

ഒരു സെർവർ എന്നത് ഒരു ഡാറ്റാ സെന്ററിൽ സ്ഥിതി ചെയ്യുന്ന ഒരു കമ്പ്യൂട്ടറാണ്.


JavaScript is not only a programming language, but also the sole programming language for client-side scripting in web browsers.

JavaScript ഒരു പ്രോഗ്രാമിംഗ് ഭാഷ മാത്രമല്ല, വെബ് ബ്രൗസറുകളിലെ ക്ലയിന്റ്-സൈഡ് സ്ക്രിപ്റ്റിംഗിനായുള്ള ഏക പ്രോഗ്രാമിംഗ് ഭാഷ കൂടിയാണ്.


JavaScript is now used in many applications, from mobile to the internet of things, or IoT.

JavaScript ഇപ്പോൾ മൊബൈൽ മുതൽ ഇന്റർനെറ്റ് ഓഫ് തിംഗ്സ് (IoT) വരെയുള്ള നിരവധി ആപ്ലിക്കേഷനുകളിൽ ഉപയോഗിക്കുന്നു.


I’ ll try to keep the JavaScript as clean and simple as possible.

JavaScript കഴിയുന്നത്ര വൃത്തിയും ലളിതവുമാക്കാൻ ഞാൻ ശ്രമിക്കും.


In ES6 JavaScript (a recent version), there are four ways to define a variable.

ES6 JavaScript-ൽ (ഒരു പുതിയ പതിപ്പ്), ഒരു വേരിയബിൾ നിർവചിക്കാൻ നാല് വഴികളുണ്ട്.


Generally speaking, this is considered a bad practice and we should stay away from it.

പൊതുവേ പറഞ്ഞാൽ, ഇത് ഒരു മോശം പ്രവണതയായി കണക്കാക്കപ്പെടുന്നു, നമ്മൾ ഇതിൽ നിന്ന് വിട്ടുനിൽക്കണം.


In general, you should always strive to use let and const in your code to avoid bugs and improve readability.

പൊതുവേ, ബഗുകൾ ഒഴിവാക്കാനും വായനാക്ഷമത മെച്ചപ്പെടുത്താനും നിങ്ങളുടെ കോഡിൽ let, const എന്നിവ ഉപയോഗിക്കാൻ എപ്പോഴും ശ്രമിക്കുക.


SPA frameworks were designed to bridge the functionality gap between websites and desktop applications.

വെബ്‌സൈറ്റുകളും ഡെസ്‌ക്‌ടോപ്പ് ആപ്ലിക്കേഷനുകളും തമ്മിലുള്ള പ്രവർത്തനപരമായ വിടവ് നികത്തുന്നതിനാണ് SPA ഫ്രെയിംവർക്കുകൾ രൂപകൽപ്പന ചെയ്തത്.


SPA frameworks allow for the development of complex JavaScript-based applications.

സങ്കീർണ്ണമായ ജാവാസ്ക്രിപ്റ്റ് അടിസ്ഥാനമാക്കിയുള്ള ആപ്ലിക്കേഷനുകൾ വികസിപ്പിക്കാൻ SPA ഫ്രെയിംവർക്കുകൾ അനുവദിക്കുന്നു.


These are all built on top of JavaScript and the DOM, but bring with them added complexity from both security and functionality perspectives.

ഇവയെല്ലാം ജാവാസ്ക്രിപ്റ്റിന്റെയും DOM-ന്റെയും മുകളിലാണ് നിർമ്മിച്ചിരിക്കുന്നത്, എന്നാൽ സുരക്ഷ, പ്രവർത്തനക്ഷമത എന്നിവയുടെ കാര്യത്തിൽ അധിക സങ്കീർണ്ണത നൽകുന്നു.


We use the term authentication to describe a flow that allows a system to identify a user.

ഒരു ഉപയോക്താവിനെ തിരിച്ചറിയാൻ ഒരു സിസ്റ്റത്തെ അനുവദിക്കുന്ന ഒഴുക്കിനെ വിവരിക്കാൻ നമ്മൾ പ്രാമാണീകരണം എന്ന പദം ഉപയോഗിക്കുന്നു.


The term authorization is used to describe a flow inside a system for determining what resources “joe123” has access to.

“joe123” എന്നയാൾക്ക് ഏതൊക്കെ വിഭവങ്ങളിലേക്ക് പ്രവേശനമുണ്ട് എന്ന് നിർണ്ണയിക്കാൻ ഒരു സിസ്റ്റത്തിനുള്ളിലെ ഒഴുക്കിനെ വിവരിക്കാൻ അംഗീകാരം എന്ന പദം ഉപയോഗിക്കുന്നു.


For example, “joe123” should be able to access his own uploaded private photos.

ഉദാഹരണത്തിന്, “joe123”-ന് സ്വന്തമായി അപ്‌ലോഡ് ചെയ്ത സ്വകാര്യ ഫോട്ടോകൾ ആക്‌സസ് ചെയ്യാൻ കഴിയണം.


HTTP basic authentication performs authentication by attaching an Authorization header on each request.

ഓരോ അഭ്യർത്ഥനയിലും ഒരു അംഗീകാര ശീർഷകം ചേർക്കുന്നതിലൂടെ HTTP അടിസ്ഥാന പ്രാമാണീകരണം പ്രാമാണീകരണം നടത്തുന്നു.


Obviously, this type of authentication scheme has several flaws.

തീർച്ചയായും, ഈ प्रकारത്തിലുള്ള പ്രാമാണീകരണ പദ്ധതിക്ക് നിരവധി குறைപാടുകൾ ഉണ്ട്.


Today, most web applications choose from a suite of authentication architectures, depending on the nature of the business.

ഇന്ന്, മിക്ക വെബ് ആപ്ലിക്കേഷനുകളും ബിസിനസ്സിന്റെ സ്വഭാവത്തെ ആശ്രയിച്ച്, പ്രാമാണീകരണ വാസ്തുവിദ്യകളിൽ നിന്ന് തിരഞ്ഞെടുക്കുന്നു.


The OAuth protocol is great for websites that want to integrate with larger websites.

വലിയ വെബ്‌സൈറ്റുകളുമായി സംയോജിപ്പിക്കാൻ ആഗ്രഹിക്കുന്ന വെബ്‌സൈറ്റുകൾക്ക് OAuth പ്രോട്ടോക്കോൾ മികച്ചതാണ്.


Authorization systems are more difficult to categorize, as authorization very much depends on the business logic inside of the web application.

അംഗീകാര സംവിധാനങ്ങൾ വർഗ്ഗീകരിക്കാൻ കൂടുതൽ ബുദ്ധിമുട്ടാണ്, കാരണം അംഗീകാരം വെബ് ആപ്ലിക്കേഷന്റെ ഉള്ളിലെ ബിസിനസ് ലോജിക്കിനെ വളരെയധികം ആശ്രയിച്ചിരിക്കുന്നു.


Some common resources that should always have authorization checks include settings/profile updates.

അംഗീകാര പരിശോധനകൾ എപ്പോഴും ഉണ്ടായിരിക്കേണ്ട ചില പൊതുവായ വിഭവങ്ങളിൽ ക്രമീകരണങ്ങൾ/പ്രൊഫൈൽ അപ്‌ഡേറ്റുകൾ ഉൾപ്പെടുന്നു.


A modern client-server web application relies on a number of technologies built on top of each other.

ആധുനിക ക്ലയിന്റ്-സെർവർ വെബ് ആപ്ലിക്കേഷൻ പരസ്പരം നിർമ്മിച്ച നിരവധി സാങ്കേതികവിദ്യകളെ ആശ്രയിച്ചിരിക്കുന്നു.


Apache still serves nearly half of the websites in the world.

അപ്പാച്ചെ ഇപ്പോഴും ലോകത്തിലെ വെബ്‌സൈറ്റുകളിൽ പകുതിയോളം നൽകുന്നു.


Apache is great not only due to its large community of contributors and open source nature, but also because of how easily configurable and pluggable it has become.

അപ്പാച്ചെ അതിന്റെ വലിയ സംഭാവകരുടെ സമൂഹവും ഓപ്പൺ സോഴ്സ് സ്വഭാവവും മാത്രമല്ല, എളുപ്പത്തിൽ കോൺഫിഗർ ചെയ്യാനും പ്ലഗ് ചെയ്യാവുന്നതുമായ രീതിയിലും മികച്ചതാണ്.


Nginx runs around 30% of web servers and is growing rapidly.

Nginx ഏകദേശം 30% വെബ് സെർവറുകൾ പ്രവർത്തിപ്പിക്കുന്നു, ഇത് അതിവേഗം വളരുകയാണ്.


Web applications that are serving many users simultaneously may see large performance improvements when switching from Apache to Nginx.

നിരവധി ഉപയോക്താക്കൾക്ക് ഒരേസമയം സേവനം നൽകുന്ന വെബ് ആപ്ലിക്കേഷനുകൾ, Apache-യിൽ നിന്ന് Nginx-ലേക്ക് മാറുമ്പോൾ വലിയ പ്രകടനം മെച്ചപ്പെടുത്തുന്നത് കാണാൻ കഴിയും.


SQL databases are still the most popular general-purpose database on the market.

SQL ഡാറ്റാബേസുകൾ ഇപ്പോഴും വിപണിയിലെ ഏറ്റവും പ്രചാരമുള്ള പൊതു ആവശ്യത്തിനുള്ള ഡാറ്റാബേസുകളാണ്.


When more flexible storage is needed, schema-less NoSQL databases can be employed.

കൂടുതൽ ഫ്ലെക്സിബിൾ സ്റ്റോറേജ് ആവശ്യമായി വരുമ്പോൾ, സ്കീമയില്ലാത്ത NoSQL ഡാറ്റാബേസുകൾ ഉപയോഗിക്കാം.


Modern web applications are built on a number of new technologies not found in older applications.

ആധുനിക വെബ് ആപ്ലിക്കേഷനുകൾ പഴയ ആപ്ലിക്കേഷനുകളിൽ കാണാത്ത നിരവധി പുതിയ സാങ്കേതികവിദ്യകളെ അടിസ്ഥാനമാക്കിയുള്ളതാണ്.


Because Archive.org stores historical snapshots of websites, sometimes dating back 20 years, the website is a goldmine for finding information that was once disclosed but later removed.

Archive.org വെബ്‌സൈറ്റുകളുടെ ചരിത്രപരമായ സ്നാപ്ഷോട്ടുകൾ സൂക്ഷിക്കുന്നതിനാൽ, ചിലപ്പോൾ 20 വർഷം പിന്നിലേക്ക് പോകുമ്പോൾ, വെളിപ്പെടുത്തിയതും പിന്നീട് നീക്കം ചെയ്തതുമായ വിവരങ്ങൾ കണ്ടെത്താനുള്ള ഒരു സുവർണ്ണഖനിയാണ് ഈ വെബ്സൈറ്റ്.


The particular screenshot in Figure 4-5 is the home page of Wikipedia.org indexed in 2003— nearly two decades ago!

ചിത്രം 4-5-ൽ കാണിച്ചിരിക്കുന്ന സ്ക്രീൻഷോട്ട് 2003-ൽ സൂചികപ്പെടുത്തിയ Wikipedia.org-ൻ്റെ ഹോം പേജാണ് - ഏകദേശം രണ്ട് പതിറ്റാണ്ട് മുമ്പുള്ള ഒന്ന്!


If we look up its main website on Archive.org (https://www.nytimes.com), we will find that Archive.org has saved over 200,000 snapshots of the front page between 1996 and today.

Archive.org-ൽ (https://www.nytimes.com) അവരുടെ പ്രധാന വെബ്സൈറ്റ് പരിശോധിച്ചാൽ, 1996-നും ഇന്നുമിടയിൽ 200,000-ൽ അധികം മുൻ പേജുകളുടെ സ്നാപ്ഷോട്ടുകൾ Archive.org സൂക്ഷിച്ചിട്ടുണ്ട് എന്ന് കാണാം.


Historical snapshots are particularly valuable if we know or can guess a point in time when a web application shipped a major release, or had a serious security vulnerability disclosed.

ഒരു വെബ് ആപ്ലിക്കേഷൻ ഒരു പ്രധാന റിലീസ് പുറത്തിറക്കിയ സമയമോ അല്ലെങ്കിൽ ഗുരുതരമായ സുരക്ഷാ പ്രശ്നം വെളിപ്പെടുത്തിയ സമയമോ നമുക്കറിയാമെങ്കിൽ അല്ലെങ്കിൽ ഊഹിക്കാൻ കഴിയുമെങ്കിൽ, ചരിത്രപരമായ സ്നാപ്ഷോട്ടുകൾ വളരെ വിലപ്പെട്ടതാണ്.


When looking for subdomains, historical archives often disclose these via hyperlinks that were once exposed through the HTML or JS but are no longer visible in the live app.

സബ്‌ഡൊമെയ്‌നുകൾക്കായി തിരയുമ്പോൾ, HTML അല്ലെങ്കിൽ JS വഴി മുമ്പ് എക്സ്പോസ് ചെയ്യുകയും എന്നാൽ തത്സമയ ആപ്പിൽ ഇനി ദൃശ്യമാകാത്തതുമായ ഹൈപ്പർലിങ്കുകൾ വഴി ചരിത്രപരമായ ആർക്കൈവുകൾ ഇത് പലപ്പോഴും വെളിപ്പെടുത്തുന്നു.


If we right-click on an Archive.org snapshot in our browser and select “View source,” we can do a quick search for common URL patterns.

ഞങ്ങളുടെ ബ്രൗസറിൽ ഒരു Archive.org സ്നാപ്ഷോട്ടിൽ റൈറ്റ്-ക്ലിക്ക് ചെയ്ത് “View source” തിരഞ്ഞെടുക്കുകയാണെങ്കിൽ, സാധാരണ URL പാറ്റേണുകൾക്കായി നമുക്ക് വേഗത്തിൽ തിരയാൻ കഴിയും.


We can automate the discovery of subdomains from an archive with these simple steps:

ഈ ലളിതമായ ഘട്ടങ്ങളിലൂടെ ഒരു ആർക്കൈവിൽ നിന്ന് സബ്‌ഡൊമെയ്‌നുകൾ കണ്ടെത്തുന്നത് നമുക്ക് ഓട്ടോമേറ്റ് ചെയ്യാൻ കഴിയും:


Every major social media website today makes its money from the sale of user data, which depending on the platform can include public posts, private posts, and even direct messages in some cases.

ഇന്ന്, എല്ലാ പ്രധാന സോഷ്യൽ മീഡിയ വെബ്‌സൈറ്റുകളും ഉപയോക്തൃ ഡാറ്റയുടെ വിൽപ്പനയിൽ നിന്നാണ് പണം ഉണ്ടാക്കുന്നത്, ഇത് പ്ലാറ്റ്‌ഫോമിനെ ആശ്രയിച്ച്, പൊതു പോസ്റ്റുകൾ, സ്വകാര്യ പോസ്റ്റുകൾ, ചില സന്ദർഭങ്ങളിൽ നേരിട്ടുള്ള സന്ദേശങ്ങൾ എന്നിവ ഉൾപ്പെട്ടേക്കാം.


Unfortunately, today’s major social media companies go to great efforts to convince users that their most private data is secure.

bedഭാഗ്യവശാൽ, ഇന്നത്തെ പ്രധാന സോഷ്യൽ മീഡിയ കമ്പനികൾ അവരുടെ ഏറ്റവും സ്വകാര്യമായ ഡാറ്റ സുരക്ഷിതമാണെന്ന് ഉപയോക്താക്കളെ ബോധ്യപ്പെടുത്താൻ വലിയ ശ്രമങ്ങൾ നടത്തുന്നു.


Very few countries have laws and lawmakers modernized enough to enforce the legitimacy of any of these claims.

ഈ അവകാശവാദങ്ങളുടെ സാധുത നടപ്പിലാക്കാൻ ആവശ്യമായ രീതിയിൽ നിയമങ്ങളും നിയമനിർമ്മാതാക്കളും നവീകരിക്കപ്പെട്ട രാജ്യങ്ങൾ വളരെ കുറവാണ്.


It is likely that many users of these sites do not fully understand what data is being shared, by what methods it is being shared, and for what goals this data is being consumed.

ഏത് ഡാറ്റയാണ് പങ്കുവെക്കുന്നത്, ഏത് രീതി ഉപയോഗിച്ചാണ് ഇത് പങ്കുവെക്കുന്നത്, എന്തിനുവേണ്ടിയാണ് ഈ ഡാറ്റ ഉപയോഗിക്കുന്നത് എന്നതിനെക്കുറിച്ച് ഈ സൈറ്റുകളിലെ പല ഉപയോക്താക്കൾക്കും പൂർണ്ണമായ ധാരണയില്ല.


Finding subdomains for a company-sponsored pen test via social media data would not be found unethical by most.

സോഷ്യൽ മീഡിയ ഡാറ്റ ഉപയോഗിച്ച് ഒരു കമ്പനി സ്പോൺസർ ചെയ്യുന്ന പെൻ ടെസ്റ്റിനായി സബ്‌ഡൊമെയ്‌നുകൾ കണ്ടെത്തുന്നത് മിക്കവരും ധാർമ്മിക വിരുദ്ധമായി കണക്കാക്കില്ല.


For the sake of simplicity, we will take a look at the Twitter API as a recon example.

ലളിതമാക്കുന്നതിന് വേണ്ടി, ഒരു റീകോൺ ഉദാഹരണമായി ഞങ്ങൾ Twitter API-യെക്കുറിച്ച് പരിശോധിക്കും.


Keep in mind, however, that every major social media company offers a similar suite of APIs typically following a similar API structure.

എങ്കിലും, എല്ലാ പ്രധാന സോഷ്യൽ മീഡിയ കമ്പനികളും സമാനമായ API ഘടന പിന്തുടരുന്ന API-കളുടെ ഒരു കൂട്ടം തന്നെ വാഗ്ദാനം ചെയ്യുന്നു എന്നത് ഓർക്കുക.


Twitter has a number of offerings for searching and filtering through their data (see Figure 4-6).

Twitter-ന് അവരുടെ ഡാറ്റയിൽ തിരയുന്നതിനും ഫിൽട്ടർ ചെയ്യുന്നതിനും നിരവധി ഓപ്ഷനുകൾ ഉണ്ട് (ചിത്രം 4-6 കാണുക).


This means the more data you want access to and the more ways you wish to request and filter that data, the more you will have to pay.

കൂടുതൽ ഡാറ്റയിലേക്ക് നിങ്ങൾക്ക് പ്രവേശനം വേണമെങ്കിൽ, ആ ഡാറ്റ അഭ്യർത്ഥിക്കാനും ഫിൽട്ടർ ചെയ്യാനും നിങ്ങൾ ആഗ്രഹിക്കുന്നുണ്ടെങ്കിൽ, നിങ്ങൾ കൂടുതൽ പണം നൽകേണ്ടിവരും.


At the very bottom tier, Twitter offers a trial “search API” that allows you to sift through 30 days’ worth of tweets, provided you request no more than 100 tweets per query, and query no more than 30 times per minute.

ഏറ്റവും താഴെയുള്ള നിലയിൽ, Twitter ഒരു ട്രയൽ “search API” വാഗ്ദാനം ചെയ്യുന്നു, ഇത് ഒരു ചോദ്യത്തിന് 100-ൽ കൂടുതൽ ട്വീറ്റുകൾ അഭ്യർത്ഥിക്കാത്തതും, ഒരു മിനിറ്റിൽ 30-ൽ കൂടുതൽ തവണ ചോദ്യം ചെയ്യാത്തതുമാണെങ്കിൽ, 30 ദിവസത്തെ ട്വീറ്റുകൾ പരിശോധിക്കാൻ നിങ്ങളെ അനുവദിക്കുന്നു.


We can use this API to build a JSON that contains links to *.mega-bank.com in order to further our subdomain recon.

ഞങ്ങളുടെ സബ്‌ഡൊമെയ്ൻ റീകോൺ കൂടുതൽ മെച്ചപ്പെടുത്തുന്നതിന് *.mega-bank.com-ലേക്കുള്ള ലിങ്കുകൾ അടങ്ങിയ ഒരു JSON നിർമ്മിക്കാൻ ഈ API ഉപയോഗിക്കാം.


Recording the results of this API and searching for links may lead to the discovery of previously unknown subdomains.

ഈ API-യുടെ ഫലങ്ങൾ രേഖപ്പെടുത്തുന്നതും ലിങ്കുകൾക്കായി തിരയുന്നതും മുമ്പ് അറിയപ്പെടാത്ത സബ്‌ഡൊമെയ്‌നുകൾ കണ്ടെത്താൻ സഹായിച്ചേക്കാം.


For a real-life example, try to construct a query that would request tweets regarding Microsoft.

ഒരു യഥാർത്ഥ ഉദാഹരണത്തിനായി, Microsoft നെക്കുറിച്ചുള്ള ട്വീറ്റുകൾ അഭ്യർത്ഥിക്കുന്ന ഒരു ചോദ്യം ഉണ്ടാക്കാൻ ശ്രമിക്കുക.


You can find dnscan’s subdomain lists, and source code on GitHub.

നിങ്ങൾക്ക് GitHub-ൽ dnscan-ൻ്റെ സബ്‌ഡൊമെയ്ൻ ലിസ്റ്റുകളും സോഴ്സ് കോഡും കണ്ടെത്താനാകും.


We can easily plug a dictionary like dnscan into our script.

നമ്മുടെ സ്ക്രിപ്റ്റിലേക്ക് dnscan പോലുള്ള ഒരു നിഘണ്ടു എളുപ്പത്തിൽ പ്ലഗ് ചെയ്യാൻ കഴിയും.


For smaller lists, you can simply copy/paste/hardcode the strings into the script.

ചെറിയ ലിസ്റ്റുകൾക്കായി, നിങ്ങൾക്ക് സ്ട്രിംഗുകൾ സ്ക്രിപ്റ്റിലേക്ക് പകർത്തി ഒട്ടിക്കുകയോ ഹാർഡ്‌കോഡ് ചെയ്യുകയോ ചെയ്യാം.


For large lists, like dnscan’s 10,000 subdomain list, we should keep the data separate from the script and pull it in at runtime.

dnscan-ൻ്റെ 10,000 സബ്‌ഡൊമെയ്ൻ ലിസ്റ്റ് പോലുള്ള വലിയ ലിസ്റ്റുകൾക്കായി, ഡാറ്റ സ്ക്രിപ്റ്റിൽ നിന്ന് വേർതിരിച്ച് റൺടൈമിൽ ഉൾപ്പെടുത്തണം.


This will make it much easier to modify the subdomain list, or make use of other subdomain lists.

സബ്‌ഡൊമെയ്ൻ ലിസ്റ്റ് പരിഷ്കരിക്കാനും മറ്റ് സബ്‌ഡൊമെയ്ൻ ലിസ്റ്റുകൾ ഉപയോഗിക്കാനും ഇത് വളരെ എളുപ്പമാക്കും.


Most of these lists will be in .csv format, making integra‐ tion into your subdomain recon script very simple.

ഈ ലിസ്റ്റുകളിൽ മിക്കതും .csv ഫോർമാറ്റിൽ ആയിരിക്കും, ഇത് നിങ്ങളുടെ സബ്‌ഡൊമെയ്ൻ റീകോൺ സ്ക്രിപ്റ്റിലേക്ക് സംയോജിപ്പിക്കുന്നത് വളരെ ലളിതമാക്കുന്നു.


Because the dictionary approach is much more efficient than the brute force approach, it may be wise to begin with a dictionary and then use a brute force subdo‐ main generation only if the dictionary does not return the results you are seeking.

നിഘണ്ടു സമീപനം ബ്രൂട്ട് ഫോഴ്സ് സമീപനത്തേക്കാൾ വളരെ കാര്യക്ഷമമായതിനാൽ, ഒരു നിഘണ്ടുവിൽ ആരംഭിച്ച്, നിങ്ങൾ തിരയുന്ന ഫലങ്ങൾ നിഘണ്ടു നൽകുന്നില്ലെങ്കിൽ മാത്രം ബ്രൂട്ട് ഫോഴ്സ് സബ്‌ഡൊമെയ്ൻ ഉണ്ടാക്കുന്നത് നല്ലതാണ്.


When performing recon against a web application, the main goal should be to build a map of the application that can be used later when prioritizing and deploying attack payloads.

ഒരു വെബ് ആപ്ലിക്കേഷനെതിരെ റീകോൺ നടത്തുമ്പോൾ, ആക്രമണ പേലോഡുകൾക്ക് മുൻഗണന നൽകുകയും വിന്യസിക്കുകയും ചെയ്യുമ്പോൾ പിന്നീട് ഉപയോഗിക്കാവുന്ന ആപ്ലിക്കേഷന്റെ ഒരു മാപ്പ് ഉണ്ടാക്കുക എന്നതാണ് പ്രധാന ലക്ഷ്യം.


Consumer-facing domains, such as the client of a banking website, usually get the most scrutiny.

ബാങ്കിംഗ് വെബ്‌സൈറ്റിന്റെ ക്ലയിന്റ് പോലുള്ള ഉപഭോക്തൃ-മുഖമുള്ള ഡൊമെയ്‌നുകൾക്കാണ് സാധാരണയായി ഏറ്റവും കൂടുതൽ പരിശോധന ലഭിക്കുന്നത്.


Bugs will be fixed rapidly, as visitors are exposed to them on a daily basis.

ദിവസവും സന്ദർശകർക്ക് ഇത് കാണുന്നതിനാൽ ബഗുകൾ വേഗത്തിൽ പരിഹരിക്കും.


Servers that run behind the scenes, like a mail server or admin backdoor, are often riddled with bugs as they have much less use and exposure.

മെയിൽ സെർവർ അല്ലെങ്കിൽ അഡ്‌മിൻ ബാക്ക്‌ഡോർ പോലുള്ള രംഗത്ത് പ്രവർത്തിക്കുന്ന സെർവറുകളിൽ പലപ്പോഴും ബഗുകൾ ഉണ്ടാകാറുണ്ട്, കാരണം അവയ്ക്ക് ഉപയോഗവും എക്സ്പോഷറും കുറവാണ്.


Often, finding one of these “behind-the-scenes” APIs can be a beneficial jumpstart when searching for vul‐ nerabilities to exploit in an application.

പലപ്പോഴും, ഇത്തരം “പിന്നണിയിലുള്ള” API-കളിൽ ഒരെണ്ണം കണ്ടെത്തുന്നതിലൂടെ ഒരു ആപ്ലിക്കേഷനിൽ ചൂഷണത്തിനായി ദുർബലതകൾ തിരയുമ്പോൾ ഒരു നല്ല തുടക്കം ലഭിക്കും.


A number of techniques should be used when trying to find subdomains, as one tech‐ nique may not provide comprehensive results.

സബ്‌ഡൊമെയ്‌നുകൾ കണ്ടെത്താൻ ശ്രമിക്കുമ്പോൾ നിരവധി സാങ്കേതിക വിദ്യകൾ ഉപയോഗിക്കണം, കാരണം ഒരു സാങ്കേതിക വിദ്യ പൂർണ്ണമായ ഫലങ്ങൾ നൽകണമെന്നില്ല.


Once you believe you have performed sufficient reconnaissance and have collected a few subdomains for the domain you are testing against, you can move on to other recon techniques—but you are always welcome to come back and look for more if you are not having luck with more obvi‐ ous attack vectors.

നിങ്ങൾ മതിയായ റീകോൺ നടത്തിയെന്നും നിങ്ങൾ പരീക്ഷിക്കുന്ന ഡൊമെയ്‌നിനായി കുറച്ച് സബ്‌ഡൊമെയ്‌നുകൾ ശേഖരിച്ചെന്നും വിശ്വസിച്ചു കഴിഞ്ഞാൽ, നിങ്ങൾക്ക് മറ്റ് റീകോൺ ടെക്നിക്കുകളിലേക്ക് നീങ്ങാം - എന്നാൽ കൂടുതൽ വ്യക്തമായ ആക്രമണ രീതികളിൽ നിങ്ങൾക്ക് ഭാഗ്യമില്ലെങ്കിൽ, കൂടുതൽ കാര്യങ്ങൾക്കായി നിങ്ങൾക്ക് എപ്പോഴും തിരികെ വരാവുന്നതാണ്.


API endpoint analysis is the next logical skill in a recon toolkit after subdomain discovery.

സബ്‌ഡൊമെയ്ൻ കണ്ടെത്തിയ ശേഷം, ഒരു റീകോൺ ടൂൾകിറ്റിലെ അടുത്ത യുക്തിപരമായ കഴിവാണ് API എൻഡ്‌പോയിന്റ് വിശകലനം.


What domains does this application make use of?

ഈ ആപ്ലിക്കേഷൻ ഏതൊക്കെ ഡൊമെയ്‌നുകളാണ് ഉപയോഗിക്കുന്നത്?


If this application has three domains (x.domain, y.domain, and z.domain, for example), I should be aware that each of them may have their own unique API endpoints.

ഈ ആപ്ലിക്കേഷന് മൂന്ന് ഡൊമെയ്‌നുകൾ ഉണ്ടെങ്കിൽ (ഉദാഹരണത്തിന്, x.domain, y.domain, z.domain), അവ ഓരോന്നിനും അതിൻ്റേതായ API എൻഡ്‌പോയിന്റുകൾ ഉണ്ടാകാൻ സാധ്യതയുണ്ടെന്ന് ഞാൻ അറിഞ്ഞിരിക്കണം.


Generally speaking, we can use very similar techniques to those we used when attempting to find subdomains.

പൊതുവായി പറഞ്ഞാൽ, സബ്‌ഡൊമെയ്‌നുകൾ കണ്ടെത്താൻ ശ്രമിക്കുമ്പോൾ ഉപയോഗിച്ചതിന് സമാനമായ സാങ്കേതിക വിദ്യകൾ നമുക്ക് ഉപയോഗിക്കാം.


Brute force attacks and dictionary attacks work well here, but manual efforts and logical analysis are also often rewarded.

ബ്രൂട്ട് ഫോഴ്സ് ആക്രമണങ്ങളും നിഘണ്ടു ആക്രമണങ്ങളും ഇവിടെ നന്നായി പ്രവർത്തിക്കും, എന്നാൽ മാനുവൽ ശ്രമങ്ങൾക്കും ലോജിക്കൽ വിശകലനത്തിനും പലപ്പോഴും ഫലമുണ്ടാകാറുണ്ട്.


Finding APIs is the second step in learning about the structure of a web application following discovery of subdomains.

സബ്‌ഡൊമെയ്‌നുകൾ കണ്ടെത്തിയ ശേഷം ഒരു വെബ് ആപ്ലിക്കേഷന്റെ ഘടനയെക്കുറിച്ച് പഠിക്കുന്നതിനുള്ള രണ്ടാമത്തെ ഘട്ടമാണ് API-കൾ കണ്ടെത്തുന്നത്.


If you cannot inspect elements on a VueJS app, it is likely because the app was configured to ignore developer tools.

നിങ്ങൾക്ക് VueJS ആപ്പിൽ ഘടകങ്ങൾ പരിശോധിക്കാൻ കഴിയുന്നില്ലെങ്കിൽ, ഡെവലപ്പർ ടൂളുകൾ അവഗണിക്കാൻ ആപ്പ് കോൺഫിഗർ ചെയ്തിരിക്കാനുള്ള സാധ്യതയുണ്ട്.


You can flip this property to true in order to begin inspecting VueJS components in the browser console again.

ബ്രൗസർ കൺസോളിൽ VueJS ഘടകങ്ങൾ വീണ്ടും പരിശോധിക്കാൻ തുടങ്ങുന്നതിന്, നിങ്ങൾക്ക് ഈ പ്രോപ്പർട്ടി ശരിയിലേക്ക് മാറ്റാൻ കഴിയും.


Many JavaScript libraries use the top-level global objects for namespacing their functions.

പല JavaScript ലൈബ്രറികളും അവരുടെ ഫംഗ്ഷനുകൾക്ക് പേരുകൾ നൽകുന്നതിന് ടോപ് ലെവൽ ഗ്ലോബൽ ഒബ്ജക്റ്റുകൾ ഉപയോഗിക്കുന്നു.


These libraries are very easy to detect and iterate through.

ഈ ലൈബ്രറികൾ കണ്ടെത്താനും ആവർത്തിക്കാനും വളരെ എളുപ്പമാണ്.


We can make use of the DOM’s querySelectorAll function to rapidly find a list of all third-party scripts imported into the page.

പേജിലേക്ക് ഇറക്കുമതി ചെയ്ത എല്ലാ മൂന്നാം കക്ഷി സ്ക്രിപ്റ്റുകളുടെയും ഒരു ലിസ്റ്റ് വേഗത്തിൽ കണ്ടെത്താൻ, നമുക്ക് DOM-ൻ്റെ querySelectorAll ഫംഗ്ഷൻ ഉപയോഗിക്കാം.


Iterate through each `<script>` element, and check if the element contains a source (src) attribute that is not empty.

ഓരോ `<script>` ഘടകത്തിലൂടെയും കടന്നുപോവുക, കൂടാതെ ശൂന്യമല്ലാത്ത ഒരു source (src) ആട്രിബ്യൂട്ട് ഘടകത്തിൽ അടങ്ങിയിട്ടുണ്ടോയെന്ന് പരിശോധിക്കുക.


Calling this function will give us output like this: getScripts();

ഈ ഫംഗ്ഷൻ വിളിക്കുന്നത് ഇതുപോലെയുള്ള ഔട്ട്പുട്ട് നൽകും: getScripts();


From here we need to directly access the scripts individually in order to determine orders, configurations, etc.

ഓർഡറുകളും, കോൺഫിഗറേഷനുകളും മുതലായവ നിർണ്ണയിക്കാൻ, ഇവിടെ നിന്ന് നമ്മൾ സ്ക്രിപ്റ്റുകൾ വ്യക്തിഗതമായി നേരിട്ട് ആക്സസ് ചെയ്യേണ്ടതുണ്ട്.


With minor modifications to the algorithm to detect scripts, we can also detect CSS.

സ്ക്രിപ്റ്റുകൾ കണ്ടെത്താനുള്ള അൽഗോരിതത്തിൽ ചെറിയ മാറ്റങ്ങൾ വരുത്തുന്നതിലൂടെ, നമുക്ക് CSS-ഉം കണ്ടെത്താനാകും.


Most of the time, all of the code required for the client is downloaded and stored in memory referenced via the DOM.

മിക്ക സമയത്തും, ക്ലയിൻ്റിന് ആവശ്യമായ എല്ലാ കോഡുകളും ഡൗൺലോഡ് ചെയ്യുകയും DOM വഴി റഫറൻസ് ചെയ്ത് മെമ്മറിയിൽ സംഭരിക്കുകയും ചെയ്യുന്നു.


Detecting what dependencies a server has is much harder, but often not impossible.

ഒരു സെർവറിന് എന്തൊക്കെ ഡിപ്പൻഡൻസികളുണ്ട് എന്ന് കണ്ടെത്തുന്നത് വളരെ ബുദ്ധിമുട്ടാണ്, എന്നാൽ പലപ്പോഴും അസാധ്യമല്ല.


Sometimes server-side dependencies leave a distinct mark on HTTP traffic (headers, optional fields) or expose their own endpoints.

ചിലപ്പോൾ സെർവർ-സൈഡ് ഡിപ്പൻഡൻസികൾ HTTP ട്രാഫിക്കിൽ (ഹെഡറുകൾ, ഓപ്ഷണൽ ഫീൽഡുകൾ) ഒരു പ്രത്യേക അടയാളം അവശേഷിപ്പിക്കും അല്ലെങ്കിൽ അവയുടെ സ്വന്തം എൻഡ്‌പോയിന്റുകൾ എക്സ്പോസ് ചെയ്യും.


A prime example of this is the X-Powered-By header, which will literally give away the name and version of a web server.

ഇതിനൊരു പ്രധാന ഉദാഹരണമാണ് X-Powered-By header, ഇത് ഒരു വെബ് സെർവറിൻ്റെ പേരും പതിപ്പും വ്യക്തമായി നൽകും.


Smart server administrators disable these headers, and smart development teams remove them from the default configuration.

സെർവർ അഡ്മിനിസ്ട്രേറ്റർമാർ ഈ ഹെഡറുകൾ പ്രവർത്തനരഹിതമാക്കുന്നു, കൂടാതെ മികച്ച ഡെവലപ്‌മെൻ്റ് ടീമുകൾ അവ ഡിഫോൾട്ട് കോൺഫിഗറേഷനിൽ നിന്ന് നീക്കംചെയ്യുന്നു.


But there are still millions of websites exposing these headers to be read by anyone.

എന്നാൽ ആർക്കും വായിക്കാൻ കഴിയുന്ന ഈ ഹെഡറുകൾ എക്സ്പോസ് ചെയ്യുന്ന ദശലക്ഷക്കണക്കിന് വെബ്‌സൈറ്റുകൾ ഇപ്പോഴും ഉണ്ട്.


If these frameworks are open source, like Ruby on Rails, then you may be able to determine the version used via fingerprinting.

ഈ ഫ്രെയിംവർക്കുകൾ Ruby on Rails പോലെ ഓപ്പൺ സോഴ്സ് ആണെങ്കിൽ, ഫിംഗർപ്രിൻ്റിംഗ് വഴി ഉപയോഗിച്ച പതിപ്പ് നിങ്ങൾക്ക് നിർണ്ണയിക്കാൻ കഴിഞ്ഞേക്കും.


Ruby on Rails is one of the largest open source web application frameworks, and its source code is hosted on GitHub for easier collaboration.

Ruby on Rails ഏറ്റവും വലിയ ഓപ്പൺ സോഴ്സ് വെബ് ആപ്ലിക്കേഷൻ ഫ്രെയിംവർക്കുകളിൽ ഒന്നാണ്, കൂടാതെ എളുപ്പത്തിൽ സഹകരിക്കുന്നതിനായി ഇതിൻ്റെ സോഴ്സ് കോഡ് GitHub-ൽ ഹോസ്റ്റ് ചെയ്തിരിക്കുന്നു.


Have you ever visited a web application and been presented with a standard 404 page or had an out-of-the-box error message pop up?

നിങ്ങൾ എപ്പോഴെങ്കിലും ഒരു വെബ് ആപ്ലിക്കേഷൻ സന്ദർശിക്കുകയും ഒരു സാധാരണ 404 പേജ് കാണുകയും അല്ലെങ്കിൽ ഒരു ഔട്ട്-ഓഫ്-ദ-ബോക്സ് എറർ സന്ദേശം പോപ്പ് അപ്പ് ചെയ്യുകയും ചെയ്തിട്ടുണ്ടോ?


Most web servers provide their own default error messages and 404 pages, which continue to be presented to users until they are replaced with a custom alternative by the owner of the web application.

മിക്ക വെബ് സെർവറുകളും അവരുടെ സ്വന്തം ഡിഫോൾട്ട് എറർ സന്ദേശങ്ങളും 404 പേജുകളും നൽകുന്നു, ഇത് വെബ് ആപ്ലിക്കേഷന്റെ ഉടമസ്ഥൻ ഒരു ഇഷ്ടമുള്ള മാറ്റം വരുത്തുന്നത് വരെ ഉപയോക്താക്കൾക്ക് നൽകുന്നത് തുടരും.


If you clone the Ruby on Rails repository on your local machine (using git clone https://github.com/rails/rails) and begin sifting through the changes to that page (using git log | grep 404), you may find some interesting tidbits of information.

നിങ്ങൾ നിങ്ങളുടെ ല local കൽ മെഷീനിൽ Ruby on Rails ശേഖരം ക്ലോൺ ചെയ്യുകയാണെങ്കിൽ (git clone https://github.com/rails/rails ഉപയോഗിച്ച്) ആ പേജിലെ മാറ്റങ്ങളിലൂടെ കടന്നുപോകുമ്പോൾ (git log | grep 404 ഉപയോഗിച്ച്), നിങ്ങൾക്ക് ചില രസകരമായ വിവരങ്ങൾ കണ്ടെത്താനാകും.


Different mechanisms can detect different attack payloads as well.

വിവിധ ആക്രമണ പേലോഡുകൾ കണ്ടെത്താൻ വ്യത്യസ്ത സംവിധാനങ്ങൾക്ക് കഴിയും.


The headless browser may detect script execution, but should a browser-specific API have a bug, it may be possible for the script to bypass this mechanism.

ഹെഡ്‌ലെസ് ബ്രൗസർ സ്ക്രിപ്റ്റ് എക്സിക്യൂഷൻ കണ്ടെത്താൻ സാധ്യതയുണ്ട്, എന്നാൽ ഒരു ബ്രൗസർ-നിർദ്ദിഷ്ട API-യിൽ ഒരു ബഗ് ഉണ്ടെങ്കിൽ, ഈ സംവിധാനം മറികടക്കാൻ സ്ക്രിപ്റ്റിന് കഴിഞ്ഞേക്കാം.


This could occur because the payload would not execute in the headless browser but only in the browser of a user with a vulnerable browser version.

പേലോഡ് ഹെഡ്‌ലെസ് ബ്രൗസറിൽ പ്രവർത്തിക്കാത്തതിനാലും, ദുർബലമായ ബ്രൗസർ പതിപ്പുള്ള ഒരു ഉപയോക്താവിൻ്റെ ബ്രൗസറിൽ മാത്രം പ്രവർത്തിക്കുന്നതിനാലും ഇത് സംഭവിക്കാം.


All of these examples suggest that the most secure web applications introduce security mechanisms at many layers, while insecure web applications introduce security mechanisms at only one or two layers.

ഏറ്റവും സുരക്ഷിതമായ വെബ് ആപ്ലിക്കേഷനുകൾ നിരവധി ലെയറുകളിൽ സുരക്ഷാ സംവിധാനങ്ങൾ അവതരിപ്പിക്കുന്നു, എന്നാൽ സുരക്ഷിതമല്ലാത്ത വെബ് ആപ്ലിക്കേഷനുകൾ ഒന്നോ രണ്ടോ ലെയറുകളിൽ മാത്രം സുരക്ഷാ സംവിധാനങ്ങൾ അവതരിപ്പിക്കുന്നു എന്ന് ഈ ഉദാഹരണങ്ങളെല്ലാം സൂചിപ്പിക്കുന്നു.


When testing web applications, you want to look for functionality in an application that makes use of a few security mechanisms or requires a significant number of layers.

വെബ് ആപ്ലിക്കേഷനുകൾ പരീക്ഷിക്കുമ്പോൾ, കുറച്ച് സുരക്ഷാ സംവിധാനങ്ങൾ ഉപയോഗിക്കുന്ന അല്ലെങ്കിൽ ധാരാളം ലെയറുകൾ ആവശ്യമുള്ള ഒരു ആപ്ലിക്കേഷനിലെ പ്രവർത്തനക്ഷമത നിങ്ങൾ കണ്ടെത്താൻ ശ്രമിക്കണം.


If you can isolate and determine what functionality meets this criteria, it should be prioritized above the rest when looking for vulnerabilities as it is more likely to be exploitable.

ഏത് പ്രവർത്തനമാണ് ഈ മാനദണ്ഡങ്ങൾ പാലിക്കുന്നതെന്ന് നിങ്ങൾക്ക് വേർതിരിച്ചറിയാൻ കഴിയുമെങ്കിൽ, സാധ്യതയുള്ള പ്രശ്നങ്ങൾ കണ്ടെത്തുന്നതിന് മുൻഗണന നൽകണം, കാരണം ഇത് ചൂഷണം ചെയ്യാൻ കൂടുതൽ സാധ്യതയുണ്ട്.


A final risk factor to pay attention to is the desire for developers to reinvent existing technology.

ശ്രദ്ധിക്കേണ്ട ഒരു പ്രധാന അപകട ഘടകം, നിലവിലുള്ള സാങ്കേതികവിദ്യ വീണ്ടും കണ്ടുപിടിക്കാനുള്ള ഡെവലപ്പർമാരുടെ ആഗ്രഹമാണ്.


Generally, this does not start as an architecture problem.

സാധാരണയായി, ഇത് ഒരു ആർക്കിടെക്ചർ പ്രശ്നമായി ആരംഭിക്കുന്നില്ല.


Instead it is usually an organizational problem, which is reflected and visible in the application architecture.

പകരം, ഇത് സാധാരണയായി ഒരു ഓർഗനൈസേഷണൽ പ്രശ്നമാണ്, ഇത് ആപ്ലിക്കേഷൻ ആർക്കിടെക്ചറിൽ പ്രതിഫലിക്കുകയും ദൃശ്യമാവുകയും ചെയ്യുന്നു.


This is commonplace in many software companies, as reinventing tools or features comes with a number of benefits from a development perspective.

പുനർനിർമ്മിക്കുന്ന ടൂളുകളോ ഫീച്ചറുകളോ വികസനപരമായ വീക്ഷണകോണിൽ നിന്ന് നിരവധി നേട്ടങ്ങൾ നൽകുന്നതിനാൽ, ഇത് പല സോഫ്റ്റ്‌വെയർ കമ്പനികളിലും സാധാരണമാണ്.


സങ്കീർണ്ണമായ ലൈസൻസുകൾ ഒഴിവാക്കുക.


Adding additional functionality to the feature.

സവിശേഷതയിലേക്ക് അധിക പ്രവർത്തനക്ഷമത ചേർക്കുക.


Creating publicity via marketing the new tool or feature.

പുതിയ ടൂളോ ഫീച്ചറോ വിപണനം ചെയ്യുന്നതിലൂടെ പ്രസിദ്ധി നേടുക.


Beyond that, creating a feature from scratch is usually much more fun and challenging than repurposing an existing open source or paid tool.

അതുകൂടാതെ, ഒരു ഫീച്ചർ ആദ്യം മുതൽ ഉണ്ടാക്കുന്നത് നിലവിലുള്ള ഒരു ഓപ്പൺ സോഴ്സ് അല്ലെങ്കിൽ പണമടച്ചുള്ള ടൂൾ വീണ്ടും ഉപയോഗിക്കുന്നതിനേക്കാൾ രസകരവും വെല്ലുവിളി നിറഞ്ഞതുമാണ്.


But it is not always bad to reinvent, so each case must be evaluated individually.

എന്നാൽ വീണ്ടും കണ്ടുപിടിക്കുന്നത് എപ്പോഴും മോശമല്ല, അതിനാൽ ഓരോ കേസും വ്യക്തിപരമായി വിലയിരുത്തണം.


There are scenarios where reinvention of existing software may bring more benefits than pitfalls to a company.

നിലവിലുള്ള സോഫ്റ്റ്‌വെയർ വീണ്ടും കണ്ടുപിടിക്കുന്നത് ഒരു കമ്പനിക്ക് പോരായ്മകളേക്കാൾ കൂടുതൽ നേട്ടങ്ങൾ നൽകുന്ന സാഹചര്യങ്ങളുണ്ട്.


An example of this would be if the best tool had a licensing agreement that required a significant commission leading to negative margins, or prohibited alteration so that the application would forgo essential functionality.

ഒരു മികച്ച ടൂളിന് നെഗറ്റീവ് മാർജിനിലേക്ക് നയിക്കുന്ന ഒരു പ്രധാന കമ്മീഷൻ ആവശ്യമായ ലൈസൻസിംഗ് കരാർ ഉണ്ടെങ്കിൽ അല്ലെങ്കിൽ ആപ്ലിക്കേഷൻ്റെ പ്രധാന പ്രവർത്തനങ്ങൾ ഒഴിവാക്കുന്ന തരത്തിൽ മാറ്റങ്ങൾ വരുത്തുന്നത് തടയുകയാണെങ്കിൽ ഇത് സംഭവിക്കാം.


On the other hand, reinvention is risky from a security point of view.

മറുവശത്ത്, സുരക്ഷാപരമായ കാര്യത്തിൽ വീണ്ടും കണ്ടുപിടിക്കുന്നത് അപകടകരമാണ്.


The risk waxes and wanes based on the particular functionality being reinvented, but can span anywhere from a moderate security risk all the way to an extreme security risk.

വീണ്ടും കണ്ടുപിടിക്കുന്ന പ്രത്യേക പ്രവർത്തനത്തെ ആശ്രയിച്ച് അപകടസാധ്യതകൾ വർധിക്കുകയും കുറയുകയും ചെയ്യും, എന്നാൽ മിതമായ സുരക്ഷാ ഭീഷണി മുതൽ കടുത്ത സുരക്ഷാ ഭീഷണി വരെ ഇത് വ്യാപിക്കും.


In particular, well-versed security engineers suggest never rolling your own cryptography.

പ്രത്യേകിച്ചും, നല്ല പരിചയമുള്ള സുരക്ഷാ എഞ്ചിനീയർമാർ സ്വന്തമായി ക്രിപ്റ്റോഗ്രഫി ഉണ്ടാക്കരുതെന്ന് നിർദ്ദേശിക്കുന്നു.


ഈ കോഡ് ഒരു സംഭരണ XSS ആക്രമണമാണ്.


When a script tag hits the DOM via JavaScript, the browser's JavaScript interpreter is immediately invoked.

ഒരു സ്ക്രിപ്റ്റ് ടാഗ് JavaScript വഴി DOM-ൽ എത്തുമ്പോൾ, ബ്രൗസറിൻ്റെ JavaScript ഇന്റർപ്രെറ്റർ ഉടനടി പ്രവർത്തിക്കും.


This means that our code would run without any interaction required from the customer support rep.

അതായത്, ഉപഭോക്തൃ പിന്തുണാ പ്രതിനിധിയുടെ ഒരു ഇടപെടലും ഇല്ലാതെ തന്നെ ഞങ്ങളുടെ കോഡ് പ്രവർത്തിക്കും.


We are traversing the DOM using document.querySelector() and stealing privileged data.

document.querySelector() ഉപയോഗിച്ച് ഞങ്ങൾ DOM-ൽ സഞ്ചരിക്കുകയും പ്രത്യേക അവകാശങ്ങളുള്ള ഡാറ്റ മോഷ്ടിക്കുകയും ചെയ്യുന്നു.


We find this data in the UI, convert it to a nice JSON for readability and easy storage.

UI-യിൽ നിന്ന് ഈ ഡാറ്റ കണ്ടെത്തി, വായനാക്ഷമതയ്ക്കും എളുപ്പത്തിൽ സംഭരിക്കുന്നതിനും വേണ്ടി നല്ല JSON-ലേക്ക് മാറ്റുന്നു.


The scariest thing about this is that because this code is inside of a script tag, it would not appear to the customer support rep.

ഏറ്റവും ഭയപ്പെടുത്തുന്ന കാര്യം എന്തെന്നാൽ, ഈ കോഡ് ഒരു സ്ക്രിപ്റ്റ് ടാഗിനുള്ളിൽ ആയതുകൊണ്ട്, ഇത് ഉപഭോക്തൃ പിന്തുണാ പ്രതിനിധിക്ക് ദൃശ്യമാകില്ല.


This is a classic example of a stored XSS attack.

ഇതൊരു സംഭരണ XSS ആക്രമണത്തിൻ്റെ ക്ലാസിക് ഉദാഹരണമാണ്.


Stored XSS attacks are probably the most common type of XSS attack.

സംഭരണ XSS ആക്രമണങ്ങൾ ഒരുപക്ഷേ XSS ആക്രമണങ്ങളിൽ ഏറ്റവും സാധാരണമായ ഒന്നാണ്.


A stored database object can be viewed by many users.

സംഭരിച്ച ഡാറ്റാബേസ് ഒബ്ജക്റ്റ് നിരവധി ഉപയോക്താക്കൾക്ക് കാണാൻ കഴിയും.


For these reasons, stored XSS attacks can be extremely deadly to an organization.

ഈ കാരണങ്ങളാൽ, സംഭരണ XSS ആക്രമണങ്ങൾ ഒരു സ്ഥാപനത്തിന് വളരെ അപകടകരമാണ്.


The permanent nature of a stored XSS makes detection quite easy.

സംഭരണ XSS-ൻ്റെ സ്ഥിരമായ സ്വഭാവം കണ്ടെത്തൽ എളുപ്പമാക്കുന്നു.


Regularly scanning database entries for signs of stored script could be a cheap and efficient mitigation plan.

സംഭരിച്ച സ്ക്രിപ്റ്റിൻ്റെ ലക്ഷണങ്ങൾക്കായി പതിവായി ഡാറ്റാബേസ് എൻട്രികൾ സ്കാൻ ചെയ്യുന്നത് ചെലവുകുറഞ്ഞതും കാര്യക്ഷമവുമായ ഒരു ലഘൂകരണ പദ്ധതിയായിരിക്കും.


The example we used earlier when demonstrating a stored XSS attack injected a script tag directly into the DOM.

ഒരു സംഭരണ XSS ആക്രമണം എങ്ങനെയാണെന്ന് വിവരിക്കുന്നതിന് മുമ്പ് നമ്മൾ ഉപയോഗിച്ച ഉദാഹരണത്തിൽ ഒരു സ്ക്രിപ്റ്റ് ടാഗ് DOM-ലേക്ക് നേരിട്ട് ഉൾപ്പെടുത്തി.


The only requirement for an XSS attack to be categorized as “stored” is that the payload must be stored in the application’s database.

ഒരു XSS ആക്രമണത്തെ “സംഭരിച്ചത്” എന്ന് തരം തിരിക്കാനുള്ള ഒരേയൊരു വ്യവസ്ഥ, പേലോഡ് ആപ്ലിക്കേഷന്റെ ഡാറ്റാബേസിൽ സംഭരിക്കണം എന്നതാണ്.


Reflected XSS attacks, on the other hand, operate identically to stored XSS attacks but are not stored in a database.

മറുവശത്ത്, പ്രതിഫലിക്കുന്ന XSS ആക്രമണങ്ങൾ സംഭരണ XSS ആക്രമണങ്ങൾക്ക് സമാനമായി പ്രവർത്തിക്കുന്നു, പക്ഷേ ഒരു ഡാറ്റാബേസിൽ സംഭരിക്കപ്പെടുന്നില്ല.


A reflected XSS affects the code of the client in the browser directly.

ഒരു പ്രതിഫലിക്കുന്ന XSS, ബ്രൗസറിലെ ക്ലയിൻ്റിൻ്റെ കോഡിനെ നേരിട്ട് ബാധിക്കുന്നു.


നമുക്ക് ഒരു ഉദാഹരണം നോക്കാം.


ഈ തിരയൽ നമ്മെ ഒരു പുതിയ URL-ലേക്ക് റീഡയറക്‌ട് ചെയ്യുന്നു.


From this we can gather that there is a correlation between the URL query params and the heading displayed on the results page.

URL ചോദ്യ പാരാമീറ്ററുകളും ഫല പേജിൽ പ്രദർശിപ്പിക്കുന്ന ശീർഷകവും തമ്മിൽ ബന്ധമുണ്ടെന്ന് ഇതിൽ നിന്ന് നമുക്ക് മനസ്സിലാക്കാം.


Opening up this URL loads the search results, but initially pops up an alert modal.

ഈ URL തുറക്കുമ്പോൾ തിരയൽ ഫലങ്ങൾ ലോഡ് ചെയ്യും, എന്നാൽ തുടക്കത്തിൽ ഒരു അലേർട്ട് മോഡൽ പോപ്പ് അപ്പ് ആകും.


The PHP code intermingling with SQL and HTML made SQL injection easier.

PHP കോഡും SQL ഉം HTML ഉം തമ്മിൽ കലർത്തിയത് SQL ഇൻജക്ഷൻ എളുപ്പമാക്കി.


Even large PHP applications like WordPress have been victims of SQL injection.

വേർഡ്പ്രസ് പോലുള്ള വലിയ PHP ആപ്ലിക്കേഷനുകൾ പോലും SQL ഇൻജക്ഷൻ്റെ ഇരകളായിട്ടുണ്ട്.


PHP coding standards have become stricter in recent years.

PHP കോഡിംഗ് നിലവാരം സമീപ വർഷങ്ങളിൽ കൂടുതൽ കർശനമായിട്ടുണ്ട്.


PHP's popularity has declined since 2010.

2010 മുതൽ PHP യുടെ പ്രചാരം കുറഞ്ഞു.


Injection vulnerabilities have decreased significantly.

ഇൻജക്ഷൻ ദൗർബല്യങ്ങൾ ഗണ്യമായി കുറഞ്ഞു.


SQL injection is still possible in applications without secure coding practices.

സുരക്ഷിതമായ കോഡിംഗ് രീതികളില്ലാത്ത ആപ്ലിക്കേഷനുകളിൽ ഇപ്പോഴും SQL ഇൻജക്ഷൻ സാധ്യമാണ്.


Direct string concatenation can lead to vulnerabilities.

നേരിട്ടുള്ള സ്ട്രിംഗ് കൂട്ടിച്ചേർക്കൽ ദൗർബല്യങ്ങളിലേക്ക് നയിച്ചേക്കാം.


A malicious user_id can return many objects from the database.

ഒരു ദോഷകരമായ user_id-ക്ക് ഡാറ്റാബേസിൽ നിന്ന് ധാരാളം ഒബ്ജക്റ്റുകൾ തിരികെ നൽകാൻ കഴിയും.


The query can be manipulated with a truthy evaluation.

ഒരു സത്യമായ മൂല്യനിർണ്ണയം ഉപയോഗിച്ച് ചോദ്യം കൈകാര്യം ചെയ്യാൻ കഴിയും.


Additional queries can be appended to the original query.

തുടക്കത്തിലുള്ള ചോദ്യത്തിലേക്ക് അധിക ചോദ്യങ്ങൾ ചേർക്കാൻ കഴിയും.


SQL injection attacks have defenses developed over two decades.

SQL ഇൻജക്ഷൻ ആക്രമണങ്ങൾ പ്രതിരോധത്തിനായി രണ്ട് പതിറ്റാണ്ടുകളായി വികസിപ്പിച്ചെടുത്തിട്ടുണ്ട്.


SQL injection is a subset of injection-style attacks.

SQL ഇൻജക്ഷൻ, ഇൻജക്ഷൻ ശൈലിയിലുള്ള ആക്രമണങ്ങളുടെ ഒരു ഉപവിഭാഗമാണ്.


Code injection attacks do not always rely on a database.

കോഡ് ഇൻജക്ഷൻ ആക്രമണങ്ങൾ എപ്പോഴും ഒരു ഡാറ്റാബേസിനെ ആശ്രയിക്കുന്നില്ല.


Exploiting SQL databases through injection is very common.

ഇൻജക്ഷൻ വഴി SQL ഡാറ്റാബേസുകൾ ചൂഷണം ചെയ്യുന്നത് വളരെ സാധാരണമാണ്.


Code injection is often application-specific.

കോഡ് ഇൻജക്ഷൻ പലപ്പോഴും ആപ്ലിക്കേഷൻ-നിർദ്ദിഷ്ടമാണ്.


The uploadImage endpoint converts a PNG image to a JPG.

uploadImage എൻഡ്‌പോയിൻ്റ് ഒരു PNG ചിത്രം JPG ആയി മാറ്റുന്നു.


Filename duplication can cause the imagemin library to overwrite images.

ഫയൽനാമം dupl ിക്കേഷൻ imagemin ലൈബ്രറിയെ ചിത്രങ്ങൾ തിരുത്തിയെഴുതാൻ കാരണമാകും.


The imagemin library invokes a CLI, which can lead to injection attacks.

imagemin ലൈബ്രറി ഒരു CLI-യെ വിളിക്കുന്നു, ഇത് ഇൻജക്ഷൻ ആക്രമണങ്ങളിലേക്ക് നയിച്ചേക്കാം.


The converter library runs a CLI in its own context.

കൺവെർട്ടർ ലൈബ്രറി അതിൻ്റേതായ സന്ദർഭത്തിൽ ഒരു CLI പ്രവർത്തിപ്പിക്കുന്നു.


Command injection exposes the entire OS.

കമാൻഡ് ഇൻജക്ഷൻ, മുഴുവൻ ഓപ്പറേറ്റിംഗ് സിസ്റ്റത്തെയും തുറന്നുകാട്ടുന്നു.


When a web server gets this request it will be routed to the appropriate handler class.

ഒരു വെബ് സെർവറിന് ഈ അഭ്യർത്ഥന ലഭിക്കുമ്പോൾ, അത് ഉചിതമായ ഹാൻഡ്‌ലർ ക്ലാസിലേക്ക് റൂട്ട് ചെയ്യും.


This is an extremely simple route that will do only a few things.

ഇതൊരു വളരെ ലളിതമായ റൂട്ടാണ്, ഇത് കുറച്ച് കാര്യങ്ങൾ മാത്രമേ ചെയ്യൂ.


Return an HTTP 400 error if no query params are provided.

ചോദ്യ പരാമീറ്ററുകളൊന്നും നൽകിയിട്ടില്ലെങ്കിൽ, ഒരു HTTP 400 പിശക് നൽകുക.


We can add the query parameters to get a more interesting result.

കൂടുതൽ രസകരമായ ഫലം ലഭിക്കുന്നതിന് നമുക്ക് ചോദ്യ പാരാമീറ്ററുകൾ ചേർക്കാം.


It is crucial to understand the flow of these requests in order to find and make use of CSRF vulnerabilities.

CSRF ദുർബലതകൾ കണ്ടെത്താനും ഉപയോഗിക്കാനും ഈ അഭ്യർത്ഥനകളുടെ ഒഴുക്ക് മനസ്സിലാക്കേണ്ടത് അത്യാവശ്യമാണ്.


The two main identifiers of a CSRF attack are: Privilege escalation and the user account that initiates the request typically does not know it occurred.

CSRF ആക്രമണത്തിന്റെ രണ്ട് പ്രധാന തിരിച്ചറിയൽ ഘടകങ്ങൾ ഇവയാണ്: പ്രത്യേകാവകാശ വർദ്ധനവും, അഭ്യർത്ഥന ആരംഭിക്കുന്ന ഉപയോക്തൃ അക്കൗണ്ടിന് ഇത് സംഭവിച്ചുവെന്ന് സാധാരണയായി അറിയില്ല എന്നതും.


Unfortunately GET requests are the least secure of any request and one of the easiest ways to craft a CSRF attack.

bedഭാഗ്യവശാൽ, GET അഭ്യർത്ഥനകൾ ഏതൊരു അഭ്യർത്ഥനയേക്കാളും സുരക്ഷിതമല്ലാത്തതും CSRF ആക്രമണം നടത്താനുള്ള എളുപ്പവഴികളിൽ ഒന്നുമാണ്.


Most users would not know a parameter was attached to the link as an identifier.

ഒരു ഐഡന്റിഫയറായി ഒരു പാരാമീറ്റർ ലിങ്കിലേക്ക് അറ്റാച്ചുചെയ്തിട്ടുണ്ടെന്ന് മിക്ക ഉപയോക്താക്കൾക്കും അറിയില്ല.


Let’s imagine our fictional banking website, MegaBank, made use of GET requests with params.

നമ്മുടെ സാങ്കൽപ്പിക ബാങ്കിംഗ് വെബ്‌സൈറ്റായ മെഗാബാങ്ക്, പാരാമീറ്ററുകൾ ഉപയോഗിച്ച് GET അഭ്യർത്ഥനകൾ ഉപയോഗിച്ചുവെന്ന് കരുതുക.


The authenticated user may choose the amount to be transferred.

അധികാരിയായ ഉപയോക്താവിന് കൈമാറേണ്ട തുക തിരഞ്ഞെടുക്കാം.


CSRF attacks involving HTTP GET param tampering usually proceed as follows.

HTTP GET പാരാമീറ്റർ ടാംപറിംഗ് ഉൾപ്പെടുന്ന CSRF ആക്രമണങ്ങൾ സാധാരണയായി താഴെ പറയുന്ന രീതിയിൽ നടക്കുന്നു.


A hacker figures out that a web server uses HTTP GET params to modify its flow of logic.

ഒരു വെബ് സെർവർ അതിന്റെ ലോജിക് ഫ്ലോ പരിഷ്കരിക്കാൻ HTTP GET പാരാമീറ്ററുകൾ ഉപയോഗിക്കുന്നു എന്ന് ഒരു ഹാക്കർ കണ്ടെത്തുന്നു.


The hacker crafts a URL string with those params.

ഹാക്കർ ആ പാരാമീറ്ററുകൾ ഉപയോഗിച്ച് ഒരു URL സ്ട്രിംഗ് ഉണ്ടാക്കുന്നു.


The effects can be devastating to a company.

കമ്പനിക്ക് ഇത് വിനാശകരമായ ഫലങ്ങൾ ഉണ്ടാക്കും.


Because the default HTTP request in the browser is a GET request, many HTML tags that accept a URL parameter will automatically make GET requests.

ബ്രൗസറിലെ ഡിഫോൾട്ട് HTTP അഭ്യർത്ഥന ഒരു GET അഭ്യർത്ഥന ആയതുകൊണ്ട്, URL പാരാമീറ്റർ സ്വീകരിക്കുന്ന പല HTML ടാഗുകളും സ്വയമേവ GET അഭ്യർത്ഥനകൾ നടത്തും.


Alternatively, we could have crafted an image to do the same thing.

പകരമായി, അതേ കാര്യം ചെയ്യുന്ന ഒരു ചിത്രം നമുക്ക് ഉണ്ടാക്കാമായിരുന്നു.


When image tags are detected in the browser, the browser will initiate a GET request.

ബ്രൗസറിൽ ഇമേജ് ടാഗുകൾ കണ്ടെത്തിയാൽ, ബ്രൗസർ ഒരു GET അഭ്യർത്ഥന ആരംഭിക്കും.


Likewise, most other HTML tags that allow a URL parameter can also be used to make malicious GET requests.

അതുപോലെ, URL പാരാമീറ്റർ അനുവദിക്കുന്ന മറ്റ് മിക്ക HTML ടാഗുകളും ദോഷകരമായ GET അഭ്യർത്ഥനകൾ നടത്താൻ ഉപയോഗിക്കാം.


However, it is still possible to deliver a CSRF payload that targets a POST, PUT, or DELETE endpoint.

എങ്കിലും, ഒരു POST, PUT അല്ലെങ്കിൽ DELETE എൻഡ്‌പോയിന്റിനെ ലക്ഷ്യമിട്ടുള്ള ഒരു CSRF പേലോഡ് വിതരണം ചെയ്യുന്നത് ഇപ്പോഴും സാധ്യമാണ്.


In this case, the user is signed into MegaBank, and although they are interacting with an entirely different website, we are able to take advantage of their current session in MegaBank.

ഈ സാഹചര്യത്തിൽ, ഉപയോക്താവ് മെഗാബാങ്കിൽ സൈൻ ഇൻ ചെയ്‌തിരിക്കുന്നു, അവർ പൂർണ്ണമായും വ്യത്യസ്തമായ ഒരു വെബ്‌സൈറ്റുമായി സംവദിക്കുമ്പോൾ പോലും, അവരുടെ നിലവിലെ സെഷൻ മെഗാബാങ്കിൽ പ്രയോജനപ്പെടുത്താൻ കഴിയും.


This malicious regex can significantly reduce web server performance.

ഈ ദോഷകരമായ റെഗെക്സ് വെബ് സെർവറിന്റെ പ്രകടനം വളരെയധികം കുറയ്ക്കാൻ സാധ്യതയുണ്ട്.


A hacker found an input that caused the regex parser to perform significant backtracking.

ഒരു ഹാക്കർക്ക് ഒരു ഇൻപുട്ട് കിട്ടി, അത് റെഗെക്സ് പാഴ്സറിനെ വളരെയധികം ബാക്ക് ട്രാക്ക് ചെയ്യാൻ പ്രേരിപ്പിച്ചു.


Regex DoS attacks are more common than you’d think.

നിങ്ങൾ വിചാരിക്കുന്നതിനേക്കാൾ കൂടുതൽ സാധാരണമാണ് റെഗെക്സ് DoS ആക്രമണങ്ങൾ.


Logical DoS vulnerabilities drain server resources.

ലോജിക്കൽ DoS ദുർബലതകൾ സെർവർ വിഭവങ്ങൾ ചോർത്തുന്നു.


Legitimate users experience performance degradation.

നിയമാനുസൃത ഉപയോക്താക്കൾക്ക് പ്രകടനം കുറയുന്നു.


Regex is an easy introduction to DoS vulnerabilities.

DoS ദുർബലതകളെക്കുറിച്ച് എളുപ്പത്തിൽ മനസ്സിലാക്കാൻ റെഗെക്സ് സഹായിക്കുന്നു.


DoS vulnerabilities can be found in almost any type of software.

DoS ദുർബലതകൾ ഏത് തരത്തിലുള്ള സോഫ്റ്റ്‌വെയറിലും കണ്ടെത്താൻ കഴിയും.


Logical DoS vulnerabilities are some of the hardest to find and exploit.

കണ്ടെത്താനും ചൂഷണം ചെയ്യാനും ഏറ്റവും ബുദ്ധിമുട്ടുള്ള ഒന്നാണ് ലോജിക്കൽ DoS ദുർബലതകൾ.


DoS attacks are usually based around consuming server or client hardware resources.

DoS ആക്രമണങ്ങൾ സാധാരണയായി സെർവർ അല്ലെങ്കിൽ ക്ലയിന്റ് ഹാർഡ്‌വെയർ വിഭവങ്ങൾ ഉപയോഗിക്കുന്നതിനെ ആശ്രയിച്ചിരിക്കുന്നു.


A photo-sharing application could expose an API route that permits a user to upload a photo.

ഒരു ഫോട്ടോ പങ്കിടൽ ആപ്ലിക്കേഷന് ഒരു ഉപയോക്താവിനെ ഫോട്ടോ അപ്‌ലോഡ് ചെയ്യാൻ അനുവദിക്കുന്ന ഒരു API റൂട്ട് ഉണ്ടാകാം.


We cannot easily time the duration of these operations on a server that we do not have access to.

നമുക്ക് പ്രവേശനമില്ലാത്ത ഒരു സെർവറിലെ ഈ പ്രവർത്തനങ്ങളുടെ ദൈർഘ്യം എളുപ്പത്തിൽ അളക്കാൻ കഴിയില്ല.


We can also test if an operation occurs synchronously on the server.

ഒരു പ്രവർത്തനം സെർവറിൽ സമന്വയപരമായി നടക്കുന്നുണ്ടോ എന്നും നമുക്ക് പരിശോധിക്കാം.


We can then see that each child object is referenced by an ID.

ഓരോ ചൈൽഡ് ഒബ്ജക്റ്റും ഒരു ID ഉപയോഗിച്ച് റഫർ ചെയ്യുന്നതായി നമുക്ക് കാണാൻ കഴിയും.


We might assume that users, albums, photos, and metadata are stored in different tables.

ഉപയോക്താക്കൾ, ആൽബങ്ങൾ, ഫോട്ടോകൾ, മെറ്റാഡാറ്റ എന്നിവ വ്യത്യസ്ത പട്ടികകളിൽ സംഭരിച്ചിരിക്കുന്നു എന്ന് നമുക്ക് അനുമാനിക്കാം.


We can deduce that we could create a profile to eat up server resource time.

സെർവർ വിഭവങ്ങളുടെ സമയം ഉപയോഗിക്കുന്ന ഒരു പ്രൊഫൈൽ ഉണ്ടാക്കാൻ കഴിയുമെന്ന് നമുക്ക് അനുമാനിക്കാം.


DDoS attacks are a bit outside of the scope of this book.

ഈ പുസ്തകത്തിന്റെ പരിധിക്ക് പുറത്താണ് DDoS ആക്രമണങ്ങൾ.


Distributed attacks involve multiple attackers.

വിതരണം ചെയ്യപ്പെട്ട ആക്രമണങ്ങളിൽ ഒന്നിലധികം ആക്രമണകാരികൾ ഉൾപ്പെടുന്നു.


Most DDoS attacks do not perform logical or regex-based DoS.

മിക്ക DDoS ആക്രമണങ്ങളും ലോജിക്കൽ അല്ലെങ്കിൽ റെഗെക്സ് അടിസ്ഥാനമാക്കിയുള്ള DoS നടത്താറില്ല.


DDoS attacks are not effective against a single client.

DDoS ആക്രമണങ്ങൾ ഒരു ക്ലയിന്റിനെതിരെ ഫലപ്രദമല്ല.


When looking for DoS attacks, it’s best to investigate which server resources are the most valuable.

DoS ആക്രമണങ്ങൾക്കായി തിരയുമ്പോൾ, ഏറ്റവും മൂല്യവത്തായ സെർവർ വിഭവങ്ങൾ ഏതാണെന്ന് അന്വേഷിക്കുന്നതാണ് നല്ലത്.


ഉപയോക്താക്കൾക്ക് അക്കൗണ്ടുകൾ ഉണ്ടാക്കാനും സൈൻ ഇൻ ചെയ്യാനും കഴിയും.


ഞങ്ങൾ ക്രെഡൻഷ്യലുകൾ സംഭരിക്കുന്നു.


ഉപയോക്താക്കൾക്ക് പ്രത്യേക ഇനങ്ങൾക്കായി തിരയാൻ കഴിയും.


ഞങ്ങൾ സാമ്പത്തിക ഡാറ്റ സംഭരിക്കുന്നു.


How do we handle sessions, logins, and cookies?

സെഷനുകളും, ലോഗിനുകളും, കുക്കികളും ഞങ്ങൾ എങ്ങനെ കൈകാര്യം ചെയ്യും?


Is it handled differently than other data?

മറ്റ് ഡാറ്റയിൽ നിന്ന് വ്യത്യസ്തമായിട്ടാണോ ഇത് കൈകാര്യം ചെയ്യുന്നത്?


എങ്ങനെയാണ് സെർച്ച് എഞ്ചിൻ നടപ്പിലാക്കുന്നത്?


We want to ensure that all data is encrypted.

എല്ലാ ഡാറ്റയും എൻക്രിപ്റ്റ് ചെയ്തിട്ടുണ്ടെന്ന് ഉറപ്പാക്കാൻ ഞങ്ങൾ ആഗ്രഹിക്കുന്നു.


This reduces the risk of a man-in-the-middle attack.

ഇത് ഒരു മാൻ-ഇൻ-ദ-മിഡിൽ ആക്രമണത്തിൻ്റെ സാധ്യത കുറയ്ക്കുന്നു.


SSL was designed by Netscape in the mid-1990s.

1990-കളുടെ മധ്യത്തിൽ നെറ്റ്‌സ്‌കേപ്പ് ആണ് SSL രൂപകൽപ്പന ചെയ്തത്.


TLS ഏറ്റവും കൂടുതൽ സുരക്ഷ നൽകുന്നു.


Browsers that support HTTPS will display a warning.

HTTPS-നെ പിന്തുണയ്ക്കുന്ന ബ്രൗസറുകൾ ഒരു മുന്നറിയിപ്പ് നൽകും.


Password security requirements exist for a number of reasons.

പാസ്‌വേഡ് സുരക്ഷാ ആവശ്യകതകൾ നിരവധി കാരണങ്ങളാൽ നിലവിലുണ്ട്.


Creating a secure password has less to do with the length.

സുരക്ഷിതമായ ഒരു പാസ്‌വേഡ് ഉണ്ടാക്കുന്നത് അതിന്റെ നീളവുമായി ബന്ധപ്പെട്ടതല്ല.


In cryptography, this is known as entropy.

ക്രിപ്‌റ്റോഗ്രഫിയിൽ, ഇതിനെ എൻട്രോപ്പി എന്ന് വിളിക്കുന്നു.


When a hacker attempts to brute force logins.

ഒരു ഹാക്കർ ലോഗിനുകൾ ബ്രൂട്ട് ഫോഴ്സ് ചെയ്യാൻ ശ്രമിക്കുമ്പോൾ.


We should make it difficult for a user to develop a password.

ഒരു പാസ്‌വേഡ് ഉണ്ടാക്കുന്നത് ഉപയോക്താവിന് ബുദ്ധിമുട്ടാക്കണം.


നമ്മൾ ഒരിക്കലും പ്ലെയിൻ ടെക്സ്റ്റിൽ സംഭരിക്കരുത്.


Hashing algorithms differ from most encryption algorithms.

ഹേസിംഗ് അൽഗോരിതങ്ങൾ എൻക്രിപ്ഷൻ അൽഗോരിതങ്ങളിൽ നിന്ന് വ്യത്യസ്തമാണ്.


Modern hashing algorithms have almost no collision.

ആധുനിക ഹേസിംഗ് അൽഗോരിതങ്ങൾക്ക് മിക്കവാറും കൂട്ടിയിടി ഉണ്ടാകില്ല.


Just like npm, Maven projects and plug-ins can be compromised and imported into a legitimate application.

npm പോലെ തന്നെ, Maven പ്രോജക്റ്റുകളും പ്ലഗ്-ഇന്നുകളും വിട്ടുവീഴ്ച ചെയ്യാനും ഒരു നിയമാനുസൃത ആപ്ലിക്കേഷനിലേക്ക് ഇറക്കുമതി ചെയ്യാനും കഴിയും.


Such risks are not isolated to any one package management software.

ഇത്തരം അപകടസാധ്യതകൾ ഏതെങ്കിലും ഒരു പാക്കേജ് മാനേജ്മെൻ്റ് സോഫ്റ്റ്‌വെയറിലേക്ക് മാത്രമായി ഒതുങ്ങുന്നില്ല.


Each of these can be attacked with similar methods.

ഇവയോരോന്നിനും സമാനമായ രീതികളിൽ ആക്രമിക്കാൻ കഴിയും.


Attacking via a package manager may require a combination of social engineering and code obfuscation technique.

ഒരു പാക്കേജ് മാനേജർ വഴി ആക്രമണം നടത്തണമെങ്കിൽ സോഷ്യൽ എഞ്ചിനിയറിംഗും കോഡ് ഒബ്‌ഫസ്‌കേഷനും ആവശ്യമായി വന്നേക്കാം.


Malicious code must be out of plain site, so that it is not easily identified, but still capable of execution.

ദോഷകരമായ കോഡ് എളുപ്പത്തിൽ തിരിച്ചറിയാൻ കഴിയാത്ത രീതിയിൽ മറഞ്ഞിരിക്കണം, എന്നാൽ എക്സിക്യൂട്ട് ചെയ്യാൻ ശേഷിയുള്ളതുമായിരിക്കണം.


Ultimately package managers present a similar risk to any method of OSS integration.

ഒടുവിൽ, പാക്കേജ് മാനേജർമാർ OSS സംയോജനത്തിൻ്റെ ഏതൊരു രീതിക്കും സമാനമായ അപകടസാധ്യത നൽകുന്നു.


It is difficult to fully review the code in a large OSS package, especially when you take into consideration its dependencies.

ഒരു വലിയ OSS പാക്കേജിലെ കോഡ് പൂർണ്ണമായി അവലോകനം ചെയ്യുന്നത് ബുദ്ധിമുട്ടാണ്, പ്രത്യേകിച്ചും അതിൻ്റെ ഡിപ്പൻഡൻസികൾ പരിഗണിക്കുമ്പോൾ.


Generally speaking, deploying a package to a package manager and getting it integrated into an application could be an attack vector.

പൊതുവേ പറഞ്ഞാൽ, ഒരു പാക്കേജ് ഒരു പാക്കേജ് മാനേജറിലേക്ക് വിന്യസിക്കുകയും അത് ഒരു ആപ്ലിക്കേഷനിൽ സംയോജിപ്പിക്കുകയും ചെയ്യുന്നത് ഒരു ആക്രമണ മാർഗ്ഗമായേക്കാം.


The most popular way of exploiting third-party dependencies in a small amount of time is by determining known vulnerabilities.

കുറഞ്ഞ സമയത്തിനുള്ളിൽ മൂന്നാം കക്ഷി ഡിപ്പൻഡൻസികളെ ചൂഷണം ചെയ്യാനുള്ള ഏറ്റവും പ്രചാരമുള്ള മാർഗ്ഗം അറിയപ്പെടുന്ന ദുർബലതകൾ കണ്ടെത്തുക എന്നതാണ്.


Fortunately, vulnerabilities are disclosed publicly when found in many packages.

ഭാഗ്യവശാൽ, പല പാക്കേജുകളിലും കണ്ടെത്തുന്ന ദുർബലതകൾ പരസ്യമായി വെളിപ്പെടുത്തുന്നു.


These vulnerabilities often make it to an online database like the US Department of Commerce National Vulnerability Database (NVD).

ഈ ദുർബലതകൾ പലപ്പോഴും യുഎസ് ഡിപ്പാർട്ട്‌മെൻ്റ് ഓഫ് കൊമേഴ്‌സിൻ്റെ നാഷണൽ വൾനറബിലിറ്റി ഡാറ്റാബേസ് (NVD) പോലുള്ള ഒരു ഓൺലൈൻ ഡാറ്റാബേസിലേക്ക് എത്തുന്നു.


This means that popular third-party applications will likely have known and documented vulnerabilities.

അതായത്, ജനപ്രിയമായ മൂന്നാം കക്ഷി ആപ്ലിക്കേഷനുകളിൽ അറിയപ്പെടുന്നതും രേഖപ്പെടുത്തപ്പെട്ടതുമായ ദുർബലതകൾ ഉണ്ടാകാൻ സാധ്യതയുണ്ട്.


CVE databases are not incredibly useful when attempting to find known vulnerabilities in smaller packages.

ചെറിയ പാക്കേജുകളിൽ അറിയപ്പെടുന്ന ദുർബലതകൾ കണ്ടെത്താൻ ശ്രമിക്കുമ്പോൾ CVE ഡാറ്റാബേസുകൾ അത്ര സഹായകമാകണമെന്നില്ല.


On the other hand, major dependencies like WordPress, Bootstrap, or JQuery that have millions of users have often been scrutinized.

മറുവശത്ത്, WordPress, Bootstrap, അല്ലെങ്കിൽ JQuery പോലുള്ള പ്രധാന ഡിപ്പൻഡൻസികൾ, ദശലക്ഷക്കണക്കിന് ഉപയോക്താക്കളുള്ളവ പലപ്പോഴും സൂക്ഷ്മമായി പരിശോധിക്കപ്പെട്ടിട്ടുണ്ട്.


As a result, the majority of serious vulnerabilities have likely already been found, documented, and published on the web.

തൽഫലമായി, ഗുരുതരമായ ന്യൂനതകളിൽ ഭൂരിഭാഗവും ഇതിനകം കണ്ടെത്തി, രേഖപ്പെടുത്തി, വെബിൽ പ്രസിദ്ധീകരിച്ചിട്ടുണ്ട്.


A serious vulnerability in JQuery could wreak havoc on some of the largest companies in the world.

JQuery-യിലെ ഗുരുതരമായ ഒരു ന്യൂനത ലോകത്തിലെ ഏറ്റവും വലിയ ചില കമ്പനികളിൽ നാശനഷ്ടം വരുത്തിയേക്കാം.


A quick scan of NVD’s CVE database shows dozens of reported vulnerabilities in JQuery over the years.

NVD-യുടെ CVE ഡാറ്റാബേസിൻ്റെ ഒരു ദ്രുത സ്കാൻ വർഷങ്ങളായി JQuery-യിൽ റിപ്പോർട്ട് ചെയ്യപ്പെട്ട നിരവധി ന്യൂനതകൾ കാണിക്കുന്നു.


As an attacker, these CVE databases can provide you with detailed methods of exploiting an application.

ഒരു അക്രമിയെന്ന നിലയിൽ, ഈ CVE ഡാറ്റാബേസുകൾക്ക് ഒരു ആപ്ലിക്കേഷനെ ചൂഷണം ചെയ്യുന്നതിനുള്ള വിശദമായ വഴികൾ നൽകാൻ കഴിയും.


CVE databases make finding and exploiting vulnerabilities very easy.

CVE ഡാറ്റാബേസുകൾ ന്യൂനതകൾ കണ്ടെത്തുകയും ചൂഷണം ചെയ്യുകയും ചെയ്യുന്നത് വളരെ എളുപ്പമാക്കുന്നു.


The rampant use of third-party dependencies, in particular from the OSS realm, has created an easy-to-overlook gap in the security of many web applications.

പ്രത്യേകിച്ച് OSS മേഖലയിൽ നിന്നുള്ള മൂന്നാം കക്ഷി ഡിപ്പൻഡൻസികളുടെ വ്യാപകമായ ഉപയോഗം, പല വെബ് ആപ്ലിക്കേഷനുകളുടെയും സുരക്ഷയിൽ എളുപ്പത്തിൽ അവഗണിക്കാവുന്ന ഒരു വിടവ് സൃഷ്ടിച്ചിട്ടുണ്ട്.


The software engineer introduced a new API endpoint.

സോഫ്റ്റ്‌വെയർ എഞ്ചിനീയർ ഒരു പുതിയ API എൻഡ്‌പോയിന്റ് അവതരിപ്പിച്ചു.


Jed realized he could make a request with any tier as the newTier param.

പുതിയ ടയർ എന്ന നിലയിൽ ഏത് ടയറും ഉപയോഗിച്ച് ഒരു അഭ്യർത്ഥന നടത്താൻ കഴിയുമെന്ന് ജെഡിന് മനസ്സിലായി.


Steve clicked this link, changing the state of his subscription.

സ്റ്റീവ് ഈ ലിങ്കിൽ ക്ലിക്ക് ചെയ്തു, അതുവഴി അവന്റെ സബ്‌സ്‌ക്രിപ്‌ഷന്റെ നില മാറ്റി.


Jed has discovered a CSRF vulnerability in the application.

ആപ്ലിക്കേഷനിൽ CSRF ദുർബലത ജെഡ് കണ്ടെത്തി.


The solution is to switch the request from an HTTP GET to an HTTP POST.

ഒരു HTTP GET-ൽ നിന്ന് HTTP POST-ലേക്ക് അഭ്യർത്ഥന മാറ്റുക എന്നതാണ് ഇതിനുള്ള പരിഹാരം.


This regression test looks similar to a functional test.

ഈ റിഗ്രഷൻ ടെസ്റ്റ് ഒരു ഫങ്ഷണൽ ടെസ്റ്റിന് സമാനമാണ്.


Vulnerability regression tests are simple.

ദുർബലതാ റിഗ്രഷൻ പരിശോധനകൾ ലളിതമാണ്.


Your organization should have a well-defined way of disclosing vulnerabilities.

നിങ്ങളുടെ സ്ഥാപനത്തിന് ദുർബലതകൾ വെളിപ്പെടുത്തുന്നതിനുള്ള വ്യക്തമായ മാർഗ്ഗമുണ്ടാകണം.


Several large organizations have turned vulnerability reports into lawsuits.

നിരവധി വലിയ സ്ഥാപനങ്ങൾ ദുർബലതാ റിപ്പോർട്ടുകളെ വ്യവഹാരങ്ങളാക്കി മാറ്റിയിട്ടുണ്ട്.


A good disclosure program will include ways to test your application's security.

ഒരു നല്ല വെളിപ്പെടുത്തൽ പ്രോഗ്രാമിൽ നിങ്ങളുടെ ആപ്ലിക്കേഷന്റെ സുരക്ഷ പരിശോധിക്കാനുള്ള വഴികൾ ഉൾപ്പെടും.


Bug bounty programs offer cash prizes for vulnerability reports.

ബഗ്ഗ് ബൗണ്ടി പ്രോഗ്രാമുകൾ ദുർബലതാ റിപ്പോർട്ടുകൾക്ക് പണ സമ്മാനങ്ങൾ വാഗ്ദാനം ചെയ്യുന്നു.


HackerOne helps small companies set up bug bounty programs.

ചെറിയ കമ്പനികൾക്ക് ബഗ്ഗ് ബൗണ്ടി പ്രോഗ്രാമുകൾ സ്ഥാപിക്കാൻ HackerOne സഹായിക്കുന്നു.


Third-party penetration testing can give you deeper insight.

മൂന്നാം കക്ഷി പെനിട്രേഷൻ പരിശോധനയ്ക്ക് നിങ്ങൾക്ക് കൂടുതൽ ഉൾക്കാഴ്ച നൽകാൻ കഴിയും.


Ideally, contracted tests should target high-risk areas.

ആദർശപരമായി, കരാർ പരീക്ഷണം ഉയർന്ന അപകടസാധ്യതയുള്ള മേഖലകളിൽ ലക്ഷ്യമിടണം.


There are many ways to find vulnerabilities in your web application.

നിങ്ങളുടെ വെബ് ആപ്ലിക്കേഷനിലെ ദുർബലതകൾ കണ്ടെത്താൻ നിരവധി വഴികളുണ്ട്.


A well-defined pipeline for obtaining and resolving vulnerabilities is crucial.

ദുർബലതകൾ നേടുന്നതിനും പരിഹരിക്കുന്നതിനും നന്നായി നിർവചിക്കപ്പെട്ട ഒരു പൈപ്പ്‌ലൈൻ അത്യാവശ്യമാണ്.


Reproducing the vulnerability should be the first step.

ദുർബലത പുനർനിർമ്മിക്കുക എന്നതാണ് ആദ്യത്തെ പടി.


Establish a staging environment that mimics your production environment.

നിങ്ങളുടെ പ്രൊഡക്ഷൻ എൻവയോൺമെന്റിനെ അനുകരിക്കുന്ന ഒരു സ്റ്റേജിംഗ് എൻവയോൺമെന്റ് സ്ഥാപിക്കുക.


Reproducing vulnerabilities gives you deeper insight.

ദുർബലതകൾ പുനർനിർമ്മിക്കുന്നത് നിങ്ങൾക്ക് കൂടുതൽ ആഴത്തിലുള്ള ഉൾക്കാഴ്ച നൽകുന്നു.


You should begin ranking vulnerabilities based on severity.

തീവ്രതയെ അടിസ്ഥാനമാക്കി നിങ്ങൾ ദുർബലതകൾക്ക് റാങ്കിംഗ് നൽകി തുടങ്ങണം.


XSS, CSRF, injection, and so on, but more importantly checks for logic-level vulnerabilities that require deep context into the purpose of the code and cannot be easily found by automated tools or scanners.

XSS, CSRF, injection എന്നിവയും അതുപോലെ കോഡിന്റെ ഉദ്ദേശ്യത്തെക്കുറിച്ച് ആഴത്തിലുള്ള അറിവ് ആവശ്യമുള്ള ലോജിക് ലെവൽ വീഴ്ചകൾ പരിശോധിക്കുകയും ഓട്ടോമേറ്റഡ് ടൂളുകൾക്കോ സ്കാനറുകൾക്കോ എളുപ്പത്തിൽ കണ്ടെത്താൻ കഴിയാത്തതുമാണ് ഇത്.


In order to find vulnerabilities that arise from logic bugs, we need to first have con‐ text in regard to the goal of the feature.

ലോജിക് ബഗുകളിൽ നിന്ന് ഉണ്ടാകുന്ന വീഴ്ചകൾ കണ്ടെത്താൻ, ഫീച്ചറിന്റെ ലക്ഷ്യത്തെക്കുറിച്ച് നമ്മൾ ആദ്യം ഒരു ധാരണ നേടേണ്ടതുണ്ട്.


This means we need to understand the users of the feature, the functionality of the feature, and the business impact of the feature.

അതായത്, ഫീച്ചറിന്റെ ഉപയോക്താക്കൾ, ഫീച്ചറിന്റെ പ്രവർത്തനം, ഫീച്ചറിന്റെ ബിസിനസ്സ് സ്വാധീനം എന്നിവ നമ്മൾ മനസ്സിലാക്കണം.


Most of the vulnerabilities we have investigated are common archetypes of well-known vulnerabilities.

നമ്മൾ അന്വേഷിച്ച बहुतेक വീഴ്ചകളും നന്നായി അറിയപ്പെടുന്ന വീഴ്ചകളുടെ സാധാരണ മാതൃകകളാണ്.


But it is just as possible that an application with a very specific use case has vulnerabilities that can‐ not be listed in a book designed for general education on software security.

എന്നാൽ, സോഫ്റ്റ്‌വെയർ സുരക്ഷയെക്കുറിച്ചുള്ള പൊതുവായ വിദ്യാഭ്യാസത്തിനായി രൂപകൽപ്പന ചെയ്ത ഒരു പുസ്തകത്തിൽ ഉൾപ്പെടുത്താൻ കഴിയാത്ത വീഴ്ചകൾ, വളരെ പ്രത്യേകമായ ഉപയോഗ കേസുള്ള ഒരു ആപ്ലിക്കേഷനിൽ ഉണ്ടാകാൻ സാധ്യതയുണ്ട്.


Consider the following context regarding a new social media feature to be integrated into MegaBank—MegaChat: Archetypical Vulnerabilities Versus Custom Logic Bugs

MegaBank-MegaChat-ലേക്ക് സംയോജിപ്പിക്കാൻ പോകുന്ന ഒരു പുതിയ സോഷ്യൽ മീഡിയ ഫീച്ചറിനെക്കുറിച്ചുള്ള ഈ പശ്ചാത്തലം പരിഗണിക്കുക: ആർക്കിടൈപ്പൽ വീഴ്ചകളും കസ്റ്റം ലോജിക് ബഗുകളും


We are building a social media portal that allows registered users to apply for membership .

രജിസ്റ്റർ ചെയ്ത ഉപയോക്താക്കൾക്ക് അംഗത്വത്തിനായി അപേക്ഷിക്കാൻ കഴിയുന്ന ഒരു സോഷ്യൽ മീഡിയ പോർട്ടൽ ഞങ്ങൾ നിർമ്മിക്കുകയാണ്.


Membership is approved by moderators based on a review of the user’s activity prior to membership.

അംഗത്വത്തിന് മുമ്പുള്ള ഉപയോക്താവിന്റെ പ്രവർത്തനത്തെക്കുറിച്ചുള്ള അവലോകനത്തെ അടിസ്ഥാനമാക്കി മോഡറേറ്റർമാരാണ് അംഗീകാരം നൽകുന്നത്.


Users have limited functionality, but when upgraded to members they have increased functionality .

ഉപയോക്താക്കൾക്ക് പരിമിതമായ പ്രവർത്തനങ്ങൾ മാത്രമേയുള്ളൂ, എന്നാൽ അംഗങ്ങളായി അപ്‌ഗ്രേഡ് ചെയ്യുമ്പോൾ അവർക്ക് കൂടുതൽ പ്രവർത്തനങ്ങൾ ലഭിക്കും.


Moderators are automatically given member functionality, plus additional mod‐ eration capabilities.

മോഡറേറ്റർമാർക്ക് അംഗത്വത്തിനുള്ള എല്ലാ ഫീച്ചറുകളും അധിക നിയന്ത്രണ ശേഷികളും സ്വയമേവ ലഭിക്കും.


Unlike users, who can only post text media, members can upload games, videos, and artwork.

വാചക മീഡിയ പോസ്റ്റ് ചെയ്യാൻ കഴിയുന്ന ഉപയോക്താക്കളിൽ നിന്ന് വ്യത്യസ്തമായി, അംഗങ്ങൾക്ക് ഗെയിമുകൾ, വീഡിയോകൾ, കലാസൃഷ്ടികൾ എന്നിവ അപ്‌ലോഡ് ചെയ്യാൻ കഴിയും.


We gate the membership because hosting this type of media is expensive, and we wish to reduce the amoun t of low-quality content as well as protect ourselves from bot accounts and freeloaders who are only looking to host their content.

ഈ തരത്തിലുള്ള മീഡിയ ഹോസ്റ്റുചെയ്യുന്നത് ചെലവേറിയതാണ്, കൂടാതെ കുറഞ്ഞ നിലവാരമുള്ള ഉള്ളടക്കത്തിന്റെ അളവ് കുറയ്ക്കാനും ബോട്ട് അക്കൗണ്ടുകളിൽ നിന്നും, അവരുടെ ഉള്ളടക്കം ഹോസ്റ്റുചെയ്യാൻ മാത്രം നോക്കുന്ന സൗജന്യമായി കിട്ടുന്നവരിൽ നിന്നും സ്വയം രക്ഷിക്കാനും ഞങ്ങൾ ആഗ്രഹിക്കുന്നു.


From this we can gather: Users and roles

ഇതിൽ നിന്ന് നമുക്ക് ഇത് മനസ്സിലാക്കാം: ഉപയോക്താക്കളും റോളുകളും


ഉപയോക്താക്കൾ MegaBank ഉപഭോക്താക്കളാണ്.


The users are split into three roles: user (default), member, and moderator.

ഉപയോക്താക്കളെ മൂന്ന് റോളുകളായി തിരിച്ചിരിക്കുന്നു: ഉപയോക്താവ് (സ്ഥിരസ്ഥിതി), അംഗം, മോഡറേറ്റർ.


Each user role has different permissions and functionality.

ഓരോ ഉപയോക്തൃ റോളുകൾക്കും വ്യത്യസ്ത അനുമതികളും പ്രവർത്തനങ്ങളുമുണ്ട്.


സവിശേഷതകളുടെ പ്രവർത്തനം


Users, members, and moderators can post text.

ഉപയോക്താക്കൾക്കും, അംഗങ്ങൾക്കും, മോഡറേറ്റർമാർക്കും ടെക്സ്റ്റ് പോസ്റ്റുചെയ്യാനാകും.


Members and moderators can post video, games, and images.

അംഗങ്ങൾക്കും മോഡറേറ്റർമാർക്കും വീഡിയോ, ഗെയിമുകൾ, ചിത്രങ്ങൾ എന്നിവ പോസ്റ്റ് ചെയ്യാൻ കഴിയും.


Moderators can use moderation features, including upgrading users to members.

ഉപയോക്താക്കളെ അംഗങ്ങളായി അപ്‌ഗ്രേഡ് ചെയ്യുന്നത് ഉൾപ്പെടെയുള്ള മോഡറേഷൻ ഫീച്ചറുകൾ മോഡറേറ്റർമാർക്ക് ഉപയോഗിക്കാം.


Fortunately, although XSS appears often in the web, it is quite easy to mitigate or prevent entirely via secure coding best practices and XSS-specific mitigation techniques.

ഭാഗ്യവശാൽ, XSS വെബിൽ പലപ്പോഴും കാണപ്പെടുന്നുണ്ടെങ്കിലും, സുരക്ഷിതമായ കോഡിംഗ് രീതികളും XSS-നിർദ്ദിഷ്ട ലഘൂകരണ തന്ത്രങ്ങളും വഴി ഇത് പൂർണ്ണമായും ലഘൂകരിക്കാനോ തടയാനോ എളുപ്പമാണ്.


This chapter is all about protecting your codebase from XSS.

ഈ അധ്യായം നിങ്ങളുടെ കോഡ്‌ബേസിനെ XSS-ൽ നിന്ന് എങ്ങനെ സംരക്ഷിക്കാം എന്നതിനെക്കുറിച്ചാണ്.


There is one major rule you can implement in your development team in order to dramatically mitigate the odds of running into XSS vulnerabilities: “don’t allow any user-supplied data to be passed into the DOM—except as strings.”

XSS ദുർബലതകളിലേക്ക് കടന്നുചെല്ലാനുള്ള സാധ്യത ഗണ്യമായി കുറയ്ക്കുന്നതിന് നിങ്ങളുടെ വികസന ടീമിൽ നടപ്പിലാക്കാൻ കഴിയുന്ന ഒരു പ്രധാന നിയമമുണ്ട്: “സ്ട്രിംഗുകളായി ഒഴികെ, ഉപയോക്താവ് നൽകുന്ന ഒരു ഡാറ്റയും DOM-ലേക്ക് കടത്തിവിടരുത്.”


Such a rule is not applicable to all applications, as many applications have features that incorporate users to DOM data transfer.

ഈ നിയമം എല്ലാ ആപ്ലിക്കേഷനുകൾക്കും ബാധകമല്ല, കാരണം പല ആപ്ലിക്കേഷനുകളിലും ഉപയോക്താക്കളെ DOM ഡാറ്റാ കൈമാറ്റത്തിലേക്ക് ഉൾപ്പെടുത്തുന്ന ഫീച്ചറുകൾ ഉണ്ട്.


In this case, we can make this rule more specific: “never allow any unsanitized user-supplied data to be passed into the DOM.”

ഈ സാഹചര്യത്തിൽ, നമുക്ക് ഈ നിയമം കൂടുതൽ വ്യക്തമാക്കാം: “ശുദ്ധീകരിക്കാത്ത ഉപയോക്താവ് നൽകുന്ന ഡാറ്റയൊന്നും DOM-ലേക്ക് കടത്തിവിടരുത്.”


Allowing user-supplied data to populate the DOM should be a fallback, last-case option rather than a first option.

ഉപയോക്താവ് നൽകുന്ന ഡാറ്റ DOM-ൽ ഉൾപ്പെടുത്തുന്നത് ഒരു ബാക്ക്അപ്പ്, അവസാന ഓപ്ഷനായിരിക്കണം, ആദ്യ ഓപ്ഷനായിരിക്കരുത്.


When user-supplied data must be passed into the DOM, it should be done as a string, if possible.

ഉപയോക്താവ് നൽകുന്ന ഡാറ്റ DOM-ലേക്ക് നൽകേണ്ടിവരുമ്പോൾ, കഴിയുന്നത്രയും സ്ട്രിംഗായി നൽകണം.


This means, in any case where HTML/DOM is NOT required and user-supplied data is being passed to the DOM for display as text, we must ensure that the user-supplied data is interpreted as text and not DOM.

അതായത്, HTML/DOM ആവശ്യമില്ലാത്ത സാഹചര്യങ്ങളിൽ ഉപയോക്താവ് നൽകുന്ന ഡാറ്റ ടെക്സ്റ്റ് ആയി പ്രദർശിപ്പിക്കുന്നതിന് DOM-ലേക്ക് കൈമാറുമ്പോൾ, ഉപയോക്താവ് നൽകുന്ന ഡാറ്റ ടെക്സ്റ്റ് ആയും DOM ആയും വ്യാഖ്യാനിക്കപ്പെടുന്നുണ്ടെന്ന് ഉറപ്പാക്കണം.


We can perform these checks a number of ways on both the client and the server.

ക്ലയിന്റിലും സെർവറിലും ഈ പരിശോധനകൾ പല രീതിയിൽ നടത്താം.


First off, string detection is quite easy in JavaScript.

ആരംഭത്തിൽ, ജാവാസ്ക്രിപ്റ്റിൽ സ്ട്രിംഗ് കണ്ടെത്തുന്നത് വളരെ എളുപ്പമാണ്.


Unfortunately, this check will fail when checking numbers—an edge case that can be annoying to deal with because numbers are also safe for injection into the DOM.

bedഭാഗ്യവശാൽ, സംഖ്യകൾ പരിശോധിക്കുമ്പോൾ ഈ പരിശോധന പരാജയപ്പെടും - സംഖ്യകൾ DOM-ലേക്ക് കുത്തിവയ്ക്കുന്നതിനും സുരക്ഷിതമായതിനാൽ ഇത് കൈകാര്യം ചെയ്യാൻ അൽപ്പം ബുദ്ധിമുട്ടാണ്.


We can categorize strings and numbers into “string-like” objects.

നമുക്ക് സ്ട്രിംഗുകളും നമ്പറുകളും “സ്ട്രിംഗ് പോലുള്ള” ഒബ്ജക്റ്റുകളായി തരം തിരിക്കാം.


We can evaluate a “string-like” object using a relatively unknown side effect of JSON.parse():

JSON.parse() ന്റെ താരതമ്യേന അറിയപ്പെടാത്ത ഒരു പാർശ്വഫലം ഉപയോഗിച്ച് നമുക്ക് ഒരു “സ്ട്രിംഗ് പോലുള്ള” ഒബ്ജക്റ്റ് വിലയിരുത്താൻ കഴിയും:


JSON.parse() is a function built into JavaScript that attempts to convert text to a JSON object.

JSON ഒബ്ജക്റ്റിലേക്ക് ടെക്സ്റ്റ് പരിവർത്തനം ചെയ്യാൻ ശ്രമിക്കുന്ന ജാവാസ്ക്രിപ്റ്റിൽ നിർമ്മിച്ച ഒരു ഫംഗ്ഷനാണ് JSON.parse().


Numbers and strings will pass this check, but complex objects such as functions will fail as they do not fit a format compatible with JSON.

നമ്പറുകളും സ്ട്രിംഗുകളും ഈ പരിശോധനയിൽ വിജയിക്കും, എന്നാൽ ഫംഗ്ഷനുകൾ പോലുള്ള സങ്കീർണ്ണമായ ഒബ്ജക്റ്റുകൾ പരാജയപ്പെടും, കാരണം അവ JSON-നുമായി പൊരുത്തപ്പെടുന്ന ഫോർമാറ്റിൽ വരുന്നില്ല.


Finally, we must ensure that even when we have a string object or string-like object, the DOM interprets it as string/string-like.

അവസാനമായി, നമുക്ക് ഒരു സ്ട്രിംഗ് ഒബ്ജക്റ്റോ സ്ട്രിംഗ് പോലുള്ള ഒബ്ജക്റ്റോ ഉണ്ടെങ്കിൽ പോലും, DOM അത് സ്ട്രിംഗ്/സ്ട്രിംഗ് പോലുള്ളവയായി വ്യാഖ്യാനിക്കുന്നുണ്ടെന്ന് ഉറപ്പാക്കണം.


Generally, we inject user data into the DOM using innerText or innerHTML.

സാധാരണയായി, innerText അല്ലെങ്കിൽ innerHTML ഉപയോഗിച്ച് ഉപയോക്തൃ ഡാറ്റ DOM-ലേക്ക് ചേർക്കുന്നു.


When HTML tags are not needed, innerText is m uch safer because it attempts to sanitize anything that looks like an HTML tag by representing it as a string.

HTML ടാഗുകൾ ആവശ്യമില്ലെങ്കിൽ, innerText വളരെ സുരക്ഷിതമാണ്, കാരണം ഇത് HTML ടാഗ് പോലെ കാണപ്പെടുന്ന എന്തിനെയും ഒരു സ്ട്രിംഗായി പ്രതിനിധീകരിച്ച് ശുദ്ധീകരിക്കാൻ ശ്രമിക്കുന്നു.


Using innerText rather than innerHTML whenever appending true strings or string- like objects to the DOM is a best practice.

DOM-ലേക്ക് ശരിയായ സ്ട്രിംഗുകളോ സ്ട്രിംഗ് പോലുള്ള ഒബ്ജക്റ്റുകളോ ചേർക്കുമ്പോൾ innerHTML-നുപകരം innerText ഉപയോഗിക്കുന്നത് നല്ല രീതിയാണ്.


This is because innerText performs its own sanitization in order to view HTML tags as strings, whereas innerHTML does not perform such sanitization and will interpret HTML tags as HTML tags when loaded into the DOM.

കാരണം, HTML ടാഗുകളെ സ്ട്രിംഗുകളായി കാണുന്നതിന് innerText അതിന്റേതായ ശുദ്ധീകരണം നടത്തുന്നു, എന്നാൽ innerHTML അത്തരം ശുദ്ധീകരണം നടത്താത്തതുകൊണ്ട് DOM-ൽ ലോഡ് ചെയ്യുമ്പോൾ HTML ടാഗുകളെ HTML ടാഗുകളായി വ്യാഖ്യാനിക്കും.


Most major websites rely on CSRF tokens as their primary defense against CSRF attacks.

CSRF ആക്രമണങ്ങൾക്കെതിരെ പ്രധാന പ്രതിരോധമായി മിക്ക വെബ്‌സൈറ്റുകളും CSRF ടോക്കണുകളെ ആശ്രയിക്കുന്നു.


Your web server sends a special token to the client.

നിങ്ങളുടെ വെബ് സെർവർ ക്ലയിന്റിന് ഒരു പ്രത്യേക ടോക്കൺ അയയ്ക്കുന്നു.


This token is generated cryptographically with a very low collision algorithm.

ഈ ടോക്കൺ വളരെ കുറഞ്ഞ കൂട്ടിയിടി സാധ്യതയുള്ള ഒരു അൽഗോരിതം ഉപയോഗിച്ച് ക്രിപ്റ്റോഗ്രാഫിക്കായി സൃഷ്ടിക്കപ്പെടുന്നു.


Each request from your web application now sends the token back with it.

നിങ്ങളുടെ വെബ് ആപ്ലിക്കേഷനിൽ നിന്നുള്ള ഓരോ അഭ്യർത്ഥനയും ഇപ്പോൾ ടോക്കൺ തിരികെ അയയ്ക്കുന്നു.


When the request gets to the server, the token is verified.

അഭ്യർത്ഥന സെർവറിലെത്തുമ്പോൾ, ടോക്കൺ പരിശോധിച്ചുറപ്പിക്കുന്നു.


If verification fails, the request is logged and fails as well.

പരിശോധന പരാജയപ്പെട്ടാൽ, അഭ്യർത്ഥന ലോഗ് ചെയ്യുകയും പരാജയപ്പെടുകയും ചെയ്യുന്നു.


CSRF attacks originating from other origins become extremely difficult to pull off.

മറ്റ് സ്ഥലങ്ങളിൽ നിന്നുള്ള CSRF ആക്രമണങ്ങൾ നടത്തുന്നത് വളരെ ബുദ്ധിമുട്ടാണ്.


Not only would the attacker need a live and up-to-date CSRF token, but they would also now need to target a specific user versus a large number of users.

ആക്രമണകാരിക്ക് തത്സമയ CSRF ടോക്കൺ ആവശ്യമാണ്, മാത്രമല്ല ധാരാളം ഉപയോക്താക്കളെ ലക്ഷ്യമിടുന്നതിനുപകരം ഒരു പ്രത്യേക ഉപയോക്താവിനെ ലക്ഷ്യമിടേണ്ടിവരും.


In modern web applications, statelessness is often a prerequisite to API design.

ആധുനിക വെബ് ആപ്ലിക്കേഷനുകളിൽ, API രൂപകൽപ്പനയ്ക്ക് സ്റ്റേറ്റ്‌ലെസ്നെസ് ഒരു ആവശ്യകതയാണ്.


CSRF tokens can be easily added to stateless APIs, but encryption must be involved.

CSRF ടോക്കണുകൾ സ്റ്റേറ്റ്‌ലെസ് API-കളിൽ എളുപ്പത്തിൽ ചേർക്കാൻ കഴിയും, എന്നാൽ എൻക്രിപ്ഷൻ ആവശ്യമാണ്.


A unique identifier of the user the token belongs to.

ടോക്കൺ ആരുടേതാണോ ആ ഉപയോക്താവിൻ്റെ തനതായ തിരിച്ചറിയൽ.


A timestamp (which can be used for expiration).

ഒരു ടൈംസ്‌റ്റാമ്പ് (കാലാവധിക്ക് ഉപയോഗിക്കാം).


A cryptographic nonce whose key only exists on the server.

സെർവറിൽ മാത്രം നിലനിൽക്കുന്ന ഒരു ക്രിപ്റ്റോഗ്രാഫിക് നോൺസ്.


Implementing these simple defenses in your web application will dramatically reduce the risk.

നിങ്ങളുടെ വെബ് ആപ്ലിക്കേഷനിൽ ഈ ലളിതമായ പ്രതിരോധ മാർഗ്ഗങ്ങൾ നടപ്പിലാക്കുന്നത് അപകടസാധ്യത ഗണ്യമായി കുറയ്ക്കും.


HTTP GET requests should not store or modify any server-side state.

HTTP GET അഭ്യർത്ഥനകൾ സെർവർ-സൈഡ് സ്റ്റേറ്റ് സംഭരിക്കുകയോ പരിഷ്കരിക്കുകയോ ചെയ്യരുത്.


The techniques in this chapter for defending against CSRF attacks are useful, but only when implemented application wide.

CSRF ആക്രമണങ്ങളിൽ നിന്ന് പ്രതിരോധിക്കാനുള്ള ഈ അധ്യായത്തിലെ സാങ്കേതിക വിദ്യകൾ ഉപയോഗപ്രദമാണ്, എന്നാൽ ആപ്ലിക്കേഷൻ മുഴുവൻ നടപ്പിലാക്കുമ്പോൾ മാത്രമേ ഇത് ഫലപ്രദമാകൂ.


Such middleware can be developed to implement these techniques on all of your server-side routes.

നിങ്ങളുടെ എല്ലാ സെർവർ-സൈഡ് റൂട്ടുകളിലും ഈ സാങ്കേതിക വിദ്യകൾ നടപ്പിലാക്കാൻ അത്തരം മിഡിൽവെയർ വികസിപ്പിക്കാൻ കഴിയും.


This middleware can be invoked on all requests made to the server.

സെർവറിലേക്ക് വരുന്ന എല്ലാ അഭ്യർത്ഥനകളിലും ഈ മിഡിൽവെയർ പ്രവർത്തിപ്പിക്കാൻ കഴിയും.


CSRF attacks can be mitigated for the most part by ensuring that HTTP GET requests never alter any application state.

HTTP GET അഭ്യർത്ഥനകൾ ഒരു ആപ്ലിക്കേഷൻ സ്റ്റേറ്റും മാറ്റുന്നില്ലെന്ന് ഉറപ്പാക്കുന്നതിലൂടെ CSRF ആക്രമണങ്ങളെ ഒരു പരിധി വരെ ലഘൂകരിക്കാൻ കഴിയും.


XXE attacks are often easy to mitigate, yet they are still widespread.

XXE ആക്രമണങ്ങൾ ലഘൂകരിക്കാൻ എളുപ്പമാണ്, എന്നിട്ടും അവ ഇപ്പോഴും വ്യാപകമാണ്.


The principle of least authority is crucial for web application security.

വെബ് ആപ്ലിക്കേഷൻ സുരക്ഷയ്ക്ക് ഏറ്റവും കുറഞ്ഞ അധികാര തത്വം നിർണായകമാണ്.


Imagine a CLI that backs up user profile photos.

ഉപയോക്തൃ പ്രൊഫൈൽ ഫോട്ടോകൾ ബാക്കപ്പ് ചെയ്യുന്ന ഒരു CLI-യെക്കുറിച്ച് ചിന്തിക്കുക.


A rogue injection attack could expose the entire application server.

ഒരു ദുഷ്ടമായ ഇൻജക്ഷൻ ആക്രമണം മുഴുവൻ ആപ്ലിക്കേഷൻ സെർവറിനെയും തുറന്നുകാട്ടാൻ സാധ്യതയുണ്ട്.


Whitelisting commands is a good security practice.

കമാൻഡുകൾ വൈറ്റ്‌ലിസ്റ്റ് ചെയ്യുന്നത് നല്ല സുരക്ഷാ രീതിയാണ്.


Avoid allowing user commands to be interpreted literally by the server.

സെർവർ ഉപയോക്തൃ കമാൻഡുകളെ അക്ഷരാർത്ഥത്തിൽ വ്യാഖ്യാനിക്കുന്നത് ഒഴിവാക്കുക.


A well-defined whitelist of user-available commands should be created.

ഉപയോക്താക്കൾക്ക് ലഭ്യമായ കമാൻഡുകളുടെ വ്യക്തമായ വൈറ്റ്‌ലിസ്റ്റ് ഉണ്ടാക്കണം.


This mitigation prevents unintended functionality.

ഈ ലഘൂകരണം ഉദ്ദേശിക്കാത്ത പ്രവർത്തനങ്ങളെ തടയുന്നു.


ബ്ലാക്ക്‌ലിസ്റ്റുകൾ ഒരു സുരക്ഷാ ഭീഷണിയായി കണക്കാക്കപ്പെടുന്നു.


Injection attacks are classically attributed to databases.

ഇൻജക്ഷൻ ആക്രമണങ്ങൾ ക്ലാസിക്കായി ഡാറ്റാബേസുകളുമായി ബന്ധപ്പെട്ടിരിക്കുന്നു.


Introduce the principle of least authority into your codebase.

നിങ്ങളുടെ കോഡ്‌ബേസിൽ ഏറ്റവും കുറഞ്ഞ അധികാര തത്വം അവതരിപ്പിക്കുക.


DDoS attacks often target server resources.

DDoS ആക്രമണങ്ങൾ പലപ്പോഴും സെർവർ വിഭവങ്ങളെ ലക്ഷ്യമിടുന്നു.


Comprehensive logging is a first measure against DoS attacks.

DoS ആക്രമണങ്ങൾക്കെതിരായ ആദ്യത്തെ പ്രതിരോധ മാർഗ്ഗമാണ് സമഗ്രമായ ലോഗിംഗ്.


Regex DoS attacks are relatively easy to defend against.

Regex DoS ആക്രമണങ്ങളെ പ്രതിരോധിക്കാൻ താരതമ്യേന എളുപ്പമാണ്.


Prevent regex DoS sinks from entering your codebase.

Regex DoS സിങ്കുകൾ നിങ്ങളുടെ കോഡ്‌ബേസിൽ പ്രവേശിക്കുന്നത് തടയുക.


Allowing user-uploaded regular expressions is risky.

ഉപയോക്താക്കൾ അപ്‌ലോഡ് ചെയ്യുന്ന റെഗുലർ എക്സ്പ്രഷനുകൾ അനുവദിക്കുന്നത് അപകടകരമാണ്.


Logical DoS is more difficult to detect and prevent.

ലോജിക്കൽ DoS കണ്ടെത്താനും തടയാനും കൂടുതൽ ബുദ്ധിമുട്ടാണ്.


DDoS attacks originate from multiple sources.

DDoS ആക്രമണങ്ങൾ ഒന്നിലധികം ഉറവിടങ്ങളിൽ നിന്നാണ് ഉണ്ടാകുന്നത്.


DDoS attacks attempt to overwhelm the target.

DDoS ആക്രമണങ്ങൾ ലക്ഷ്യസ്ഥാനത്തെ കീഴടക്കാൻ ശ്രമിക്കുന്നു.


Invest in a bandwidth management service to mitigate DDoS.

DDoS ലഘൂകരിക്കുന്നതിന് ഒരു ബാൻഡ്‌വിഡ്ത്ത് മാനേജ്‌മെൻ്റ് സേവനത്തിൽ നിക്ഷേപിക്കുക.


Ensure the security of each script in each dependency.

ഓരോ ഡിപ്പൻഡൻസിയിലെയും ഓരോ സ്ക്രിപ്റ്റിൻ്റെയും സുരക്ഷ ഉറപ്പാക്കുക.


Hashing algorithms are used to secure credentials.

ഹാഷിംഗ് അൽഗോരിതങ്ങൾ ക്രെഡൻഷ്യലുകൾ സുരക്ഷിതമാക്കാൻ ഉപയോഗിക്കുന്നു.


HTTP headers are crucial for web application security.

വെബ് ആപ്ലിക്കേഷൻ സുരക്ഷയ്ക്ക് HTTP ശീർഷകങ്ങൾ നിർണായകമാണ്.


SQL injection is a common vulnerability in web applications.

വെബ് ആപ്ലിക്കേഷനുകളിലെ ഒരു സാധാരണ ദൗർബല്യമാണ് SQL ഇൻജക്ഷൻ.


Sanitizing user input is essential to prevent attacks.

ആക്രമണങ്ങൾ തടയുന്നതിന് ഉപയോക്തൃ ഇൻപുട്ട് ശുദ്ധീകരിക്കേണ്ടത് അത്യാവശ്യമാണ്.


Understanding the principles of least privilege is important.

ഏറ്റവും കുറഞ്ഞ പ്രത്യേകാവകാശങ്ങളുടെ തത്വങ്ങൾ മനസ്സിലാക്കുന്നത് പ്രധാനമാണ്.


Cross-Site Scripting (XSS) attacks can compromise user data.

ക്രോസ്-സൈറ്റ് സ്ക്രിപ്റ്റിംഗ് (XSS) ആക്രമണങ്ങൾ ഉപയോക്തൃ ഡാറ്റയെ അപകടത്തിലാക്കിയേക്കാം.


Web application security involves various mitigation strategies.

വെബ് ആപ്ലിക്കേഷൻ സുരക്ഷയിൽ വിവിധ ലഘൂകരണ തന്ത്രങ്ങൾ ഉൾപ്പെടുന്നു.


Regular expression-based DoS (ReDoS) attacks can cause performance issues.

റഗുലർ എക്സ്പ്രഷൻ അടിസ്ഥാനമാക്കിയുള്ള DoS (ReDoS) ആക്രമണങ്ങൾ പ്രകടനാത്മക പ്രശ്നങ്ങൾക്ക് കാരണമായേക്കാം.


Exploiting third-party dependencies is a significant risk.

മൂന്നാം കക്ഷി ആശ്രയത്വങ്ങൾ ചൂഷണം ചെയ്യുന്നത് ഒരു പ്രധാന അപകടമാണ്.


Secure coding practices are vital for preventing vulnerabilities.

ദൗർബല്യങ്ങൾ തടയുന്നതിന് സുരക്ഷിതമായ കോഡിംഗ് രീതികൾ അത്യാവശ്യമാണ്.


The book discusses various web application security topics.

പുസ്തകത്തിൽ വിവിധ വെബ് ആപ്ലിക്കേഷൻ സുരക്ഷാ വിഷയങ്ങൾ ചർച്ച ചെയ്യുന്നു.


Penetration testing helps identify security weaknesses.

നുഴഞ്ഞുകയറ്റ പരിശോധന സുരക്ഷാ ദൗർബല്യങ്ങൾ തിരിച്ചറിയാൻ സഹായിക്കുന്നു.


Understanding the OWASP Top 10 is crucial for developers.

ഡെവലപ്പർമാർക്ക് OWASP ടോപ് 10 മനസ്സിലാക്കുന്നത് നിർണായകമാണ്.


The book covers topics like injection attacks and XSS.

ഇഞ്ചക്ഷൻ ആക്രമണങ്ങൾ, XSS തുടങ്ങിയ വിഷയങ്ങൾ പുസ്തകത്തിൽ ഉൾക്കൊള്ളുന്നു.


Properly configuring web servers is a security best practice.

വെബ് സെർവറുകൾ ശരിയായി കോൺഫിഗർ ചെയ്യുന്നത് സുരക്ഷാപരമായ നല്ലൊരു കാര്യമാണ്.


The book provides insights into secure software development.

സുരക്ഷിതമായ സോഫ്റ്റ്‌വെയർ വികസനത്തെക്കുറിച്ച് പുസ്തകം ഉൾക്കാഴ്ച നൽകുന്നു.


Vulnerability management is an ongoing process.

ദൗർബല്യങ്ങൾ കൈകാര്യം ചെയ്യുന്നത് തുടർച്ചയായ ഒരു പ്രക്രിയയാണ്.


The book emphasizes the importance of code reviews.

കോഡ് അവലോകനങ്ങളുടെ പ്രാധാന്യം പുസ്തകം ഊന്നിപ്പറയുന്നു.


Defensive software architecture is key to security.

പ്രതിരോധ സോഫ്റ്റ്‌വെയർ ആർക്കിടെക്ചർ സുരക്ഷയ്ക്ക് വളരെ പ്രധാനമാണ്.


The book is intended for security engineers and developers.

സുരക്ഷാ എഞ്ചിനീയർമാർക്കും ഡെവലപ്പർമാർക്കും വേണ്ടിയാണ് ഈ പുസ്തകം.


The application uses third-party libraries, which can introduce security vulnerabilities.

ആപ്ലിക്കേഷൻ സുരക്ഷാ വീഴ്ചകൾ വരുത്താൻ സാധ്യതയുള്ള, മൂന്നാം കക്ഷി ലൈബ്രറികൾ ഉപയോഗിക്കുന്നു.


Careful integration and regular security audits are crucial for managing these risks.

ഈ അപകടസാധ്യതകൾ കൈകാര്യം ചെയ്യാൻ, ശ്രദ്ധയോടെയുള്ള സംയോജനവും, പതിവായുള്ള സുരക്ഷാ ഓഡിറ്റുകളും അത്യാവശ്യമാണ്.


The website's architecture should be designed with security in mind from the beginning.

വെബ്സൈറ്റിന്റെ രൂപകൽപ്പന, തുടക്കം മുതൽ സുരക്ഷ ഉറപ്പാക്കുന്ന രീതിയിൽ ആയിരിക്കണം.


Developers must prioritize secure coding practices to prevent common vulnerabilities.

സാധാരണയായി കണ്ടുവരുന്ന സുരക്ഷാ പ്രശ്നങ്ങൾ ഒഴിവാക്കാൻ, സുരക്ഷിതമായ കോഡിംഗ് രീതികൾ ഡെവലപ്പർമാർ പ്രാധാന്യത്തോടെ ചെയ്യണം.


Input validation is essential to prevent injection attacks.

ഇഞ്ചക്ഷൻ ആക്രമണങ്ങൾ തടയുന്നതിന് ഇൻപുട്ട് മൂല്യനിർണയം അത്യാവശ്യമാണ്.


Regularly update all dependencies to patch known security flaws.

അറിയപ്പെടുന്ന സുരക്ഷാ പ്രശ്നങ്ങൾ പരിഹരിക്കാൻ എല്ലാ ഡിപ്പൻഡൻസികളും പതിവായി അപ്‌ഡേറ്റ് ചെയ്യുക.


Cross-Site Scripting (XSS) attacks can be mitigated by proper output encoding.

ശരിയായ ഔട്ട്‌പുട്ട് എൻകോഡിംഗ് വഴി ക്രോസ്-സൈറ്റ് സ്ക്രിപ്റ്റിംഗ് (XSS) ആക്രമണങ്ങൾ ലഘൂകരിക്കാനാകും.


Implement strong authentication and authorization mechanisms.

ശക്തമായ പ്രാമാണീകരണവും അംഗീകാര സംവിധാനങ്ങളും നടപ്പിലാക്കുക.


Use prepared statements to prevent SQL injection vulnerabilities.

SQL ഇഞ്ചക്ഷൻ പ്രശ്നങ്ങൾ ഒഴിവാക്കാൻ തയ്യാറാക്കിയ സ്റ്റേറ്റ്‌മെന്റുകൾ ഉപയോഗിക്കുക.


Conduct regular security audits and penetration testing.

പതിവായ സുരക്ഷാ ഓഡിറ്റുകളും, പെനെട്രേഷൻ ടെസ്റ്റിംഗും നടത്തുക.


The company's data was compromised in a recent cyberattack.

കഴിഞ്ഞ ദിവസമുണ്ടായ സൈബർ ആക്രമണത്തിൽ കമ്പനിയുടെ ഡാറ്റ ചോർന്നു.


The government is taking steps to improve cybersecurity.

സൈബർ സുരക്ഷ മെച്ചപ്പെടുത്താൻ സർക്കാർ നടപടികൾ സ്വീകരിക്കുന്നു.


Online banking requires strong security measures to protect user accounts.

ഉപയോക്താക്കളുടെ അക്കൗണ്ടുകൾ സുരക്ഷിതമാക്കാൻ ഓൺലൈൻ ബാങ്കിംഗിന് ശക്തമായ സുരക്ഷാ സംവിധാനങ്ങൾ ആവശ്യമാണ്.


Always use a strong password and enable two-factor authentication.

എപ്പോഴും ശക്തമായ പാസ്‌വേഡുകൾ ഉപയോഗിക്കുക, കൂടാതെ ടു-ഫാക്ടർ പ്രാമാണീകരണം (two-factor authentication)  പ്രവർത്തനക്ഷമമാക്കുക.


Be cautious of suspicious links and attachments in emails.

ഇമെയിലുകളിലെ സംശയാസ്പദമായ ലിങ്കുകളും, അറ്റാച്ച്‌മെന്റുകളും ശ്രദ്ധയോടെ കൈകാര്യം ചെയ്യുക.


The new software update includes important security patches.

പുതിയ സോഫ്റ്റ്‌വെയർ അപ്‌ഡേറ്റിൽ സുപ്രധാനമായ സുരക്ഷാ പാച്ചുകൾ ഉൾപ്പെടുന്നു.


Data breaches can have serious consequences for individuals and organizations.

ഡാറ്റാ ലംഘനങ്ങൾ വ്യക്തികൾക്കും, സ്ഥാപനങ്ങൾക്കും ഗുരുതരമായ പ്രത്യാഘാതങ്ങൾ ഉണ്ടാക്കും.


Cybersecurity is a growing concern in today's digital world.

ഇന്നത്തെ ഡിജിറ്റൽ ലോകത്ത് സൈബർ സുരക്ഷ ഒരു പ്രധാന പ്രശ്നമായി വളർന്നു വരുന്നു.


The company is investing heavily in cybersecurity training for its employees.

തൊഴിലാളികൾക്കായി സൈബർ സുരക്ഷാ പരിശീലനത്തിൽ കമ്പനി വലിയ തോതിൽ നിക്ഷേപം നടത്തുന്നു.


Protect your personal information online to avoid identity theft.

സ്വകാര്യ വിവരങ്ങൾ ഓൺലൈനിൽ സംരക്ഷിച്ച്,  സ്വത്വ മോഷണം (identity theft)  ഒഴിവാക്കുക.