Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.75
Ильяяя
0 / 0 / 0
Регистрация: 29.11.2011
Сообщений: 11
#1

Допуск к ПК с помощью своей программы - C++

29.11.2011, 19:23. Просмотров 1993. Ответов 30
Метки нет (Все метки)

Здравствуйте. Я ученик 11ого класса/

Хочу поступить в бауманку по олимпиаде "Шаг в будущее".
В школе прохожу только Visual Basic.

Зафиксировал тему проекта как "Защита ПО от несанкционированного доступа".
Есть мысли: при включении компьютера заместо стандартного в Windows введите логин пароль, поменять это на 5 рандомных вопросов, которые постоянно разные, а позиции ответов на эти вопросы сделать определёнными и только при вводе конкретных позиций ответов на вопросы, независимо от сути вопроса и вариантов ответа, тебя пустит внутрь компьютера
По сути там надо ввести логин и пароль а тут клацнуть на 5 позиций и нажать войти) Альтернативный вариант. НО, мысль есть а как её реализовать не знаю. Если кто может помочь, ответить на несколько вопросов, отпишитесь пожалуйста
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.11.2011, 19:23     Допуск к ПК с помощью своей программы
Посмотрите здесь:
C++ Как запустить exe вайл из своей программы
C++ Не получается сделать статическую линковку своей программы в MinGW
C++ Как из своей программы подставить пароль в форму в браузере?
как при старте обеспечить запуск своей программы после другой C++
"Взлом" своей программы через артманию C++
C++ Номинал конденсатора и допуск - отображение в цветовом коде
C++ Создание программы со своей библиотекой ( удаление элементов с N по M в строке и удаление лишних пробелов(если 2 и более оставить один))
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kravam
быдлокодер
1693 / 880 / 44
Регистрация: 04.06.2008
Сообщений: 5,438
21.01.2012, 02:48     Допуск к ПК с помощью своей программы #16
Так я так понял, нам щас надо подсказать ТС не форму ввода, а содержание. Это можно сделать так: пишется приложение- и вставляется в автозагрузку. По запуску проги это окошко предлагает ввести пароль и не исчезает пока не будет введён правильный пароль. Всё!

Думаю самый лёгкий вариант. Хотя для ТС все варианты тяжёлые.

А уж чё там за пароль будет- цифры, буквы, вопросы, капча- это дело десятое.

++++++++++++++++++++++=

Ну есть один недостаток- злоумышленник если войдёт в систему или кто-то войдёт, чтобы он там работал, то он может убрать программу из автозагрузки. Ну тут можно нафантазировать (работа с реестром), но до этого далеко ещё ТС.
Liebe
...
891 / 74 / 5
Регистрация: 21.02.2010
Сообщений: 2,196
Записей в блоге: 1
21.01.2012, 03:04     Допуск к ПК с помощью своей программы #17
Цитата Сообщение от kravam Посмотреть сообщение
Это можно сделать так: пишется приложение- и вставляется в автозагрузку. По запуску проги это окошко предлагает ввести пароль и не исчезает пока не будет введён правильный пароль. Всё!
будет очень весело тестировать такое приложение, если блок обработки пароля будет неправильно реализован (например, когда пароль все время будет считаться неправильным)
zelim
77 / 77 / 4
Регистрация: 26.12.2011
Сообщений: 217
21.01.2012, 03:14     Допуск к ПК с помощью своей программы #18
Цитата Сообщение от liebe Посмотреть сообщение
ТС учиться еще в школе...вы предлагаете школьнику написать реальное приложение, представляющее ценность на рынке?
Я в 11-ом классе уже мог что-то более менее стоящее написать. С++ самостоятельно изучал. Так что с этим не соглашусь - все от стремления и желания зависит. А здесь ТС нагло просит "за него поступить".
А так, тоже внесу свою лепту:
Можно добавиться в автозагрузку, написать хук для перехвата всех горячих комбинаций (если еще точнее, то роем в сторону winlock), а в качестве авторизации использовать не супер-пупер способ с 3-мя галочками, а то, что предлагали немного выше - авторизацию по цифровому носителю.
Можно было бы почитать об алгоритмах шифрования. То есть доступ к компу будет предоставлен при наличии ключа. Сам ключ сохранен на каком-нибудь USB-накопителе (не забываем свое ПО научить проверять наличие вставленных устройств и поиск ключа). Ну, по крайней мере я бы так реализовывал, если бы поставил перед собой такую задачу. ))

Добавлено через 3 минуты
Цитата Сообщение от liebe Посмотреть сообщение
будет очень весело тестировать такое приложение, если блок обработки пароля будет неправильно реализован (например, когда пароль все время будет считаться неправильным)
Я бы на время теста регистрировал какую-нибудь горячую комбинацию для завершения программы. От ошибок ведь никто не застрахован ))
Liebe
...
891 / 74 / 5
Регистрация: 21.02.2010
Сообщений: 2,196
Записей в блоге: 1
21.01.2012, 03:19     Допуск к ПК с помощью своей программы #19

Не по теме:

Цитата Сообщение от zelim Посмотреть сообщение
Я в 11-ом классе уже мог что-то более менее стоящее написать. С++ самостоятельно изучал. Так что с этим не соглашусь - все от стремления и желания зависит.
если бы дочитали до конца, то поняли бы, о чем речь шла: не о том, что школьник такого сделать не сможет, а о том, что возможно овчинка выделки не стоит.



Добавлено через 1 минуту
Цитата Сообщение от zelim Посмотреть сообщение
Я бы на время теста регистрировал какую-нибудь горячую комбинацию для завершения программы. От ошибок ведь никто не застрахован ))
само собой - главное, чтобы это тоже было правильно реализовано ))))))))))
kravam
быдлокодер
1693 / 880 / 44
Регистрация: 04.06.2008
Сообщений: 5,438
21.01.2012, 03:22     Допуск к ПК с помощью своей программы #20
Цитата Сообщение от liebe Посмотреть сообщение
будет очень весело тестировать такое приложение, если блок обработки пароля будет неправильно реализован (например, когда пароль все время будет считаться неправильным)
Долго думал, но в результате был вынужден согласиться с такой глубокой мыслью, что программы следует писать правильно.
Liebe
21.01.2012, 03:29
  #21

Не по теме:

kravam, это была всего лишь шутка

easybudda
Эксперт С++
9461 / 5474 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
21.01.2012, 04:09     Допуск к ПК с помощью своей программы #22
liebe, никто не предлагает школьнику писать коммерческое приложение. Речь о том, что вместо изобретения марсианских способов авторизации в винде стоило бы сначала изучить имеющуюся практику защиты информации. Ну и само собой язык учить.
kravam
быдлокодер
1693 / 880 / 44
Регистрация: 04.06.2008
Сообщений: 5,438
21.01.2012, 04:12     Допуск к ПК с помощью своей программы #23
Не ну я сперва и не понял о чём речь. Конечно, надо подстраховаться. Просто я и предположить не мог что могут существовать сложности подобного рода (по крайней мере для меня). То есть:

Лепим полнофункциональное приложение со стандартным закрытием, тестируем вдоль и поперёк, здесь конечно известные сложности нас подстерегают

После чего просто-напросто убираем из функции обработки сообщение обработку WM_DESTROY или как она там называется (предварительно, конечно, потренировавшись на кошках)
Liebe
...
891 / 74 / 5
Регистрация: 21.02.2010
Сообщений: 2,196
Записей в блоге: 1
21.01.2012, 04:28     Допуск к ПК с помощью своей программы #24
Цитата Сообщение от easybudda Посмотреть сообщение
liebe, никто не предлагает школьнику писать коммерческое приложение.
к чему тогда отсылка к юзабилити?
Цитата Сообщение от easybudda Посмотреть сообщение
Речь о том, что вместо изобретения марсианских способов авторизации в винде стоило бы сначала изучить имеющуюся практику защиты информации.
1. Если только совсем немного. Изучением имеющейся практики защиты информации он будет заниматься в университете, если поступит )))
2. Допустим изучил. И что дальше? он изобретет что-то новое (схему идентификации и аутентификации / алгоритм шифрования) и при этом не марсианское? - ему тогда сразу за диплом надо садиться, а не поступать. Повторит уже существующее, а смысл?
LK
21.01.2012, 06:09
  #25

Не по теме:

а вдруг ему в голову сейчас стукнет такое, над чем он будет корпеть всю жизнь...

bigredcat
21.01.2012, 07:21
  #26

Не по теме:

Цитата Сообщение от LK Посмотреть сообщение
Скажите, абитуриент, ВОВ началась 21 июня 1941 года?
22 июня 1941

Gepar
21.01.2012, 13:42
  #27

Не по теме:

Цитата Сообщение от kravam Посмотреть сообщение
Просто я и предположить не мог что могут существовать сложности подобного рода
Цитата Сообщение от kravam Посмотреть сообщение
После чего просто-напросто убираем из функции обработки сообщение обработку WM_DESTROY или как она там называется
А Вы сами попробуйте убрать обработку этого сообщения и посмотрите что будет.
Кстати школьник, который хочет выучить помимо с++ ещё и WINAPI до весны пускай запасётся терпением, особенно если учесть что ему ещё обычные экзамены в школе сдавать.

kravam
быдлокодер
1693 / 880 / 44
Регистрация: 04.06.2008
Сообщений: 5,438
21.01.2012, 14:03     Допуск к ПК с помощью своей программы #28
Ну я имел ввиду баннеры же висят как-то, вот надо такое же окно неубираемое кропать

Добавлено через 13 минут
Ну вот навскидку
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#include <windows.h>
 
HINSTANCE hInstance;
DWORD CommandLine;
char ClassName [] = "SimpleWinClass";
char AppName [] = "Our First Window";
 
 
DWORD WinMai (HINSTANCE,HINSTANCE,char*,DWORD);
LRESULT CALLBACK WndProc (HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
 
 
int main () {
 hInstance= GetModuleHandle (NULL);
 char* CommandLine= GetCommandLine ();
 DWORD EAX= WinMai (hInstance, 0, CommandLine, SW_SHOWDEFAULT);
 //DWORD EAX;
 ExitProcess (EAX);
 return 0;
}
 
DWORD WinMai(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR CmdLine, DWORD CmdShow) {
 WNDCLASSEX wc; 
 MSG msg;
 HWND hwnd; 
    
 wc.cbSize= sizeof (WNDCLASSEX);
 wc.style= (CS_HREDRAW | CS_VREDRAW);
 wc.lpfnWndProc= (WNDPROC)WndProc;
 wc.cbClsExtra= 0;
 wc.cbWndExtra= 0;
 wc.hInstance= hInstance;
 wc.hIcon= LoadIcon (NULL, IDI_APPLICATION);
 wc.hCursor= LoadCursor (NULL, IDC_ARROW);
 wc.hbrBackground= (HBRUSH)(COLOR_WINDOW+1);
 wc.lpszMenuName= (LPCSTR)NULL;
 wc.lpszClassName= ClassName;
 wc.hIconSm= wc.hIcon;
 RegisterClassEx (&wc);
 hwnd= CreateWindowEx (0, ClassName, AppName,\
           WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,\
           CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,\
           hInst,NULL);
 ShowWindow (hwnd, SW_SHOWNORMAL);
 UpdateWindow (hwnd);
 
 
 int temp;
 while (1) {
  temp= GetMessage (& msg, NULL, 0, 0);
  if (!temp)
   break;
  TranslateMessage (& msg);
  DispatchMessage (& msg);
 }
 
  return msg.wParam;
 
}
 
 
LRESULT WndProc (HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) {
 if (uMsg==WM_DESTROY) {
  PostQuitMessage (0);
  WinMai (hInstance, 0, (char*)CommandLine, SW_SHOWDEFAULT);
 }
 else
  return  DefWindowProc (hWnd, uMsg, wParam, lParam);        
 return 0; 
}
Убирается только через менеджер процессов. Оно конечно сворачивается, перерисовывается и прочая, но над этим все надо работать. Думаю, осовная мысль понятна.
easybudda
Эксперт С++
9461 / 5474 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
21.01.2012, 14:13     Допуск к ПК с помощью своей программы #29
Цитата Сообщение от liebe Посмотреть сообщение
1. Если только совсем немного. Изучением имеющейся практики защиты информации он будет заниматься в университете, если поступит )))
2. Допустим изучил. И что дальше? он изобретет что-то новое (схему идентификации и аутентификации / алгоритм шифрования) и при этом не марсианское? - ему тогда сразу за диплом надо садиться, а не поступать. Повторит уже существующее, а смысл?
Да не нужно до фанатизма доходить! Во всех тонкостях ТС защиту информации не изучит даже закончив МГТУ с красным дипломом и чёрным поясом. Люди действительно жизнь этому посвящают. Но общие-то представления должны быть. При подобных идеях защиты входа пользователя, как думаете - есть они?
Олимпиадные (или как там они правильно называются) программы поступления в заведениях вроде Бауманского проводят по-моему как-раз с целью найти людей увлечённых, уже к окончанию школы представляющие себе "картину в целом" и даже способных предложить свою реализацию какой-то отдельной части. Пусть далёкую от совершенства, но по-своему интересную. А вот развивать свои идеи действительно научат... Опять же Вы как-то главное всё время упускаете - для реализации идей своих нужно владеть соответствующими инструментами (языком программирования в данном случае). Школьники, пишущие на С++ и здесь на форуме встречаются, при чём интересно порой пишут, надо признаться... У ТС же только один путь - прям щас бросать всё и засаживаться за изучение языка + основ защиты информации, при этом не забывая, что и от школьных экзаменов никто не освободит. Тогда только будет шанс представить что-то интересное для поступления (заметьте - не превзошедшее всё, что только можно, не совершенное на столько, чтобы захватить мир с первой попытки, просто оригинальный вариант решения одной из миллиона проблем, связанных с защитой информации)...
А пока всё это не серьёзно как-то. Очередная тема для флуда...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.01.2012, 19:31     Допуск к ПК с помощью своей программы
Еще ссылки по теме:
Реализация программы с помощью классов C++
C++ С помощью какой программы можно зашифровать исходник С++
С помощью итераторов удалить комментарии из текста программы C++
Как с помощью программы на C++ изобразить различные графики и фигуры? C++
Запуск программы с расширением .сpp с помощью Visual studio 2010 C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
zelim
77 / 77 / 4
Регистрация: 26.12.2011
Сообщений: 217
21.01.2012, 19:31     Допуск к ПК с помощью своей программы #30
Хм.. В принципе, я мог бы написать такое чудо... Точнее пишу уже что-то похожее.. так, в свободное время и для себя.. Но подкорректировать под нужды ТС можно.. Сроки не поджимают же, как я понимаю?.. У самого сессия сейчас )))
Yandex
Объявления
21.01.2012, 19:31     Допуск к ПК с помощью своей программы
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru