- Smart ptr (Дмитрий Корнев)
- Thread (Сергей Азовсков)
- Unordered (Софья Новожилова)
- GIL (Алексей Титов)
- String Algo (Илья Петров)
- MPL (Виктор Самунь)
- Test (Антон Романович)
- MPI (Дмитрий Корнев)
- Что могут и не могут шаблоны С++ (Богдан Мельник)
- Interprocess (Софья Новожилова)
- Signals (Сергей Азовсков)
- Fun, Bind (Виктор Самунь)
Team
RuCTF is the annual open CTF challenge in information security among teams from russian universities. RuCTF started out in 2008 and was the first challange of such kind in Russia. Now it consists of two phases: quals and finals. Quals are remote, finals are local (USU, Ekaterinburg). My roles: task/service developer.
RuCTFE is RuCTF Extended to the edge of the world. Teams from universities of all countries are welcome. My role: devteam leader.
Xain is a ezine on issues concerning computer security. My role: article writer.
HackerDom is a team that organizes UralCTF, RuCTF, RuCTFE, publishes Xain, runs a weekly seminar in USU and participates in other CTF challenges. In a team of five HackerDom members including me we won the C.I.P.H.E.R. 4.
Personal
UnPyc is a dissassembler and (sometimes) decompiler of python *.pyc files.
FIPL is a small framework for image processing on CUDA devices.
Структура Интернета
Whois
SNTP
my $paddr = inet_aton($addr);
croak "Cannot resolve '$addr'" if (!defined $paddr);
socket SOCK, PF_INET, SOCK_STREAM, getprotobyname('tcp')
or croak 'Cannot create socket';
connect SOCK, sockaddr_in($port, $paddr)
or croak "Cannot connect to server '$server'";
send SOCK, "$query\r\n", 0;
vec($rin, fileno(SOCK), 1) = 1;
do {
($nfound) = select($rout = $rin, '', '', $timeout);
croak 'Select() error' if ($nfound == -1);
croak 'Timeout' if ($nfound == 0);
croak 'Recv() error' if (!defined(recv SOCK, $buf, 512, 0));
$answer .= $buf;
} while $buf ne '';
shutdown SOCK, 2;
sub sendRaw($$$) {
use constant IPPROTO_RAW => 255;
my ($destination, $dport, $packet) = @_;
eval {
socket(SOCKET, PF_INET, SOCK_RAW, IPPROTO_RAW);
my $paddr = sockaddr_in($dport, inet_aton($destination));
send(SOCKET, $packet, 0, $paddr);
};
if ($@) {
print "Error occured: $@";
}
}
sub assembleRawUdp($$$$$) {
my ($destination, $dport, $source, $sport, $data) = @_;