SQL ఇంజెక్షన్

రచయిత: Peter Berry
సృష్టి తేదీ: 13 ఆగస్టు 2021
నవీకరణ తేదీ: 22 జూన్ 2024
Anonim
ప్రారంభకులకు SQL ఇంజెక్షన్ - ఇప్పుడు ప్రో హ్యాకర్ నుండి నేర్చుకోండి
వీడియో: ప్రారంభకులకు SQL ఇంజెక్షన్ - ఇప్పుడు ప్రో హ్యాకర్ నుండి నేర్చుకోండి

విషయము

నిర్వచనం - SQL ఇంజెక్షన్ అంటే ఏమిటి?

SQL ఇంజెక్షన్ అనేది కంప్యూటర్ దాడి, దీనిలో హానికరమైన కోడ్ పేలవంగా రూపొందించిన అనువర్తనంలో పొందుపరచబడి బ్యాకెండ్ డేటాబేస్కు పంపబడుతుంది. హానికరమైన డేటా అప్పుడు డేటాబేస్ ప్రశ్న ఫలితాలను లేదా ఎన్నడూ అమలు చేయని చర్యలను ఉత్పత్తి చేస్తుంది.


మైక్రోసాఫ్ట్ అజూర్ మరియు మైక్రోసాఫ్ట్ క్లౌడ్‌కు పరిచయం | ఈ గైడ్ మొత్తంలో, క్లౌడ్ కంప్యూటింగ్ అంటే ఏమిటి మరియు క్లౌడ్ నుండి మీ వ్యాపారాన్ని తరలించడానికి మరియు అమలు చేయడానికి మైక్రోసాఫ్ట్ అజూర్ మీకు ఎలా సహాయపడుతుందో మీరు నేర్చుకుంటారు.

టెకోపీడియా SQL ఇంజెక్షన్ గురించి వివరిస్తుంది

SQL ఇంజెక్షన్ దాడికి ఉదాహరణ ద్వారా వెళ్దాం:

బ్యాంక్ కార్యకలాపాలను నడుపుతున్న అనువర్తనం కస్టమర్ యొక్క సామాజిక భద్రత సంఖ్య వంటి డేటా పాయింట్లను ఉపయోగించి కస్టమర్ వివరాల కోసం శోధించడానికి ఉపయోగించే మెనూలను కలిగి ఉంటుంది. నేపథ్యంలో, ఎంటర్ చేసిన శోధన విలువలను ఈ క్రింది విధంగా పంపించడం ద్వారా డేటాబేస్లో నడుస్తున్న SQL ప్రశ్నను అప్లికేషన్ పిలుస్తుంది:

క్లయింట్_పేరు, టెలిఫోన్, చిరునామా, తేదీని ఎంచుకోండి WHERE social_sec_no = 23425

ఈ నమూనా స్క్రిప్ట్‌లో, వినియోగదారు అప్లికేషన్ మెను విండోలో 23425 విలువను నమోదు చేసి, సామాజిక భద్రత సంఖ్యను నమోదు చేయమని వినియోగదారుని అభ్యర్థిస్తున్నారు. అప్పుడు, వినియోగదారు అందించిన విలువను ఉపయోగించి, ఒక SQL ప్రశ్న డేటాబేస్లో నడుస్తుంది.

SQL పరిజ్ఞానం ఉన్న వినియోగదారు అనువర్తనాన్ని అర్థం చేసుకోవచ్చు మరియు సామాజిక భద్రత సంఖ్యను అడిగినప్పుడు ఒకే విలువను నమోదు చేయడానికి బదులుగా, “23425 లేదా 1 = 1” స్ట్రింగ్‌ను నమోదు చేయండి, ఇది డేటాబేస్కు ఈ క్రింది విధంగా పంపబడుతుంది:

క్లయింట్_పేరు, టెలిఫోన్, చిరునామా, తేదీని ఎంచుకోండి WHERE social_sec_no = 23425 లేదా 1 = 1

WHERE నిబంధన ముఖ్యమైనది ఎందుకంటే ఇది దుర్బలత్వాన్ని పరిచయం చేస్తుంది. డేటాబేస్లో, షరతు 1 = 1 ఎల్లప్పుడూ నిజం, మరియు క్లయింట్ సామాజిక భద్రత సంఖ్య వివరాలు (23425) లేదా WHERE 1 = 1 ను తిరిగి ఇవ్వడానికి ప్రశ్న పేర్కొనబడినందున, ప్రశ్న పట్టికలోని అన్ని అడ్డు వరుసలను తిరిగి ఇస్తుంది, అది కాదు అసలు ఉద్దేశం.

పై SQL ఇంజెక్షన్ దాడి ఉదాహరణ చాలా సులభం, కానీ బ్యాకెండ్ డేటాబేస్ ప్రశ్న లేదా ఆదేశాన్ని అమలు చేయడానికి అనువర్తనాన్ని మోసగించడానికి ఒక దుర్బలత్వాన్ని ఎలా ఉపయోగించుకుంటుందో ఇది చూపిస్తుంది.

సరైన అనువర్తన రూపకల్పనను నిర్ధారించడం ద్వారా SQL ఇంజెక్షన్ దాడులను తగ్గించవచ్చు, ప్రత్యేకించి డేటాబేస్ ప్రశ్నలు లేదా ఆదేశాలను అమలు చేయడానికి వినియోగదారు ఇన్పుట్ అవసరమయ్యే మాడ్యూళ్ళలో. పై ఉదాహరణలో, అనువర్తనం మార్చబడుతుంది, తద్వారా ఇది ఒక సంఖ్యా విలువను మాత్రమే అంగీకరిస్తుంది.