1 00:00:00,000 --> 00:00:09,250 2 00:00:09,250 --> 00:00:10,300 >> 루치아노 아랑 : OK, 얘들 아. 3 00:00:10,300 --> 00:00:11,550 내 이름은 루치아노 아랑입니다. 4 00:00:11,550 --> 00:00:13,915 나는 아담스 하우스 2 학년이야. 5 00:00:13,915 --> 00:00:17,550 그리고 우리는 이야기 할거야 웹 보안 적극적인 방어. 6 00:00:17,550 --> 00:00:24,220 그래서 나는 정보의 사무실을 위해 일 SEAS의 보안. 7 00:00:24,220 --> 00:00:28,670 그리고 여름 동안, 나는에 구금 정보했다 SeguraTec, 8 00:00:28,670 --> 00:00:31,310 봉사 보안 업체 컬럼비아의 은행. 9 00:00:31,310 --> 00:00:34,740 내가 배운 곳은 대부분의 지금까지 배운 내용. 10 00:00:34,740 --> 00:00:37,990 >> 그래서 우리가하고있는 물질의 일부 오늘에 갈 예정, 우리는하지 않은 11 00:00:37,990 --> 00:00:39,670 정말 클래스에 대한 이야기​​. 12 00:00:39,670 --> 00:00:40,410 하지만 우리는 곧 것입니다. 13 00:00:40,410 --> 00:00:42,360 그것은 SQL, 자바 스크립트처럼 될 것입니다. 14 00:00:42,360 --> 00:00:44,870 그리고 우리는 정말 이상 사라하지 않았습니다. 15 00:00:44,870 --> 00:00:47,730 그래서 그것을 통해 비행의 정렬 및 수 당신은 몇 가지를 알 수 있습니다. 16 00:00:47,730 --> 00:00:48,890 하지만 곧, 당신은 그것을 배울 수 있습니다. 17 00:00:48,890 --> 00:00:52,080 그리고 그것은 모든 의미가 있습니다. 18 00:00:52,080 --> 00:00:54,010 또 다른 것은 - 19 00:00:54,010 --> 00:00:55,780 윤리적있어. 20 00:00:55,780 --> 00:01:00,560 당신이 배울 수있는 것들 중 일부는, 당신 비 윤리적 인 방법으로 사용할 수 있습니다. 21 00:01:00,560 --> 00:01:01,950 >> 그것은 당신의 경우, 확실히하십시오. 22 00:01:01,950 --> 00:01:04,500 나는 확실히 당신들에게 동기를 부여 자신의 서버를 시도하고, 시도 23 00:01:04,500 --> 00:01:05,519 그 안에 것. 24 00:01:05,519 --> 00:01:08,500 당신이 그들을 통과 할 수 있는지, 당신은 그 안에 얻을 수 있다면. 25 00:01:08,500 --> 00:01:09,560 하지만 다른 사람입니다. 26 00:01:09,560 --> 00:01:12,390 경찰이 정말 농담을 좋아하지 않는다 전체, 우리는 여기에 이​​것을 넣어. 27 00:01:12,390 --> 00:01:14,040 우리는 둘러 쌓여 있었다. 28 00:01:14,040 --> 00:01:15,780 그들은 정말 화가. 29 00:01:15,780 --> 00:01:18,700 >> 그래서이 웹 사이트를 통해 머리. 30 00:01:18,700 --> 00:01:23,560 나는 여기 열었습니다. 31 00:01:23,560 --> 00:01:26,780 이것은 웹 사이트이며, 예 무리가 있습니다. 32 00:01:26,780 --> 00:01:30,000 무슨 일이되는 첫 번째 예 종류의 훨씬 쉽게 될 것입니다 33 00:01:30,000 --> 00:01:33,470 어떤 의미에서 마지막 예보다 그 첫 번째 예 34 00:01:33,470 --> 00:01:34,970 완전히 안전하지 않습니다. 35 00:01:34,970 --> 00:01:40,850 그리고 마지막 하나는 종류의 무엇이다 정상적인 웹 보안 사람이 할 것입니다. 36 00:01:40,850 --> 00:01:42,760 하지만 당신은 여전히​​ 정렬 할 수 있습니다 의 주위에 얻을. 37 00:01:42,760 --> 00:01:44,860 그리고 우리는 하나에 초점을 맞추고에가는거야 두, 예를 하나, 둘. 38 00:01:44,860 --> 00:01:49,880 39 00:01:49,880 --> 00:01:49,920 >> OK. 40 00:01:49,920 --> 00:01:52,780 의 크로스 사이트 스크립팅 시작하자. 41 00:01:52,780 --> 00:01:56,100 자바 스크립트는에 실행 클라이언트의 브라우저. 42 00:01:56,100 --> 00:01:59,980 그것은 당신이 사용하는 프로그래밍 언어의 클라이언트의 브라우저에서 실행하기 때문에 43 00:01:59,980 --> 00:02:04,120 당신은 웹 사이트를 업데이트 할 필요가 없습니다 다시 서버로 이동합니다. 44 00:02:04,120 --> 00:02:04,940 당신은 실행해야합니다. 45 00:02:04,940 --> 00:02:08,870 예를 들어, 페이스 북, 당신은 필요가 없습니다 새로운 상태에 대한 웹 사이트를 다시로드 46 00:02:08,870 --> 00:02:09,710 업데이트가 올 수 있습니다. 47 00:02:09,710 --> 00:02:12,170 그것은 생성하기 위해 자바 스크립트를 사용하는 것 이 모든 것들. 48 00:02:12,170 --> 00:02:16,290 그래서 우리는 악의적 인 자바 스크립트를 삽입 할 수 있습니다 웹 사이트에. 49 00:02:16,290 --> 00:02:20,890 그리고 그 방법으로, 우리는에 대한 링크를 보낼 때 사람, 우리는 종류의로 보낼 수 50 00:02:20,890 --> 00:02:23,050 우리가 원하는 코드의 일부. 51 00:02:23,050 --> 00:02:26,450 >> 지속성 및 비 지속성있다 자바 스크립트 - 52 00:02:26,450 --> 00:02:30,640 영구 및 비 영구적 사이트 간 스크립트, 내 말은. 53 00:02:30,640 --> 00:02:33,760 그 차이는 고정 되 될 것입니다 자바 스크립트입니다 54 00:02:33,760 --> 00:02:36,060 웹 사이트에 저장됩니다. 55 00:02:36,060 --> 00:02:39,780 그리고 비 영구적 인 자바 스크립트가 될 것입니다 이 사실은 한 번만 발생합니다. 56 00:02:39,780 --> 00:02:41,795 그럼 예를 살펴 보자 진짜 빨리. 57 00:02:41,795 --> 00:02:45,660 58 00:02:45,660 --> 00:02:46,130 >> OK. 59 00:02:46,130 --> 00:02:51,620 그래서이 웹 사이트, 간단하고, 아무것도 여기에서 발생합니다. 60 00:02:51,620 --> 00:02:53,070 그리고 우리가하려고하는거야 일부 자바 스크립트를 삽입합니다. 61 00:02:53,070 --> 00:02:58,110 그래서 우리는 자바 스크립트 작성을 시작하는 방법 우리는 시작 스크립트로 시작된다. 62 00:02:58,110 --> 00:03:00,570 그리고 우리는 스크립트를 닫습니다. 63 00:03:00,570 --> 00:03:03,770 우리는 단순히 메시지를 넣을거야 - 64 00:03:03,770 --> 00:03:05,410 내가 당신을 보여 드리죠 - 65 00:03:05,410 --> 00:03:06,500 경고. 66 00:03:06,500 --> 00:03:11,150 경고 기능입니다 자바 스크립트 뭔가를 표시하기 위해 사용. 67 00:03:11,150 --> 00:03:12,400 그럼 진짜 빨리 그것을 시도 할 수 있습니다. 68 00:03:12,400 --> 00:03:15,600 69 00:03:15,600 --> 00:03:18,944 나는 갈 경고 안녕하세요거야. 70 00:03:18,944 --> 00:03:20,400 글쎄, 내가 넣었 어 - 71 00:03:20,400 --> 00:03:24,510 72 00:03:24,510 --> 00:03:25,460 OK. 73 00:03:25,460 --> 00:03:26,540 그래서 간단합니다. 74 00:03:26,540 --> 00:03:28,730 >> 우리는 웹 사이트에 자바 스크립트를 넣어, 그리고이 등장했습니다. 75 00:03:28,730 --> 00:03:31,200 그리고 그것은 일종의에만 발생 우리의 웹 사이트에, 오른쪽? 76 00:03:31,200 --> 00:03:33,040 그렇지 않은 같은 것 같습니다 문제가, 오른쪽? 77 00:03:33,040 --> 00:03:34,920 내 말은, 어떻게 사용할 수 이 악의적? 78 00:03:34,920 --> 00:03:39,930 해커 않도록하는 방법 이것은 정말 간단합니다. 79 00:03:39,930 --> 00:03:40,970 그들은 그것을 잡아 것입니다. 80 00:03:40,970 --> 00:03:43,750 그들은 당신이 링크를 보낼 수 있습니다. 81 00:03:43,750 --> 00:03:46,780 내가 지금 당신에게이 링크를 보내드립니다 경우, 그리고 당신은 그것을 열어, 그것은 것 82 00:03:46,780 --> 00:03:51,620 말,여보세요, 그런 말 내 웹 사이트 안녕하세요 당신을 말하고있다. 83 00:03:51,620 --> 00:03:57,280 >> 그래서 내가 뭔가를 말한다면 조금 똑똑, 내가 끌어 경우 84 00:03:57,280 --> 00:03:59,880 자바 스크립트 기능 I 종류 벌써 썼다 - 85 00:03:59,880 --> 00:04:03,940 당신이 그것을 보면 경우에, 나는 갈거야 내가 쓴 전에 이상. 86 00:04:03,940 --> 00:04:06,650 그래서 우리는 시간 제한을 설정하는 것입니다. 87 00:04:06,650 --> 00:04:08,450 우리는 기다릴거야 몇 초. 88 00:04:08,450 --> 00:04:13,970 사실, 만약 우리가 기다릴거야 나는 5 초를 잘못 본게. 89 00:04:13,970 --> 00:04:15,870 이 밀리 초 단위로 이동합니다. 90 00:04:15,870 --> 00:04:18,640 그리고 우리가 무엇을 할 거 야 우리가있어입니다 경고하려고하는 로그인 91 00:04:18,640 --> 00:04:21,459 다시 로그인 할 수 초과 92 00:04:21,459 --> 00:04:23,990 그리고 우리는 위치를 변경거야 다른 위치에. 93 00:04:23,990 --> 00:04:30,370 94 00:04:30,370 --> 00:04:32,970 >> 그래서 사람이 웹 사이트를 보내는 경우, 그들은이 될 것입니다 95 00:04:32,970 --> 00:04:34,380 진정, 주변 검색. 96 00:04:34,380 --> 00:04:35,650 아무 일도 없어요. 97 00:04:35,650 --> 00:04:38,550 그리고 5 초, 돼가 말, 로그인 시간이 초과되었습니다. 98 00:04:38,550 --> 00:04:40,200 다시 로그인 해주세요 99 00:04:40,200 --> 00:04:43,400 그들은 OK를 클릭하면, 그럴려고 다른 웹 사이트에 걸릴. 100 00:04:43,400 --> 00:04:45,980 아마도, 웹 사이트는 것 웹 사이트와 유사한 것이 101 00:04:45,980 --> 00:04:47,280 그들은 이전에 있었다. 102 00:04:47,280 --> 00:04:50,770 그리고 그들은 로그인 할거야 자신의 내 웹 사이트 대신에 자격 증명 103 00:04:50,770 --> 00:04:51,850 자신의 웹 사이트. 104 00:04:51,850 --> 00:04:54,780 >> 그래서 나는 사람들을 보낼 수 있습니다 이 링크를 이메일을 보내십시오. 105 00:04:54,780 --> 00:04:56,240 나는 오, 여기에 링크의 말. 106 00:04:56,240 --> 00:04:57,290 이는 예를 들어 은행이다. 107 00:04:57,290 --> 00:05:01,390 나는 여기에서 말하는이 링크를 이동합니다. 108 00:05:01,390 --> 00:05:03,730 그들은 그것을 발송하면, 그들은이야 주위에 검색 될 것. 109 00:05:03,730 --> 00:05:07,560 I은 15 초, 20 초 동안 기다릴 수있다, 다음이가 다시 로그인하시기 바랍니다 팝업 110 00:05:07,560 --> 00:05:08,840 다시 로그인합니다. 111 00:05:08,840 --> 00:05:10,120 너희들은 그것을 시도 할 수 있습니다 더 많은 것들. 112 00:05:10,120 --> 00:05:13,190 좀 복잡해 너희들 때문에 자바 스크립트를 볼 수, 그래서 당신은 그렇지 않을 수도있다 113 00:05:13,190 --> 00:05:14,750 일부 기능을 알 수 없습니다. 114 00:05:14,750 --> 00:05:18,625 그러나 당신이해야 할 모든 시작이다 스크립트로, 스크립트로 끝납니다. 115 00:05:18,625 --> 00:05:22,105 116 00:05:22,105 --> 00:05:25,510 그리고 당신은 무엇이 든을 할 수 있습니다 중간에. 117 00:05:25,510 --> 00:05:27,350 >> 경고 기다리 기능입니다. 118 00:05:27,350 --> 00:05:29,365 창 위치를 이동합니다 새 위치로. 119 00:05:29,365 --> 00:05:31,370 하지만 당신은 훨씬 더 많은 작업을 수행 할 수 있습니다. 120 00:05:31,370 --> 00:05:32,630 그래서 아이디어는 즉 우리는 그것을 벗어. 121 00:05:32,630 --> 00:05:39,350 나는 예를 두 가지로 이동, 그리고 경우 이 같은 코드에 넣어, 그것의 122 00:05:39,350 --> 00:05:40,210 작동하지 않을. 123 00:05:40,210 --> 00:05:43,620 그래서 있기 때문에 모든 것을 인쇄 할 것 무엇을이 웹 사이트는 원래 124 00:05:43,620 --> 00:05:50,350 내가 여기서 무엇을 넣으면된다 않습니다, 바로 여기 그것을 밖으로 인쇄합니다. 125 00:05:50,350 --> 00:05:52,390 그래서 무엇을 인쇄 아니에요. 126 00:05:52,390 --> 00:05:55,560 이 예는 실제로 확인하는 중입니다 스크립트가 있는지 확인합니다. 127 00:05:55,560 --> 00:05:57,163 그래서 그래, 어서. 128 00:05:57,163 --> 00:05:57,606 을 올려주세요. 129 00:05:57,606 --> 00:05:59,560 >> 청중 : 보내지 않습니다 GET 또는 요구를 배치? 130 00:05:59,560 --> 00:06:00,670 >> 루치아노 아랑 : 네. 그들이있어 GET 요청을 전송. 131 00:06:00,670 --> 00:06:01,350 >> 청중 : 그래? 132 00:06:01,350 --> 00:06:02,490 >> 루치아노 아랑 : 네. 133 00:06:02,490 --> 00:06:04,030 또한 브라우저는 POST 요청을 사용합니다. 134 00:06:04,030 --> 00:06:07,470 하지만 GET 요청을 보여주기 위해 노력하고있어 우리는 무엇을 볼 수 있도록 135 00:06:07,470 --> 00:06:10,760 실제로 일어나고. 136 00:06:10,760 --> 00:06:12,880 그래서 우리는이 코드를 보면 - 그래서 더 이상 작동하지 않습니다. 137 00:06:12,880 --> 00:06:24,870 그리고 우리는이 코드를 살펴 경우, 그것은 예를 들어 두에있을 것입니다. 138 00:06:24,870 --> 00:06:29,300 이 사람이 무엇을하고 있는지, 그 사람 이 브라우저 담당 - 139 00:06:29,300 --> 00:06:35,370 OK, 열 - 140 00:06:35,370 --> 00:06:39,290 단어 스크립트를 대체하고있다. 141 00:06:39,290 --> 00:06:42,850 이것은 PHP입니다, 어느 너희들 수도 아직 조금 보았다. 142 00:06:42,850 --> 00:06:46,250 >> 그는 단지 대신하는 이름과 단어 스크립트. 143 00:06:46,250 --> 00:06:50,895 그래서하지만, 내가 진행하는 경우 단지에 넣어 - 144 00:06:50,895 --> 00:06:58,520 145 00:06:58,520 --> 00:07:02,360 나는 다시 내 코드를 잡아, 내가 갈거야 경우 그것을 조금을 수정할 수 있습니다. 146 00:07:02,360 --> 00:07:15,010 대신 스크립트, 나는 변경거야 그것은 자본 R. 그리고있는 스크립트 147 00:07:15,010 --> 00:07:16,390 우리는이 코드가 작동하는지 확인하는 것입니다. 148 00:07:16,390 --> 00:07:19,090 그래서, 그것을 밖으로 인쇄되지 이는 좋은 징조입니다. 149 00:07:19,090 --> 00:07:21,990 그리고 희망이 더 많은 초, 그것은 팝업 것입니다. 150 00:07:21,990 --> 00:07:22,820 >> 로그인 시간이 초과되었습니다. 151 00:07:22,820 --> 00:07:23,210 OK. 152 00:07:23,210 --> 00:07:24,460 괜찮아요. 153 00:07:24,460 --> 00:07:27,670 그래서 스크립트를 확인하는 수도 반드시 작동하지. 154 00:07:27,670 --> 00:07:28,130 사람 - 155 00:07:28,130 --> 00:07:32,290 또한 스크립트 대문자를 확인할 수 있습니다, 스크립트 소문자, STR의 경우 156 00:07:32,290 --> 00:07:34,180 그들은 같은 것을 확인, 비교. 157 00:07:34,180 --> 00:07:38,480 그러나 해커는 아직 어떤 종류의 작업을 수행 할 수 있습니다 우리가 움직일 때 우리는 Vigenere에서 한 158 00:07:38,480 --> 00:07:40,620 다시 몇 자, 앞으로 이동합니다. 159 00:07:40,620 --> 00:07:43,470 그리고 스크립트를 넣어하는 방법을 알아낼 수 있습니다 다시는 주입 할 수 있도록 거기에 160 00:07:43,470 --> 00:07:44,460 해당 스크립트. 161 00:07:44,460 --> 00:07:50,370 >> 그래서 당신이 사용하고자하는 반드시 htmlspecialchars은 다음과 같다 162 00:07:50,370 --> 00:07:51,330 당신의 웹 사이트를 보호합니다. 163 00:07:51,330 --> 00:07:56,490 그리고 어떤이가하는 것은 만드는 것입니다 당신이에 넣어 그 무엇 - 164 00:07:56,490 --> 00:07:59,610 예를 들어, 인용하거나 -보다보다 크거나 작은 165 00:07:59,610 --> 00:08:04,701 무언가로 대체 그것은 수 없습니다 - 166 00:08:04,701 --> 00:08:05,951 내가 여기에 확대하자 - 167 00:08:05,951 --> 00:08:08,730 168 00:08:08,730 --> 00:08:09,685 실제 앰퍼샌드. 169 00:08:09,685 --> 00:08:13,420 그것은 그 특별한 HTML을 대체합니다 우리가있을 때 우리가 볼 수 문자 170 00:08:13,420 --> 00:08:14,670 에 대해 이야기 - 171 00:08:14,670 --> 00:08:18,635 172 00:08:18,635 --> 00:08:20,740 오, 저를 다시 걸릴 것입니다 - 173 00:08:20,740 --> 00:08:24,220 174 00:08:24,220 --> 00:08:25,380 여기 이러한 문자. 175 00:08:25,380 --> 00:08:28,180 >> 이러한 의미 뭔가 오고있다. 176 00:08:28,180 --> 00:08:31,570 HTML, 그 시작 브래킷 우리에게 알려줍니다 뭔가 177 00:08:31,570 --> 00:08:33,299 관련 HTML이오고있다. 178 00:08:33,299 --> 00:08:33,980 그리고 우리는 그것을 제거하려고합니다. 179 00:08:33,980 --> 00:08:36,200 우리는에 HTML을 넣어 싶지 않아 website.k 우리는 사용자가되고 싶지 않아 180 00:08:36,200 --> 00:08:40,260 자신의 웹 사이트에 뭔가를 할 수 그와 같이, 자신의 웹 사이트에 영향을 미칠 수 181 00:08:40,260 --> 00:08:43,480 스크립트 나 HTML 또는 그런 일. 182 00:08:43,480 --> 00:08:53,090 중요한 것은 당신에게 그 사용자 입력을 살균. 183 00:08:53,090 --> 00:08:54,720 >> 그래서 사용자가 입력 많은 일을 할 수있다. 184 00:08:54,720 --> 00:08:58,110 그는 입력 시도 잔뜩 수 여전히으로 브라우저를 속일 수 185 00:08:58,110 --> 00:08:59,410 이 스크립트 코드를 실행할 수 있습니다. 186 00:08:59,410 --> 00:09:02,870 당신이 원하는 것은 그냥 볼 수 있습니다 스크립트,하지만 모든 것을 볼 187 00:09:02,870 --> 00:09:04,250 이 악성이 될 수 있습니다. 188 00:09:04,250 --> 00:09:06,800 그리고 반드시 htmlspecialchars는 할 것이다 당신을 위해, 그래서 당신은 필요가 없습니다 189 00:09:06,800 --> 00:09:07,340 그것에 대해 걱정합니다. 190 00:09:07,340 --> 00:09:12,280 하지만 자신에 의해 수행하려고하지 않습니다 종류의 자신의 코드. 191 00:09:12,280 --> 00:09:14,055 모두가 XSS에 분명하다? 192 00:09:14,055 --> 00:09:14,370 >> OK. 193 00:09:14,370 --> 00:09:16,355 의는 SQL 주입에 가자. 194 00:09:16,355 --> 00:09:21,010 그래서 SQL 주입은 아마 번호를 하나의 취약점 195 00:09:21,010 --> 00:09:22,490 다른 웹 사이트에. 196 00:09:22,490 --> 00:09:24,350 나는 좋은 예를 의미 - 197 00:09:24,350 --> 00:09:27,350 난 그냥 멀리를 연구 하였다 이 것은. 198 00:09:27,350 --> 00:09:34,430 그리고이 멋진 기사를 발견 한 곳 나는 하버드가 위반 것을보고, 199 00:09:34,430 --> 00:09:35,390 해킹했다. 200 00:09:35,390 --> 00:09:37,370 그리고, 음, 궁금 해서요 그들이 그것을 어떻게 할 것인가? 201 00:09:37,370 --> 00:09:41,660 하버드는 가장 멋진 가장 어느 대학을 고정합니다. 202 00:09:41,660 --> 00:09:43,850 오른쪽? 203 00:09:43,850 --> 00:09:45,410 음, 서버를 위반하는, 해커는 사용 204 00:09:45,410 --> 00:09:47,710 SQL 주입라고 기술. 205 00:09:47,710 --> 00:09:50,250 >> 그래서이 하루 기준으로 하루에 발생합니다. 206 00:09:50,250 --> 00:09:53,590 사람들은 계정을 잊지 SQL 주입에 대한. 207 00:09:53,590 --> 00:09:54,930 하버드는 않습니다. 208 00:09:54,930 --> 00:10:00,050 나는 그것이 프린스턴, 여기라고 생각합니다 스탠포드, 코넬. 209 00:10:00,050 --> 00:10:03,550 어떻게 우리가 - 그래서이 SQL은 무엇인가 모든이를 데려 주입 210 00:10:03,550 --> 00:10:05,668 사람들이 아래로? 211 00:10:05,668 --> 00:10:08,010 OK. 212 00:10:08,010 --> 00:10:12,090 그래서 SQL 프로그래밍 언어입니다 우리는 데이터베이스에 액세스하는 데 사용합니다. 213 00:10:12,090 --> 00:10:14,560 우리가 할 것은 우리가 선택합니다 - 214 00:10:14,560 --> 00:10:18,510 그래서이 지금 읽는 것은 선택이다 테이블에서 모든 것을. 215 00:10:18,510 --> 00:10:22,640 >> SQL, 이러한 데이터베이스로 변경 정보의 전체 테이블을 가지고있다. 216 00:10:22,640 --> 00:10:26,550 그래서 사용자의 모든 선택 이름은 사용자 이름입니다. 217 00:10:26,550 --> 00:10:28,120 오른쪽? 218 00:10:28,120 --> 00:10:30,770 간단한만큼. 219 00:10:30,770 --> 00:10:34,490 SQL 주입의 아이디어는 우리 일부 악성 코드를 삽입하는 것 220 00:10:34,490 --> 00:10:37,270 뭔가를 실행에 서버를 속여 무엇보다 다른 221 00:10:37,270 --> 00:10:38,430 원래 실행되었다. 222 00:10:38,430 --> 00:10:44,970 그럼 사용자 이름에 대해 말을하자, 우리에 넣어 또는 1 같습니다. 223 00:10:44,970 --> 00:10:46,700 그래서 우리는 넣어 또는 1 같습니다. 224 00:10:46,700 --> 00:10:49,890 지금 읽을 방법이 선택 될 것입니다 사용자 모두에서에서 225 00:10:49,890 --> 00:10:51,360 사용자 -이 모든 것입니다 - 226 00:10:51,360 --> 00:10:55,880 이름은 사용자 이름이지만, 여기서 이름은 또는 1 같습니다. 227 00:10:55,880 --> 00:11:01,760 >> 그래서 이름이 아무것도 또는 1 같습니다. 228 00:11:01,760 --> 00:11:04,060 1 1은 항상 사실 같습니다. 229 00:11:04,060 --> 00:11:07,690 그래서이 항상 정보를 반환합니다 사용자의. 230 00:11:07,690 --> 00:11:08,100 OK. 231 00:11:08,100 --> 00:11:10,030 우리는 가질 필요가 없습니다 올바른 사용자 이름. 232 00:11:10,030 --> 00:11:14,240 우리는 우리가 원하는 무엇이든 할 수 있습니다, 그것은 정보를 반환합니다 233 00:11:14,240 --> 00:11:15,690 우리는 필요. 234 00:11:15,690 --> 00:11:17,160 다른 예를 살펴 보자. 235 00:11:17,160 --> 00:11:22,720 >> 우리는 사용자가 모든 것을 선택했다면, 이름은 DROP 테이블 사용자입니다 - 236 00:11:22,720 --> 00:11:26,420 그래서 당신은 어떻게 생각하십니까이 의지 하지, 이름에 넣어 경우 237 00:11:26,420 --> 00:11:29,560 DROP 테이블 사용자와? 238 00:11:29,560 --> 00:11:30,230 누구나 아이디어가? 239 00:11:30,230 --> 00:11:31,050 예. 240 00:11:31,050 --> 00:11:32,470 >> 청중 : 그것은 말할 것 그것은 모든 테이블을 덤프합니다. 241 00:11:32,470 --> 00:11:35,460 >> 루치아노 아랑 : 그것은 우리 말 것 웹 사이트의 모든 내용을 덤프, 242 00:11:35,460 --> 00:11:38,290 데이터베이스에있는 모든. 243 00:11:38,290 --> 00:11:41,910 어떤 사람들은이를 사용하는 - 그래서 나는 너희들을 보여 드리겠습니다. 244 00:11:41,910 --> 00:11:45,462 나는 테이블을 삭제하지 않도록 나는 당신을 원하지 않았기 때문에 245 00:11:45,462 --> 00:11:48,240 사람 내 테이블을 삭제합니다. 246 00:11:48,240 --> 00:11:49,850 어디 한 번 살펴 보자. 247 00:11:49,850 --> 00:11:54,410 그래서 이것은 단순히 정보를 당긴 특정 사람. 248 00:11:54,410 --> 00:11:57,550 이 경우 그래서 우리가 어떻게 알 수 있습니까 SQL 주입에 의해 영향을받지 않습니다. 249 00:11:57,550 --> 00:12:01,545 우리는 진짜 빨리 확인거야 우리는 무언가를 넣을 수있는 경우 - 250 00:12:01,545 --> 00:12:04,990 251 00:12:04,990 --> 00:12:06,080 내가이 코드를 복사 할 수 있습니다. 252 00:12:06,080 --> 00:12:08,140 나는 두 번째에 걸쳐 갈거야. 253 00:12:08,140 --> 00:12:12,210 나는 뿌리를 넣어거야 1은 1과 같습니다. 254 00:12:12,210 --> 00:12:15,510 >> 이 바로 여기,이 퍼센트 기호 23 - 255 00:12:15,510 --> 00:12:19,970 정말 무엇인지, 만약 I 에 여기 봐 - 256 00:12:19,970 --> 00:12:23,820 당신이 경우 HTML은, 숫자에 걸리는 방법 나는 공간에 넣으면 살펴 257 00:12:23,820 --> 00:12:28,380 여기에 - 우주 뭔가를한다면 여기에, 그것은 ~ 2 %로 변경됩니다. 258 00:12:28,380 --> 00:12:31,420 너희들은 여기를 확인 마십시오 나는 공간에 넣으면?에게 259 00:12:31,420 --> 00:12:36,710 그것이 작동하는 방법은 그 당신은 할 수 있습니다 HTML을 통해 ASCII 값을 보낼 수 있습니다. 260 00:12:36,710 --> 00:12:40,330 그래서, 예를 들면, 대체 20 %와 공간. 261 00:12:40,330 --> 00:12:41,970 알 수없는 경우들 그 전에 보았다. 262 00:12:41,970 --> 00:12:45,100 >> 그것은 퍼센트 (23) 해시 태그를 대체합니다. 263 00:12:45,100 --> 00:12:50,840 우리는 말이나에서 해시를 필요로 문 우리가 알 수 있도록 264 00:12:50,840 --> 00:13:00,885 주석 잊지 데이터베이스 끝이 마지막 세미콜론. 265 00:13:00,885 --> 00:13:03,060 우리는 그것에 대해 생각합니다. 266 00:13:03,060 --> 00:13:05,980 우리는 그냥 모든 것을 실행하려면 우리가 사전에 가지고 있음 267 00:13:05,980 --> 00:13:07,450 그 주석. 268 00:13:07,450 --> 00:13:08,710 의 그것을 살펴 보자. 269 00:13:08,710 --> 00:13:14,670 >> 내가 뭔가를 잘못 넣어 있다면 그래서 - 의 예를 들어 말을하자, 나는이 같음을 넣어 270 00:13:14,670 --> 00:13:15,690 1, 그것은 나에게 아무것도 제공하지 않습니다. 271 00:13:15,690 --> 00:13:22,930 내가 1에 넣을 때는 1에 해당하고, 그것 않습니다 뭔가를 반환,이 말하길 272 00:13:22,930 --> 00:13:24,660 이에 취약 SQL 주입. 273 00:13:24,660 --> 00:13:29,090 지금 알고있는 어떤 나는이 후 넣어 - 274 00:13:29,090 --> 00:13:39,110 예를 들어, 테이블을 삭제 또는 그런 일 275 00:13:39,110 --> 00:13:41,190 확실히 작동합니다. 276 00:13:41,190 --> 00:13:44,350 나는 SQL 인젝션에 취약 알고 왜냐면 277 00:13:44,350 --> 00:13:49,850 후드 아래에, 그것은시키는 것 날은 1 1 일에 해당 할. 278 00:13:49,850 --> 00:13:51,100 OK? 279 00:13:51,100 --> 00:13:53,950 280 00:13:53,950 --> 00:13:56,540 >> 그리고 우리는 다른 사람을 보면, 두 번째와 세 번째, 그건 281 00:13:56,540 --> 00:13:59,110 조금 더 할 것 의 아래에 확인 282 00:13:59,110 --> 00:14:03,680 그것이 무엇의 후드. 283 00:14:03,680 --> 00:14:07,425 그래서 사람이 드롭을 사용 아직 아무것도 또는 시도? 284 00:14:07,425 --> 00:14:08,760 너희들은 일종의 아직 SQL을받을 수 있나요? 285 00:14:08,760 --> 00:14:10,430 내가 알고 있기 때문에 너희들은하지 않은 아직 본, 그래서 종류의 286 00:14:10,430 --> 00:14:11,759 너희들 혼란. 287 00:14:11,759 --> 00:14:16,160 288 00:14:16,160 --> 00:14:18,480 어디 보자. 289 00:14:18,480 --> 00:14:21,270 그래서 SQLI을 방지하는 방법은 무엇입니까? 290 00:14:21,270 --> 00:14:21,390 OK. 291 00:14:21,390 --> 00:14:23,330 그래서이 정말 중요합니다 당신 때문에 사람은 확실히 방지 할 292 00:14:23,330 --> 00:14:24,090 이 귀하의 웹 사이트에. 293 00:14:24,090 --> 00:14:28,040 >> 그렇지 않은 경우, 모든 당신의 친구가 가고있다 그들은 모두 떨어질 때 당신의 재미를 만들어 294 00:14:28,040 --> 00:14:29,390 테이블. 295 00:14:29,390 --> 00:14:36,150 그래서 아이디어는 SQL을 복구한다는 것입니다 특정 방식으로, 반면에 당신이 일치 296 00:14:36,150 --> 00:14:41,940 정보와 사용자 입력 특정 문자열입니다. 297 00:14:41,940 --> 00:14:46,120 그래서이 작동하는 방법은 당신입니다 데이터베이스를 준비합니다. 298 00:14:46,120 --> 00:14:50,830 당신은 이름, 색상, 칼로리를 선택 데이터베이스라는 과일입니다. 299 00:14:50,830 --> 00:14:53,580 그리고 칼로리 미만이고 우리는 거기에 물음표를 넣어 300 00:14:53,580 --> 00:14:56,530 우리가 입력에가는거야 말 두 번째 뭔가. 301 00:14:56,530 --> 00:14:58,850 >> 그리고 색상이 동일하고, 우리는 문제를 넣어 마크는 우리가 갈거야 말 302 00:14:58,850 --> 00:15:00,913 입력 두 번째에 뭔가뿐만 아니라. 303 00:15:00,913 --> 00:15:02,660 OK? 304 00:15:02,660 --> 00:15:09,920 그리고 우리는두고, 그것을 실행 (150)과 빨간색. 305 00:15:09,920 --> 00:15:12,820 그리고 이것은 확인하기 위하여 검사 할 것이다 반드시이 두 가지가 - 306 00:15:12,820 --> 00:15:15,300 이 배열은 확인합니다 이들 두 정수입니다 307 00:15:15,300 --> 00:15:16,550 이 문자열입니다. 308 00:15:16,550 --> 00:15:18,810 309 00:15:18,810 --> 00:15:20,890 그 다음에 우리가 간다, 우리는 가져 모두, 우리는 붉은에 넣어. 310 00:15:20,890 --> 00:15:21,964 그것은 우리가 모두를 가져 오는 것을 의미합니다. 311 00:15:21,964 --> 00:15:26,790 우리가 실제로 SQL을 실행 의미 문 및 빨간색에 다시 넣어. 312 00:15:26,790 --> 00:15:30,530 여기에서 우리는 동일한 작업을 수행하지만, 우리 노란색에 대해 동일한 작업을 수행. 313 00:15:30,530 --> 00:15:32,490 그리고 우리는 모두를 가져 오기. 314 00:15:32,490 --> 00:15:36,140 >> 이런 방법으로, 우리는 사용자를 방지 입력 뭔가 할 수 있다는에서 315 00:15:36,140 --> 00:15:41,710 그것은 우리가 무엇을 지정, 문자열이 아닌 또는 정수, 예를 들어. 316 00:15:41,710 --> 00:15:45,100 317 00:15:45,100 --> 00:15:46,610 나는 이전에 대해 얘기했다 다른 사람에 의존. 318 00:15:46,610 --> 00:15:50,010 너희들이 프로젝트를 시작할 때입니다 대부분은 확실히 사용할 것 319 00:15:50,010 --> 00:15:52,310 부트 스트랩 또는 이와 유사한. 320 00:15:52,310 --> 00:15:53,490 너희들은 지금까지 워드 프레스를 사용 했습니까? 321 00:15:53,490 --> 00:15:57,170 아마 너희들은 사용하고 워드 프레스 가능성이 높습니다. 322 00:15:57,170 --> 00:16:00,050 그래서 사용하는 데 문제 다른 사람의 물건 - 323 00:16:00,050 --> 00:16:05,940 난 그냥 구글 진짜 빨리 갈거야 워드 프레스 취약점을 해결합니다. 324 00:16:05,940 --> 00:16:07,495 >> 지금은이를 끌어 경우 - 325 00:16:07,495 --> 00:16:08,995 말 그대로 2 초 구글을했다. 326 00:16:08,995 --> 00:16:12,300 327 00:16:12,300 --> 00:16:13,800 우리는 워드 프레스를 볼 수 있습니다 - 328 00:16:13,800 --> 00:16:17,450 이 9 월 '12로 일자. 329 00:16:17,450 --> 00:16:19,120 26 업데이트됩니다. 330 00:16:19,120 --> 00:16:23,620 워드 프레스의 기본 구성 3.6이 금지하지 않습니다하기 전에 331 00:16:23,620 --> 00:16:27,110 어떤 이미지, 어떤 힘 쉽게 있도록 332 00:16:27,110 --> 00:16:29,790 크로스 사이트 스크립팅 공격. 333 00:16:29,790 --> 00:16:34,530 그래서 짧은 이야기는 일단 우리가 일하고 있었다 와 - 내가보기 작업, 여름이었다 334 00:16:34,530 --> 00:16:34,970 인턴. 335 00:16:34,970 --> 00:16:40,400 그리고 우리는 종류의 작업을했다 큰 신용 카드 회사 등을들 수있다. 336 00:16:40,400 --> 00:16:42,020 >> 그리고 그들은라는 뭔가에 의존 - 337 00:16:42,020 --> 00:16:45,740 너희들이 이제까지 연주 나도 몰라 줌라라는 제품. 338 00:16:45,740 --> 00:16:51,750 Joomla의 정보는 다음의 제품에 사용되는 제품의 제어 - 종류의 유사에 339 00:16:51,750 --> 00:16:54,340 웹 사이트를 구축하는 데 사용되는 워드 프레스. 340 00:16:54,340 --> 00:16:56,060 그래서 그들은 자신의 웹 사이트를했다 줌라에서 작동합니다. 341 00:16:56,060 --> 00:16:59,290 이것은 실제로 신용 카드입니다 콜롬비아에있는 회사입니다. 342 00:16:59,290 --> 00:17:01,000 나는로 여러분을 데려 갈 게요 자신의 웹 사이트 진짜 빨리. 343 00:17:01,000 --> 00:17:04,550 344 00:17:04,550 --> 00:17:05,400 >> 그래서 그들은 줌라를 사용했습니다. 345 00:17:05,400 --> 00:17:08,630 그리고 그들은 줌라를 업데이트하지 않았다 최근에 추가합니다. 346 00:17:08,630 --> 00:17:12,160 그래서 우리는 한 번 봐 복용했을 때 자신의 코드는, 우리가 실제로 할 수 있었다 347 00:17:12,160 --> 00:17:18,430 자신의 코드 내부에 가서 훔쳐 모든 그들이 가진 것을 신용 카드 정보, 348 00:17:18,430 --> 00:17:21,670 모든 신용 카드 번호, 이름, 주소. 349 00:17:21,670 --> 00:17:22,740 그리고 이것은 그냥 .. - 350 00:17:22,740 --> 00:17:23,569 자신의 코드를 완벽하게 정상적으로이었다. 351 00:17:23,569 --> 00:17:24,710 그들은 좋은 코드를했다. 352 00:17:24,710 --> 00:17:25,389 그것은 모든 보안이었다. 353 00:17:25,389 --> 00:17:26,520 그들은 모든 데이터베이스를 점검. 354 00:17:26,520 --> 00:17:29,020 그들은 크로스 사이트 확인했다 스크립트 좋았어요. 355 00:17:29,020 --> 00:17:34,390 >> 그러나 그들은하지 않았다 뭔가를 사용 업데이트가 보안되지 않았습니다. 356 00:17:34,390 --> 00:17:36,940 그리고 그들을지도하는 - 그래서 너희들 확실히 다른를 사용하려고 357 00:17:36,940 --> 00:17:40,650 사람의 코드를 다른 사람의 프레임 워크 귀하의 웹 사이트를 구축 할 수 있습니다. 358 00:17:40,650 --> 00:17:43,860 그들이 보안적인 있는지 확인하기 때문에 때로는 그 사람이 아냐 359 00:17:43,860 --> 00:17:44,480 실수를합니다. 360 00:17:44,480 --> 00:17:47,440 그러나 다른 사람이 실수를하고, 당신은 그 때문에 아래로 떨어진다. 361 00:17:47,440 --> 00:17:51,190 362 00:17:51,190 --> 00:17:53,885 >> 암호 및 PII. 363 00:17:53,885 --> 00:17:56,820 그래서 암호. 364 00:17:56,820 --> 00:17:58,070 OK. 365 00:17:58,070 --> 00:17:59,980 366 00:17:59,980 --> 00:18:04,230 의 암호를 살펴 보도록하자 진짜 빨리. 367 00:18:04,230 --> 00:18:04,590 OK. 368 00:18:04,590 --> 00:18:06,520 저에게 말하십시오, 모든 사람 보안을 사용합니다 - 369 00:18:06,520 --> 00:18:09,030 여기 모든 사람을 바라고 있어요 보안 암호를 사용합니다. 370 00:18:09,030 --> 00:18:12,890 난 그냥시키는 거 그 가정으로합니다. 371 00:18:12,890 --> 00:18:14,850 그래서 너희들은 확실히 갈거야 귀하의 웹 사이트에 대한 암호를 저장합니다. 372 00:18:14,850 --> 00:18:17,440 당신이 뭔가를 만들거야 그런 로그인 또는 뭔가. 373 00:18:17,440 --> 00:18:19,610 중요한 것은 저장하지 않는 것입니다 일반 텍스트 암호. 374 00:18:19,610 --> 00:18:20,860 이것은 매우 중요하다. 375 00:18:20,860 --> 00:18:23,960 당신은 저장하지 않습니다 일반 텍스트 암호입니다. 376 00:18:23,960 --> 00:18:27,370 >> 그리고 당신은 확실히 정말 싶지 않아 단방향 해시에 저장합니다. 377 00:18:27,370 --> 00:18:32,440 그래서 하나의 방법 해시은 그 때 당신이 둘 때, 단어를 생성 378 00:18:32,440 --> 00:18:36,200 해시 함수에 단어, 그것은 것 비밀의 일종을 다시 생성 379 00:18:36,200 --> 00:18:39,390 메시지 또는 키의 비밀 세트. 380 00:18:39,390 --> 00:18:40,640 나는 당신에게 예를 보여 드리겠습니다. 381 00:18:40,640 --> 00:18:44,620 382 00:18:44,620 --> 00:18:50,250 나는 그들이 단어에서는 PassWord1 해시거야. 383 00:18:50,250 --> 00:18:55,280 그래서 MD5 해시 날을 반환하는 것입니다 이상한 정보의 일종. 384 00:18:55,280 --> 00:18:59,140 >> 문제는 그 사람들이 거기에있다 이 웹 사이트에 가고 싶어해야 385 00:18:59,140 --> 00:19:02,750 이미 정렬 파악 모든 MD5 해시의. 386 00:19:02,750 --> 00:19:06,030 그들은 그들에 앉아있다 했는가 자신의 컴퓨터, 그들은 모든 해시 387 00:19:06,030 --> 00:19:09,660 거기에 단순한 하나의 단어까지 그들은 일종의 이것이 무엇 얻었다. 388 00:19:09,660 --> 00:19:11,420 나는 이것을 본다면 - 389 00:19:11,420 --> 00:19:12,420 난 그냥이 해시를 잡았다. 390 00:19:12,420 --> 00:19:14,120 나는에서이 해시를 얻을 경우 - 391 00:19:14,120 --> 00:19:17,470 나는 웹 사이트에 가서, 내가 찾을 수있는 경우 이 해시 난에 도착하기 때문에 392 00:19:17,470 --> 00:19:24,100 데이터베이스, 나는 그것을보고, 사람 이미 나를 위해 그것을 알아 냈어. 393 00:19:24,100 --> 00:19:28,600 394 00:19:28,600 --> 00:19:29,100 >> 그래. 395 00:19:29,100 --> 00:19:35,030 그래서 사람들은 앉아서, 그리고 어떤 MD5 당신은 넣어 해시, 그들은거야 396 00:19:35,030 --> 00:19:37,760 당신에게 돌아 무엇인가 그 단어입니다. 397 00:19:37,760 --> 00:19:39,800 나는 같은 다른 단어를 해시 경우 - 398 00:19:39,800 --> 00:19:42,410 난 몰라 - 399 00:19:42,410 --> 00:19:43,490 trees2. 400 00:19:43,490 --> 00:19:46,050 나는 실망하지 않으 내 Google 검색에 의해. 401 00:19:46,050 --> 00:19:49,820 402 00:19:49,820 --> 00:19:52,780 저기, trees2입니다. 403 00:19:52,780 --> 00:19:55,930 그래서 많은 웹 사이트 여전히 MD5 해시를 사용합니다. 404 00:19:55,930 --> 00:19:57,730 그들은 오, 보안의 말. 405 00:19:57,730 --> 00:19:58,570 우리는 일반 텍스트로 저장 아닙니다. 406 00:19:58,570 --> 00:19:59,740 우리는이 MD5 해시가 있습니다. 407 00:19:59,740 --> 00:20:01,880 내가 할 일은 단지입니다 수를 구글. 408 00:20:01,880 --> 00:20:03,940 >> 심지어 자신을 계산할 필요가 없습니다. 409 00:20:03,940 --> 00:20:06,790 난 그냥 구글, 그리고 할 수있는 사람 이미 나를 위해 그것을했다. 410 00:20:06,790 --> 00:20:08,010 여기에 그들의 무리입니다. 411 00:20:08,010 --> 00:20:09,260 다음은 암호의 무리입니다. 412 00:20:09,260 --> 00:20:13,890 413 00:20:13,890 --> 00:20:18,680 그래서 확실히 MD5 해시를 사용하지 않는, 때문에 당신이 가지고있는 모든 414 00:20:18,680 --> 00:20:19,140 할 구글 그것입니다. 415 00:20:19,140 --> 00:20:20,390 그래서 대신 사용 하시겠습니까? 416 00:20:20,390 --> 00:20:29,340 417 00:20:29,340 --> 00:20:30,170 OK. 418 00:20:30,170 --> 00:20:31,260 염장이라는 것을. 419 00:20:31,260 --> 00:20:32,460 그래서 염장입니다 - 420 00:20:32,460 --> 00:20:36,280 우리가있을 때 너희들은 기억 무작위 이야기 - 421 00:20:36,280 --> 00:20:37,920 나는 그것이 무엇 PSET 확실하지 않다 - 422 00:20:37,920 --> 00:20:41,140 그것은이 PSET 또는 네 살? 423 00:20:41,140 --> 00:20:45,150 >> 우리는 발견에 대해 얘기했다 건초 더미에서 바늘. 424 00:20:45,150 --> 00:20:48,480 그리고 PSET, 그것은 말했다 당신은 할 수 그 실제로 어떤 임의의 파악 425 00:20:48,480 --> 00:20:51,840 누군가가 이미 실행 되었기 때문에 발생 임의의 백만 배는 그냥 426 00:20:51,840 --> 00:20:53,230 종류의가 생성 무엇을 형성했다. 427 00:20:53,230 --> 00:20:55,840 당신이하고 싶은 것은 입력에 넣어. 428 00:20:55,840 --> 00:20:57,130 그래서 일종의 무엇 염장입니다. 429 00:20:57,130 --> 00:21:00,900 그들은 이미 소금에 절인 것을 알아 냈다 각 작업에 대한 반환합니다. 430 00:21:00,900 --> 00:21:04,750 >> 그래서 염장가하는 것은 당신은 소금에 넣어. 431 00:21:04,750 --> 00:21:06,160 당신은 특정 단어에 넣어. 432 00:21:06,160 --> 00:21:09,720 그리고 따라 그 단어를 해시합니다 여기에 넣어 무엇에. 433 00:21:09,720 --> 00:21:13,570 그래서 난이 암호를 해시하는 경우 문장은 해시 것 434 00:21:13,570 --> 00:21:17,180 나는 PassWord1로 해시 다른 경우 다른 문장과 함께. 435 00:21:17,180 --> 00:21:21,670 그것은 종류의 어딘가를 제공합니다 시작하는 해시에 시작합니다. 436 00:21:21,670 --> 00:21:25,970 그래서 당신은 계산하기가 훨씬 더 어렵습니다하지만, 아직 특히, 그것을 계산할 수 있습니다 437 00:21:25,970 --> 00:21:26,830 당신은 나쁜 소금을 사용하는 경우. 438 00:21:26,830 --> 00:21:29,650 >> 사람들은 이미도 알아 낸 일반적인 염 및 파악 439 00:21:29,650 --> 00:21:31,500 는 것이 무엇인지. 440 00:21:31,500 --> 00:21:34,980 임의 염은 훨씬 더 나은, 하지만 가장 좋은 방법은 사용하는 것입니다 441 00:21:34,980 --> 00:21:38,160 토굴라는 것을. 442 00:21:38,160 --> 00:21:40,480 그리고 무엇 토굴 당신이 할 수 있습니다 그래서 이러한 기능은 - 않습니다 443 00:21:40,480 --> 00:21:41,820 이미 당신을 위해 만들었습니다. 444 00:21:41,820 --> 00:21:44,910 많은 사람들이 잊지 또는 그들은 그것을 사용하는 것을 잊지. 445 00:21:44,910 --> 00:21:54,520 하지만 토굴 PHP, 토굴을 보면 이미 저를위한 해시 문자열을 반환합니다. 446 00:21:54,520 --> 00:21:58,790 그리고 실제로 여러 번 염 그리고 여러 번 해시. 447 00:21:58,790 --> 00:22:00,070 >> 그래서 우리는이 작업을 수행 할 필요가 없습니다. 448 00:22:00,070 --> 00:22:04,790 그래서 당신이해야 할 모든 것입니다 토굴로 보내드립니다. 449 00:22:04,790 --> 00:22:08,170 그리고 그것은하지 않고 큰 해시를 생성합니다 당신은 소금에 대해 걱정할 필요 450 00:22:08,170 --> 00:22:08,990 또는 아무것도. 451 00:22:08,990 --> 00:22:12,000 당신은 소금에 있다면, 당신이 있기 때문에 당신은 무엇을 사용하는 소금 기억 452 00:22:12,000 --> 00:22:13,800 때문에하지 않을 경우, 당신은 얻을 수 있습니다 다시없는 비밀 453 00:22:13,800 --> 00:22:15,760 당신이 사용하는 소금. 454 00:22:15,760 --> 00:22:17,010 OK. 455 00:22:17,010 --> 00:22:21,120 456 00:22:21,120 --> 00:22:23,150 >> 또한 개인 식별 정보. 457 00:22:23,150 --> 00:22:26,730 그래서 사회 보장, 신용 카드 - 그것은 매우 분명하다. 458 00:22:26,730 --> 00:22:31,880 그러나 때때로 사람들은 길을 잊지 그것 작품은 당신이 얼마나 많은 정보입니다 459 00:22:31,880 --> 00:22:35,690 실제로 어떤 한 사람을 찾을 필요가? 460 00:22:35,690 --> 00:22:37,740 누군가에 대한 연구를했다 이 방법으로 다시. 461 00:22:37,740 --> 00:22:40,870 그리고 만약 당신이, 같았습니다 전체 이름, 당신은 찾을 수 없습니다 462 00:22:40,870 --> 00:22:41,610 쉽게 사람. 463 00:22:41,610 --> 00:22:43,900 하지만 당신은 전체 이름을 무엇이있는 경우 그리고 그들의 생년월일? 464 00:22:43,900 --> 00:22:47,770 식별 할 충분한 즉 특별히 누군가? 465 00:22:47,770 --> 00:22:52,760 >> 당신은 무엇을 자신의 이름이있는 경우 그들이에 살고, 주소? 466 00:22:52,760 --> 00:22:55,110 그 사람을 찾기에 충분하다? 467 00:22:55,110 --> 00:23:02,490 그들이 질문 할 때 그리고 그 무엇,의 개인 식별 정보, 468 00:23:02,490 --> 00:23:05,360 당신에 대해 무엇을 걱정해야 멀리 포기하지 않을? 469 00:23:05,360 --> 00:23:08,770 당신은 개인 식별을 포기하는 경우 누군가가 당신에게 제공하는 정보, 470 00:23:08,770 --> 00:23:11,420 당신은 잠재적으로 고소 할 수 있습니다. 471 00:23:11,420 --> 00:23:12,610 그리고 우리는 확실히 그것을 원하지 않는다. 472 00:23:12,610 --> 00:23:14,955 >> 그래서 당신은 당신의 웹 사이트를 퍼팅 할 때 아웃, 당신은 정말 멋진했다 473 00:23:14,955 --> 00:23:17,230 디자인, 잘하면 당신이 만든 멋진 마지막 프로젝트. 474 00:23:17,230 --> 00:23:18,370 당신이 정렬하려는 거기에 그것을 넣어. 475 00:23:18,370 --> 00:23:21,420 당신이 있는지 확인하려면 어떤 그것의 경우는, 사용자로부터 취하고있어 476 00:23:21,420 --> 00:23:25,310 개인 식별 정보, 당신 당신이 정말 존재하고 확인하려면 477 00:23:25,310 --> 00:23:26,560 그것으로주의. 478 00:23:26,560 --> 00:23:29,670 479 00:23:29,670 --> 00:23:31,080 >> 쉘 주입. 480 00:23:31,080 --> 00:23:31,350 OK. 481 00:23:31,350 --> 00:23:37,590 쉘 주입에 침입자를 할 수 있습니다 실제 명령 행에 대한 액세스를 얻을 482 00:23:37,590 --> 00:23:39,660 서버에있는. 483 00:23:39,660 --> 00:23:44,060 그리고 그 코드를 실행할 수의 당신이 제어 할 수있다. 484 00:23:44,060 --> 00:23:49,560 의이의 예를 들어 보자 여기 아름다운 문자열입니다. 485 00:23:49,560 --> 00:23:55,570 우리가 다시 웹 사이트에 가면, 난 코드 삽입으로 갈 예정. 486 00:23:55,570 --> 00:23:58,910 그래서이 일은입니다 - 487 00:23:58,910 --> 00:24:00,420 우리가 무엇이 었는지도의 이전에보고. 488 00:24:00,420 --> 00:24:11,200 우리는 무엇이든 넣어 사용자를시키는거야 그는 원하고, 그것을 인쇄합니다 489 00:24:11,200 --> 00:24:12,220 당신이 원하는대로. 490 00:24:12,220 --> 00:24:13,890 >> 그래서 전화를 넣어거야. 491 00:24:13,890 --> 00:24:15,540 어떤이가하는 것은 - 492 00:24:15,540 --> 00:24:16,940 그것은 연결하여 시작합니다. 493 00:24:16,940 --> 00:24:19,520 그래서 저를 실행하게됩니다 어떤 사람의 실행 명령 494 00:24:19,520 --> 00:24:21,500 전에 내 명령. 495 00:24:21,500 --> 00:24:23,980 그리고 시스템 명령을 실행하는거야. 496 00:24:23,980 --> 00:24:27,310 그리고이 마지막 문자열은 - 기억 내가 무엇에 대해 들었는데, 497 00:24:27,310 --> 00:24:31,725 당신은 인코딩해야하는 반면 그 URL 방법에. 498 00:24:31,725 --> 00:24:35,010 499 00:24:35,010 --> 00:24:36,992 지금은이를 실행하는 경우 - 500 00:24:36,992 --> 00:24:39,150 나는 당신을 여기에 보여 드리겠습니다 - 501 00:24:39,150 --> 00:24:41,100 내가 끝난 것을 볼 수 있습니다 최대 명령을 실행. 502 00:24:41,100 --> 00:24:45,700 503 00:24:45,700 --> 00:24:49,320 >> 이 사실은 실제 서버입니다 내 웹 사이트가 실행된다. 504 00:24:49,320 --> 00:24:55,840 505 00:24:55,840 --> 00:24:58,510 그래서 우리는 그것을 원하지 않는다, 내가 실행할 수 있기 때문에 - 506 00:24:58,510 --> 00:25:00,320 이 서버 내 아닙니다. 507 00:25:00,320 --> 00:25:04,030 그래서 엉망 싶지 않아 자신의 동생, 마커스의 서버. 508 00:25:04,030 --> 00:25:07,470 하지만 당신은 더 많은 명령을 실행할 수 있습니다 위험이. 509 00:25:07,470 --> 00:25:11,885 그리고 잠재적으로, 당신은 삭제할 수 있습니다 파일, 디렉토리를 제거합니다. 510 00:25:11,885 --> 00:25:14,390 511 00:25:14,390 --> 00:25:17,970 나는 특정 디렉토리에있는 경우 제거 할 수 있습니다 내가하고 싶었던,하지만 난 싶지 않아 512 00:25:17,970 --> 00:25:19,530 마커스에 그렇게 할 수 있습니다. 513 00:25:19,530 --> 00:25:20,420 그는 좋은 사람입니다. 514 00:25:20,420 --> 00:25:21,470 그는 나를 자신의 서버를 빌려. 515 00:25:21,470 --> 00:25:24,620 그래서 나는 그를 가만 두지 않을거야 좋은 껐다. 516 00:25:24,620 --> 00:25:32,280 >> 그래서 우리는 사용하지 않는다 - 우리는하지 않습니다 EVAL 또는 시스템을 사용하고 싶습니다. 517 00:25:32,280 --> 00:25:34,755 EVAL 또는 시스템은 우리를 수 이 시스템 호출을합니다. 518 00:25:34,755 --> 00:25:37,410 519 00:25:37,410 --> 00:25:38,410 제품군 평가 방법은 평가한다. 520 00:25:38,410 --> 00:25:40,790 시스템은 내가 달릴 것을 의미한다. 521 00:25:40,790 --> 00:25:42,490 그것은 시스템에 뭔가를 실행있어. 522 00:25:42,490 --> 00:25:46,730 그러나 우리는 이러한 일을 금지 할 수 있습니다 PHP 우리가 사용하지 않도록. 523 00:25:46,730 --> 00:25:47,400 그리고 파일 업로드. 524 00:25:47,400 --> 00:25:49,180 나는 굉장한를 할 거라고 파일 업로드가있는 것. 525 00:25:49,180 --> 00:25:52,740 그러나 같은 난 내 파일을 너희들에게 말했다 업로드 것은 작동하지 않습니다. 526 00:25:52,740 --> 00:25:54,590 지금은 파일을 업로드 할 수 있다면 - 527 00:25:54,590 --> 00:25:57,120 528 00:25:57,120 --> 00:26:00,830 내가 파일을 업로드 할 수 있었다 경우 그리고 포토 야 - 529 00:26:00,830 --> 00:26:03,180 당신은 업로드 일이 그 그림입니다. 530 00:26:03,180 --> 00:26:03,660 괜찮아요. 531 00:26:03,660 --> 00:26:04,280 아무 일도 발생하지 않습니다. 532 00:26:04,280 --> 00:26:10,840 >> 하지만 당신은 업로드 파일에 대한이있는 경우 예를 들어, 사용자는 실제로 업로드 533 00:26:10,840 --> 00:26:19,220 PHP 파일이나 exe 파일 또는 뭔가 그와 마찬가지로, 당신은 잠재적으로 할 수 534 00:26:19,220 --> 00:26:19,740 문제가있다. 535 00:26:19,740 --> 00:26:21,390 이는 이전에 작업했다. 536 00:26:21,390 --> 00:26:25,202 불행히도 나를 위해, 그것의 더 이상 작동하지 않습니다. 537 00:26:25,202 --> 00:26:30,230 제가 예를 들어,이 파일을 업로드하면, 난 업로드 할 수있는 권한을받지 538 00:26:30,230 --> 00:26:33,400 서버에 의한 파일 내되지 않는. 539 00:26:33,400 --> 00:26:38,670 그래서 사람은 정말 똑똑합니다. 540 00:26:38,670 --> 00:26:39,610 >> 그래서 우리는 원하지 않습니다 - 541 00:26:39,610 --> 00:26:40,130 난 너희들을 보여 주마 - 542 00:26:40,130 --> 00:26:41,840 OK, 이들은 정말 멋진 도구입니다. 543 00:26:41,840 --> 00:26:45,100 그래서이 - 544 00:26:45,100 --> 00:26:47,715 에 이동 - 너희들은 파이어 폭스가있는 경우 - 잘하면 당신이 할. 545 00:26:47,715 --> 00:26:54,260 SQL 주사라는 두 개의 부가 기능이있다 저와 크로스 사이트 스크립트 나. 546 00:26:54,260 --> 00:26:56,870 그들은 적은 쪽을 열어 측면에 바. 547 00:26:56,870 --> 00:27:01,480 그리고 이동한다면 예를 들어 CS60 - 548 00:27:01,480 --> 00:27:04,210 그래서이 일은이 보인다 모든 형태의 것을위한 - 549 00:27:04,210 --> 00:27:07,220 550 00:27:07,220 --> 00:27:08,760 바라건대, 나는받지 않습니다 이것에 대한 문제가있다. 551 00:27:08,760 --> 00:27:09,190 >> 하지만 OK. 552 00:27:09,190 --> 00:27:12,600 여기에 핀 시스템입니다. 553 00:27:12,600 --> 00:27:18,946 그래서 구멍을 찾고 시작하면 이 시스템은, 내가 가장 먼저하는 일이있다 554 00:27:18,946 --> 00:27:21,820 이 아름다운 조금 열어 측면에 도구입니다. 555 00:27:21,820 --> 00:27:24,160 그리고 양식을 테스트하는거야 자동 공격. 556 00:27:24,160 --> 00:27:28,510 그리고 어떤이가하는 일은 천천히 것입니다 브라우저의 무리를 엽니 다. 557 00:27:28,510 --> 00:27:29,930 다음은 브라우저의 무리입니다. 558 00:27:29,930 --> 00:27:33,320 그리고 그것은 모든 단일 조합을 시도하고 크로스 사이트 스크립팅의 559 00:27:33,320 --> 00:27:37,380 이 가능하고, 경우에 그 당신은 측면을 참조하십시오. 560 00:27:37,380 --> 00:27:42,080 >> 그리고 그것은 나에게 결과를 제공합니다 대답은 어떤 종류. 561 00:27:42,080 --> 00:27:42,860 모든 전달합니다. 562 00:27:42,860 --> 00:27:43,910 물론, 그들은 모두 전달합니다. 563 00:27:43,910 --> 00:27:46,190 내 말은, 그들은 정말 똑똑 거기 사람들. 564 00:27:46,190 --> 00:27:48,010 하지만 있다면 실행 - 565 00:27:48,010 --> 00:27:52,050 나는이 프로그램을 실행할 때 전에 시간을 가졌다 학생들의 최종 프로젝트에. 566 00:27:52,050 --> 00:27:56,080 단순히 저를 주입 SQL 실행 모든 다른 공격. 567 00:27:56,080 --> 00:28:00,080 그리고 SQL의 주입하려고 이 핀 서버. 568 00:28:00,080 --> 00:28:03,590 우리가 아래로 스크롤하면, 이처럼 예를 들어, 그것은 말한다 - 569 00:28:03,590 --> 00:28:04,960 이 반환하는 경우이 좋다. 570 00:28:04,960 --> 00:28:08,250 >> 그래서 어떤 특정 값을 테스트했습니다. 571 00:28:08,250 --> 00:28:11,170 그리고 서버는 반환 코드가 부정적이었다. 572 00:28:11,170 --> 00:28:11,780 일시적으로 제거합니다. 573 00:28:11,780 --> 00:28:13,030 이것은 좋은 것입니다. 574 00:28:13,030 --> 00:28:17,050 575 00:28:17,050 --> 00:28:20,750 그것은 모든 테스트를 시도합니다. 576 00:28:20,750 --> 00:28:21,790 그래서 당신은 간단하게 실행할 수 있습니다 - 577 00:28:21,790 --> 00:28:27,860 나는 웹 사이트의 실제를 찾을 수 있으면 좋겠다 빨리 그 날을있게 할 것입니다 - 578 00:28:27,860 --> 00:28:29,110 어쩌면 CS50 저장소. 579 00:28:29,110 --> 00:28:43,890 580 00:28:43,890 --> 00:28:45,711 >> 와우, 예정 너무 오래 걸릴. 581 00:28:45,711 --> 00:28:53,090 582 00:28:53,090 --> 00:28:55,130 나는 드리겠습니다 첫 번째 테스트 바로 완료되지. 583 00:28:55,130 --> 00:28:57,330 그래서 불평. 584 00:28:57,330 --> 00:28:58,470 그래서이 세 가지 있습니다. 585 00:28:58,470 --> 00:29:00,430 이러한 도구는 무료입니다. 586 00:29:00,430 --> 00:29:03,960 당신이 그들을 다운로드하고 실행할 수 있습니다 귀하의 웹 사이트, 그리고 당신을 말할 것이다 경우 587 00:29:03,960 --> 00:29:06,650 당신은 크로스 사이트 스크립트, 당신이 경우에 당신은, SQL이있는 경우 588 00:29:06,650 --> 00:29:07,900 등의 무언가. 589 00:29:07,900 --> 00:29:12,230 590 00:29:12,230 --> 00:29:14,500 나는 종류의 망치는거야. 591 00:29:14,500 --> 00:29:15,550 >> 무슨 일이 중요합니다 - 592 00:29:15,550 --> 00:29:17,900 OK, 그래서 사용자를 신뢰하지 않습니다. 593 00:29:17,900 --> 00:29:21,920 당신이 무엇이든간에 사용자 입력, 확인 당신이 그것을 살균, 당신은 청소, 594 00:29:21,920 --> 00:29:25,300 당신은 바로 정보 확인 그것은 무엇을 당신에게 당신을주고 있음 595 00:29:25,300 --> 00:29:28,240 그가 당신을주고 싶다. 596 00:29:28,240 --> 00:29:32,460 항상 업데이트 할 어떤 프레임 워크 당신은 실제로 사용하고 있는지. 597 00:29:32,460 --> 00:29:34,630 - 당신은 부트 스트랩과 같은 것을 사용하는 경우 598 00:29:34,630 --> 00:29:36,340 나는 너희들이 사용하려는 알고 그는 갈 것 때문에 부트 스트랩 599 00:29:36,340 --> 00:29:38,140 이상이 곧 클래스 - 600 00:29:38,140 --> 00:29:43,120 워드 프레스 나 뭐 그런, 일반적으로이 해킹 될 수있다. 601 00:29:43,120 --> 00:29:44,770 >> 그리고 당신은 알지도하지 않습니다. 602 00:29:44,770 --> 00:29:45,800 당신은 당신의 웹 사이트를 실행하고 있습니다. 603 00:29:45,800 --> 00:29:47,360 그리고 그것은 완전히 안전합니다. 604 00:29:47,360 --> 00:29:51,730 그리고 당신은 아래로 이동합니다. 605 00:29:51,730 --> 00:29:54,000 그래서 정말 빨리 낚시를하고 있습니다. 606 00:29:54,000 --> 00:29:55,770 하지만 Pentest와 실험실을 감사드립니다. 607 00:29:55,770 --> 00:29:58,140 나는 너희들에게 뭔가를 보여 주겠다 Pentest와 연구소했다. 608 00:29:58,140 --> 00:30:05,000 너희들은 정말 관심이 있다면 정말하고, 거기에 어떤 보안 609 00:30:05,000 --> 00:30:07,300 Pentest와 실험실 경우 호출 웹 사이트 너희들은 지금 당장로 이동합니다. 610 00:30:07,300 --> 00:30:10,730 아, 그 얘기가 아니 구요. 611 00:30:10,730 --> 00:30:12,030 그냥 다음과 같이 실행하는거야. 612 00:30:12,030 --> 00:30:14,400 구글은 나에게 답을 알려줍니다. 613 00:30:14,400 --> 00:30:16,590 >> OK. 614 00:30:16,590 --> 00:30:19,030 그리고 그것은 당신을 사용 가르친다 - 그래서 라고, 웹 침투를 배울 615 00:30:19,030 --> 00:30:21,060 올바른 방법을 테스트. 616 00:30:21,060 --> 00:30:23,650 그것은 당신을 가르치고 - 617 00:30:23,650 --> 00:30:25,150 바라건대, 당신은 윤리적 인 사람이야. 618 00:30:25,150 --> 00:30:29,200 그러나 당신이 볼 수있는 방법을 가르쳐 당신은 웹 사이트 내에서 얻을 수있는 방법. 619 00:30:29,200 --> 00:30:31,130 그리고 당신이 배우면 당신은 내부 얻을 수있는 방법 웹 사이트, 당신은 배울 수있는 방법 620 00:30:31,130 --> 00:30:34,960 점점으로부터 자신을 보호 내부 웹 사이트. 621 00:30:34,960 --> 00:30:39,100 저를 확대하자 어쩌면 너희들 때문에 이 오른쪽에보고되지 않습니다. 622 00:30:39,100 --> 00:30:46,350 >> SQL 주입에서 이렇게, 외판 종류의 난 SQL에서 얻을 수있는 방법 623 00:30:46,350 --> 00:30:48,530 쉘에 주입. 624 00:30:48,530 --> 00:30:53,890 그리고 당신은이 가상 머신을 다운로드 할 수 있습니다. 625 00:30:53,890 --> 00:30:55,690 그리고 가상 머신은 이미 온다 당신이하고있는 웹 사이트와 626 00:30:55,690 --> 00:30:56,780 그것을 시도하는 것. 627 00:30:56,780 --> 00:30:58,030 이 PDF를 다운로드 할 수 있습니다. 628 00:30:58,030 --> 00:31:03,610 629 00:31:03,610 --> 00:31:08,370 그리고 선으로 당신에게 선을 보여줍니다 무엇 당신은 당신이 확인 무엇을 수행해야합니다. 630 00:31:08,370 --> 00:31:14,560 이것은 무엇을 공격자 실제로 웹 사이트 내에서 얻을 않습니다. 631 00:31:14,560 --> 00:31:15,750 >> 그리고이 물건의 일부는 복잡하다. 632 00:31:15,750 --> 00:31:17,520 나는 더 이상 갈 수 있으면 좋겠다 너희들과 함께 가지. 633 00:31:17,520 --> 00:31:21,090 하지만 걱정하는 너희들 정말로이 - 634 00:31:21,090 --> 00:31:23,090 이것은 내가 함께 갔다 무엇인가 너희들, 웹 테스트 635 00:31:23,090 --> 00:31:26,830 침투 테스트. 636 00:31:26,830 --> 00:31:33,540 정말 모르겠어요 무슨 SQL은 무엇 - 637 00:31:33,540 --> 00:31:35,960 칼 잭슨의 세미나 뿐만 아니라 굉장합니다. 638 00:31:35,960 --> 00:31:37,360 너희들은 일종의 모른다 이것이 무엇의. 639 00:31:37,360 --> 00:31:39,450 그러나 만약 당신이 웹 사이트로 이동 이 튜토리얼과 이러한 다운로드 640 00:31:39,450 --> 00:31:43,290 PDF 파일, 당신은 종류의에서 좀 걸릴 수 있습니다 보안의 영역이 어떤 기능을하는지 641 00:31:43,290 --> 00:31:46,940 침투 테스트의 방법을 참조 할 수 내부 웹 사이트를 얻고 보호 642 00:31:46,940 --> 00:31:48,020 자신 그것에서. 643 00:31:48,020 --> 00:31:56,360 >> 그래서 슈퍼 빠른 개요를 만들 경우, 그것은 크로스 사이트 스크립팅을 방지 할 수 있습니다. 644 00:31:56,360 --> 00:32:00,160 당신은 반드시 htmlspecialchars 매를 사용하려면 사용자 입력의 어떤 시간. 645 00:32:00,160 --> 00:32:01,580 SQL 주입을 방지합니다. 646 00:32:01,580 --> 00:32:04,510 당신이 할 경우, 당신은 이미있어 하버드보다 더 나을 647 00:32:04,510 --> 00:32:06,530 그들은 위반에 도착했을 때. 648 00:32:06,530 --> 00:32:10,510 그리고 암호 확인 일반 텍스트로하지 않습니다. 649 00:32:10,510 --> 00:32:16,220 반드시 하나를 수행 단방향 해시뿐만 아니라 확인 그들하지만 토굴을 사용하는 것이, PHP 650 00:32:16,220 --> 00:32:18,670 내가 너희들을 보여 주었다 기능. 651 00:32:18,670 --> 00:32:20,060 그런 식으로, 당신이 잘되어야합니다. 652 00:32:20,060 --> 00:32:25,830 >> 당신의 친구가 할 경우에도, 당신은 실행 자신의 웹 사이트에 저를 주입 SQL은. 653 00:32:25,830 --> 00:32:28,140 실행 크로스 사이트 스크립팅 자신의 웹 사이트에. 654 00:32:28,140 --> 00:32:33,720 그리고 당신은이 웹 사이트를 많이 볼 수 있습니다 취약점의 톤이있다. 655 00:32:33,720 --> 00:32:40,400 그것은 많은 사람들이 원하는 방법을 믿을 수 자신의 데이터베이스를 소독하거나 확인 656 00:32:40,400 --> 00:32:46,340 반드시 어떤 사람의 입력부 스크립트 코드가 아닙니다. 657 00:32:46,340 --> 00:32:47,200 OK. 658 00:32:47,200 --> 00:32:49,182 나는 종류의 정말 일찍 끝났다. 659 00:32:49,182 --> 00:32:56,510 그러나 사람에 대한 문의 사항이있는 경우 아무것도, 당신은 나에게 질문을 촬영할 수 있습니다. 660 00:32:56,510 --> 00:32:56,630 그래. 661 00:32:56,630 --> 00:32:56,970 가,가. 662 00:32:56,970 --> 00:32:59,846 >> 청중 : 난 그냥 물어보고 싶은, 당신은 파일을 어떻게 해석 할 수 있습니다 663 00:32:59,846 --> 00:33:03,160 정확히 작품을 업로드 할 수 있습니다. 664 00:33:03,160 --> 00:33:03,480 >> 루치아노 아랑 : 네. 665 00:33:03,480 --> 00:33:06,350 그래서 내가 당신에게 파일을 보여주지 진짜 빨리 업로드 할 수 있습니다. 666 00:33:06,350 --> 00:33:11,300 그래서 파일 업로드 - 667 00:33:11,300 --> 00:33:14,500 문제는 파일 업로드를 재치 바로 지금입니다 - 668 00:33:14,500 --> 00:33:18,541 정말 너희들의 코드를 개방하고 장면의 코드를 참조하십시오. 669 00:33:18,541 --> 00:33:22,390 670 00:33:22,390 --> 00:33:24,305 그리고 그것은 업로드됩니다. 671 00:33:24,305 --> 00:33:28,030 672 00:33:28,030 --> 00:33:31,560 다음은 파일 업 로더에 대한 코드입니다. 673 00:33:31,560 --> 00:33:33,980 >> 우리는이로 이동하려는 여기에 디렉토리. 674 00:33:33,980 --> 00:33:37,380 675 00:33:37,380 --> 00:33:44,880 그리고 우리는에 노력하고 우리가 한 번 입력 파일, ISSET 파일 - 그렇게 할 때이 676 00:33:44,880 --> 00:33:50,900 다음, 파일, 그 이미지 파일을 우리는 여기에서 이동하려고합니다. 677 00:33:50,900 --> 00:33:51,910 우리는 여기에 파일을 잡아. 678 00:33:51,910 --> 00:33:58,350 이 방법은 POST, 유형, 이미지 파일입니다. 679 00:33:58,350 --> 00:33:59,630 그리고 우리는이 파일을 전송하고 있습니다. 680 00:33:59,630 --> 00:34:03,910 그리고 우리가 그것을 일단, 그래서 한 번 파일 이미지를 가지고, 우리는 그것을 보내려고 681 00:34:03,910 --> 00:34:05,060 이 디렉토리에. 682 00:34:05,060 --> 00:34:09,814 >> 문제는 웹 사이트가 아니라는 것이다 저를이 디렉토리로 이동시키는 683 00:34:09,814 --> 00:34:12,239 그것은 나를 다시 가고 싶지 않기 때문에. 684 00:34:12,239 --> 00:34:13,489 그것은 나 가고 싶어하지 않습니다 - 685 00:34:13,489 --> 00:34:15,620 686 00:34:15,620 --> 00:34:17,070 내가 가야 - 그래서 여기에 업로드 할 것. 687 00:34:17,070 --> 00:34:17,639 다음은 이미지입니다. 688 00:34:17,639 --> 00:34:21,780 나는 모든 길을 다시 가야 해 다음 시작하고 거기에 넣어 689 00:34:21,780 --> 00:34:23,820 가서 디렉토리에 넣어. 690 00:34:23,820 --> 00:34:30,000 내가 터미널 창을 실행중인 그렇다면, 나는 파일을 이동하고 싶어 - 691 00:34:30,000 --> 00:34:30,409 [청취] 692 00:34:30,409 --> 00:34:32,159 그것을 볼 수 있습니다. 693 00:34:32,159 --> 00:34:37,940 내가 파일을 이동하려는 경우, 나는이 다음 파일 이름을 넣어하는 방법 694 00:34:37,940 --> 00:34:40,860 전체 경로 나에 보낼. 695 00:34:40,860 --> 00:34:45,110 >> 그리고 서버가 아니다 나를 다시 보내 주나. 696 00:34:45,110 --> 00:34:46,929 그리고 그것은 두지 않을거야 나에게 해당 파일에 도착. 697 00:34:46,929 --> 00:34:47,670 그러나 일반적으로 - 698 00:34:47,670 --> 00:34:49,360 그래서에 대한 코드가있다 파일을 업로드. 699 00:34:49,360 --> 00:34:52,260 그래서 일반적으로 어떤 일이 발생할입니다 사람은 확인되어 있지 않은 경우 내 파일 700 00:34:52,260 --> 00:34:57,920 . JPEG로 끝나는, 그래서 검사 할 것입니다. 701 00:34:57,920 --> 00:35:00,054 날이 너무 진짜 빨리 예를 열어 보자. 702 00:35:00,054 --> 00:35:07,766 703 00:35:07,766 --> 00:35:08,260 >> OK. 704 00:35:08,260 --> 00:35:09,230 이 사람은 바로 - 705 00:35:09,230 --> 00:35:11,980 그래서 예를 들어 두 검사입니다 는 preg_match 경우 - 706 00:35:11,980 --> 00:35:14,180 여기가 여기에 있습니다 - 707 00:35:14,180 --> 00:35:19,660 반드시 그 끝납니다 만들려면 좋은 PHP,. 708 00:35:19,660 --> 00:35:20,580 이것은 좋은 것입니다. 709 00:35:20,580 --> 00:35:22,820 하지만 진짜 큰이있다 이 문제가 있습니다. 710 00:35:22,820 --> 00:35:24,600 이것은 좋은 것입니다. 711 00:35:24,600 --> 00:35:44,190 하지만라는 파일을 넣을 수 있다면 myfavoritepicture.php.jpeg, 내가 할 수 712 00:35:44,190 --> 00:35:50,060 여전히 잠재적으로 JPEG 제거 그리고 PHP의 위험 it.k 실행합니다. 713 00:35:50,060 --> 00:35:53,850 당신은 사람이 할 수 싶지 않아 귀하의 웹 사이트에 코드를 실행합니다. 714 00:35:53,850 --> 00:35:55,750 >> 하지만. JPEG는 통과 할 수 있습니다. 715 00:35:55,750 --> 00:36:00,720 아이디어는 당신이 정말로 원하는 것입니다 파일, A. 그러나, 확인을하지 무엇 716 00:36:00,720 --> 00:36:07,500 당신이 정말로 원하는 것은 있는지 확인한다 당신은 전 세계에 걸쳐 읽었다. 717 00:36:07,500 --> 00:36:08,720 그리고 아무것도 없다. 거기에 PHP는. 718 00:36:08,720 --> 00:36:10,500 에. PHP가 없습니다 전체 파일 이름입니다. 719 00:36:10,500 --> 00:36:12,780 >> 청중 :하지만 당신은 할 수 했습니다. JPEG를 끝. 720 00:36:12,780 --> 00:36:15,830 서버는 여전히 코드를 실행합니다. 721 00:36:15,830 --> 00:36:16,870 >> 루치아노 아랑 : 아니, 그것은하지 않습니다 처음에 실행합니다. 722 00:36:16,870 --> 00:36:22,310 당신은 돌아가서 시도해야 당신이 할 수 있는지 - 723 00:36:22,310 --> 00:36:24,210 >> 청중 : 그래서 우리는에있다 - 724 00:36:24,210 --> 00:36:26,020 OK, 관련된 또 다른 세트 - 725 00:36:26,020 --> 00:36:26,936 >> 루치아노 아랑 : 네. 726 00:36:26,936 --> 00:36:29,230 >> 청중 : OK. 727 00:36:29,230 --> 00:36:31,486 >> 루치아노 아랑 : 네. 728 00:36:31,486 --> 00:36:31,900 OK. 729 00:36:31,900 --> 00:36:32,865 다른 질문? 730 00:36:32,865 --> 00:36:33,180 OK. 731 00:36:33,180 --> 00:36:37,350 나는이를두고 정렬 할거야 의 너희들이 할 수 있는지 확인하기 위해 노력 - 732 00:36:37,350 --> 00:36:40,490 다른 사람은 조금 더있다 그들은 많이 필요로 복잡하기 때문에 733 00:36:40,490 --> 00:36:44,050 SQL보다 더 많은 지식을 단지 웹 SQL의 시작 지식과 734 00:36:44,050 --> 00:36:47,010 무엇 자바 스크립트입니다. 735 00:36:47,010 --> 00:36:49,730 하지만, 이것을 유지하려고하는거야 희망 너희들은 배울 것이다 736 00:36:49,730 --> 00:36:53,230 이 약 및 엿봄을하려고 당신이 할 수있는 얼마나 많은 예 737 00:36:53,230 --> 00:36:54,420 당신은을 통해 얻을 수 있습니다. 738 00:36:54,420 --> 00:36:56,020 >> 사람은 다른이 그것에 대해 질문? 739 00:36:56,020 --> 00:36:59,387 740 00:36:59,387 --> 00:37:00,350 어서. 741 00:37:00,350 --> 00:37:01,170 그래, 촬영, 촬영. 742 00:37:01,170 --> 00:37:01,580 그래, 가서. 743 00:37:01,580 --> 00:37:01,850 어서. 744 00:37:01,850 --> 00:37:02,310 >> 청중 : OK. 745 00:37:02,310 --> 00:37:08,870 그래서 난에 대해 알게 된 경로에 해당하는 마법 지수 충분히 안전하지 않습니다. 746 00:37:08,870 --> 00:37:09,280 >> 루치아노 아랑 : 무엇 - 747 00:37:09,280 --> 00:37:10,110 마법의 주가? 748 00:37:10,110 --> 00:37:10,595 >> 청중 : 네. 749 00:37:10,595 --> 00:37:15,445 그래서 추가 - 그래서 때마다 입력 뭔가 항상 따옴표를 추가합니다. 750 00:37:15,445 --> 00:37:15,930 >> 루치아노 아랑 : 네. 751 00:37:15,930 --> 00:37:16,000 그래. 752 00:37:16,000 --> 00:37:16,496 OK. 753 00:37:16,496 --> 00:37:19,113 >> 청중 : 그리고 비록, 일이 하지만 나는 그것을 검색 할 수 있습니다. 754 00:37:19,113 --> 00:37:21,648 그리고 그것은 좋은 아니라고 말했다. 755 00:37:21,648 --> 00:37:23,050 하지만 내가 왜. 756 00:37:23,050 --> 00:37:23,360 >> 루치아노 아랑 : 네. 757 00:37:23,360 --> 00:37:26,240 >> 청중 : 마법의 따옴표를 사용하지 마십시오 그것은 안전하지 않습니다 때문에. 758 00:37:26,240 --> 00:37:26,360 >> 루치아노 아랑 : OK. 759 00:37:26,360 --> 00:37:31,735 당신은 SQL을 삽입 할 때 그래서 마법의 주가는 그것은 이미 당신을위한 견적을 추가합니다. 760 00:37:31,735 --> 00:37:33,520 >> 청중 : 항상 따옴표를 추가합니다 당신이 안으로 넣어 어떤 약 761 00:37:33,520 --> 00:37:34,210 >> 루치아노 아랑 : 네. 762 00:37:34,210 --> 00:37:37,190 따라서 그 문제는 즉 - 763 00:37:37,190 --> 00:37:38,445 나는 좀 할게요 - 764 00:37:38,445 --> 00:37:41,390 >> 청중 : 어떻게 획득 않습니다 SQL 문? 765 00:37:41,390 --> 00:37:44,690 또는 나는 그것을 할 수있을 것 같아요 같은 인용을 선택합니다. 766 00:37:44,690 --> 00:37:49,030 >> 루치아노 아랑 : 그래, 당신이 필요합니다 SQL에 대한 좋은 따옴표. 767 00:37:49,030 --> 00:37:52,900 >> 청중 : 아니,하지만 서버 당신을 위해 그것을 않습니다. 768 00:37:52,900 --> 00:37:54,460 >> 루치아노 아랑 :이 작은 따옴표 여기,이 작은 따옴표? 769 00:37:54,460 --> 00:37:55,670 >> 청중 : 네. 770 00:37:55,670 --> 00:37:56,450 >> 루치아노 아랑 : 네. 771 00:37:56,450 --> 00:37:59,860 문제는 당신이 할 수있는 그 마지막을 주석 - 772 00:37:59,860 --> 00:38:05,770 좋아, 그럼 내가 할 수있는 것은 내가 댓글을 달 수 있습니다 중 - 그럼 살펴 보자 - 나를 보자 773 00:38:05,770 --> 00:38:07,920 텍스트 편집 파일을 엽니 다. 774 00:38:07,920 --> 00:38:09,610 내가 그냥이 편집 할 수 여기에 직접. 775 00:38:09,610 --> 00:38:19,510 776 00:38:19,510 --> 00:38:20,400 OK. 777 00:38:20,400 --> 00:38:23,710 너희들이 명확하게 볼 수 있을까요? 778 00:38:23,710 --> 00:38:29,730 내가 할 수있는 것은 내가 댓글을 달 수 있습니다 마지막으로 한 중. 779 00:38:29,730 --> 00:38:32,190 이것은 마지막 하나를 주석 것입니다. 780 00:38:32,190 --> 00:38:36,760 그리고 나서 넣고, 여기에 놓을 게요 여기에 악성 물건. 781 00:38:36,760 --> 00:38:39,840 782 00:38:39,840 --> 00:38:42,630 >> 따라서 사용자는 실제의 오른쪽 입력? 783 00:38:42,630 --> 00:38:45,230 사용자가 입력 아니에요 일, 오른쪽? 784 00:38:45,230 --> 00:38:47,430 이것은 내가 같은 입력에 갈 것입니다 내부 얻기 위해 노력하는 사람. 785 00:38:47,430 --> 00:38:49,430 내가 넣을거야 - 786 00:38:49,430 --> 00:38:59,290 787 00:38:59,290 --> 00:39:00,180 즉, 하나의 따옴표입니다. 788 00:39:00,180 --> 00:39:01,760 그것은 실수로 그냥 물결 모양입니다. 789 00:39:01,760 --> 00:39:15,080 790 00:39:15,080 --> 00:39:19,400 그리고 어떤 코드 할 것입니다 - 791 00:39:19,400 --> 00:39:20,190 죄송합니다,이를 데리고 갈거야. 792 00:39:20,190 --> 00:39:22,170 어떤 코드가 수행하는 것입니다 것은 그 첫 번째를 추가하는거야 793 00:39:22,170 --> 00:39:24,030 인용은 여기에 표시합니다. 794 00:39:24,030 --> 00:39:26,040 그리고 마지막을 추가 할 것 따옴표뿐만 아니라. 795 00:39:26,040 --> 00:39:29,350 796 00:39:29,350 --> 00:39:33,270 >> 그리고 그것은 또한 추가 할 것 마지막으로, 마지막 따옴표. 797 00:39:33,270 --> 00:39:37,380 하지만 이러한 인용 주석 해요 밖으로 표시, 그래서 그들은 실행되지 않습니다. 798 00:39:37,380 --> 00:39:41,440 그리고이 말씀을 마무리 해요 여기에 표시합니다. 799 00:39:41,440 --> 00:39:42,290 알 겠어? 800 00:39:42,290 --> 00:39:43,750 당신이 손실됩니다? 801 00:39:43,750 --> 00:39:45,880 나는 마지막 인용을 언급 할 수 있습니다 마크하고 돌봐 802 00:39:45,880 --> 00:39:46,680 첫 번째 물음표. 803 00:39:46,680 --> 00:39:47,350 >> 청중 : 그냥 마무리 첫 번째. 804 00:39:47,350 --> 00:39:47,480 >> 루치아노 아랑 : 네. 805 00:39:47,480 --> 00:39:48,400 그냥 처음으로 완성하고 있습니다. 806 00:39:48,400 --> 00:39:48,790 그래, 맞아. 807 00:39:48,790 --> 00:39:50,800 그게 내가 할 수있는 일입니다. 808 00:39:50,800 --> 00:39:51,890 그래. 809 00:39:51,890 --> 00:39:52,980 같은 다른 질문? 810 00:39:52,980 --> 00:39:54,230 즉, 좋은 질문입니다. 811 00:39:54,230 --> 00:39:56,960 812 00:39:56,960 --> 00:39:59,790 예, 아니오, 어쩌면. 813 00:39:59,790 --> 00:40:06,150 바라 건데, 너희들 종류의 것 당신은 SQL과 공부를 더 의미 814 00:40:06,150 --> 00:40:06,650 그런 것. 815 00:40:06,650 --> 00:40:07,980 하지만 확인 - 816 00:40:07,980 --> 00:40:10,340 시계에서 이러한 도구를 유지합니다. 817 00:40:10,340 --> 00:40:12,760 죄송합니다, 여기에 이​​러한 도구. 818 00:40:12,760 --> 00:40:14,200 이러한 도구는 중대하다. 819 00:40:14,200 --> 00:40:17,190 사람이 어떤 질문이 있으면, 당신은 저를 이메일을 보낼 수있다. 820 00:40:17,190 --> 00:40:19,020 이것은 나의 정상적인 메일입니다. 821 00:40:19,020 --> 00:40:25,015 그리고 이것은, 나의 일 이메일입니다 내가 SEAS에서 작업 할 때입니다. 822 00:40:25,015 --> 00:40:26,040 >> OK, 감사합니다. 823 00:40:26,040 --> 00:40:26,740 감사합니다, 여러분. 824 00:40:26,740 --> 00:40:27,860 당신은 갈 수 있어요. 825 00:40:27,860 --> 00:40:28,830 당신은 여기에 머물 필요가 없습니다. 826 00:40:28,830 --> 00:40:29,570 박수하지 마십시오. 827 00:40:29,570 --> 00:40:30,170 이상 하네. 828 00:40:30,170 --> 00:40:31,420 OK, 감사합니다, 여러분. 829 00:40:31,420 --> 00:40:32,320